Free BF Scalper EA
The logic behind the free BF Scalper EA is simple but effective – the EA uses breakouts of the Bollinger Bands for entry and exit signals.
Reasonable stop loss levels vary between 20 and 60 pips.
You can use small fixed TP between 4-8 pips or leave the exit logic to take care of the position.
The exit logic is also based on the BB indicator and it will close the trade even on a loss when the price is near or breaks the opposite BB line. This is commanded by the BandBreakExit parameter which works best from minus one to plus one-two.
The free BF Scalper EA has high spread protection – this is crucial, because if you use limit orders as example you can't control this and you will take some trades with 10 or even 20 pips spread – one such trade will erase the average profit from 10 good trade as the best average expectancy of this type of trading is 2-3 pips in the best case. This is why we are not using limit orders.
Recommended timeframe: M15
Supported currency pairs: GBPUSD, EURUSD, EURCHF, EURAUD, GBPCAD, USDCAD, USDCHF and USDJPY
The default settings are for GBPUSD. I have prepared set files for other supported pairs too. Since I cannot include them here, please contact me, and I will send them to you.
Here are some optimization advises:
- Do not use genetic algorithm
- Optimize 2 parameters at once at most – We optimize only one at a time and look for the most logical value
- Optimize for at least 6 months and at least 200 trades – this is the absolute minimum to avoid curve fitting and get some reasonable parameters which will have at least some chance to be profitable in real conditions.
- Perform at most 5 optimization cycles for all parameters.
- Use reasonable large optimization step – as example if you optimize stop loss, reasonable step would be 5 pips not 1 pips – about 5% of the reasonable optimization range of the parameter.
- We are using M1 open price test for all of our EAs – it is good enough.
- We are not using tick tests as they are too unreliable.
And now the fun part: By using this EA, you acknowledge that you are familiar with all risks and that you are solely responsible for the outcomes of your decisions. We accept no liability whatsoever for any direct or consequential loss arising from the use of this product. It's to be noted carefully in this respect, that past results are not necessarily indicative of future performance.
IMPORTANT: Pay attention to the CTHour1-6 parameters! They are very important! In order to get proper results, you have to set them correctly according to your broker GMT Offset. Read carefully the parameters explanation below!
- TicksTrade – if “false”, the logic will be executed at the beginning of M1 bar, otherwise it will calculate and trade on a new price tick.
- StealthMode true/false – conceal stop loss and take profit levels in program logic making them invisible to brokers. If you use this mode, the stop loss and take profit orders are not located in the trading server.
- EmergencyStopDist – second level of protection, when StealthMode is used. At values greater than zero, it activates a second level of true (Emergency) StopLoss on a greater distance than the virtual hidden StopLoss is located. In such case, the value of the new emergency StopLoss will be the sum of the EmergencyStopDist value plus the value of the hidden StopLoss.
- MinEquity – minimal equity needed for trading.
- BandPeriod – Bollinger Bands period.
- BandBreakEntry – breakout in 4-digit pips of the BB line to initiate an opposite trade (the value could be negative).
- BandBreakExit – breakout in 4-digit pips of the opposite BB line to initiate closing of the existing trade (the value could be negative).
- UseTrendFilter – change this to “true” if you want to trade only in the direction of the trend defined by the two MAs below.
- MA_Fast_Period – fast moving average period.
- MA_Slow_Period – slow moving average period.
- MA_Trend_TF – timeframe of both MAs.
- TimeRestriction – by default, this is “true” so the EA will trade only in the hours listed below. If you do not want to use the time filtration, change this parameter to “false”.
More Important Parameters
- CTHour1 – 6 – six possible slots for trading hours. Values 0 – 23 activate the slot. Enter a large value like 55 to deactivate the slot. Best results from our experience are achieved at 21 and 22 GMT. You absolutely should adapt this hours to your brokers GMT shift. The default values are adapted for GMT +2 (winter time).
- WednesdaySwapFilter true/false – Wednesday swap filter cancels all trades in Wednesday evening in the direction of the negative swap, if the swap is worse than MaxNegSwapPips parameter.
- MaxNegSwapPips – minus 0.5 pips seems reasonable threshold.
- RolloverTimeFilter true/false – switch on/off the rollover time filter.
- MinutesBefore – minute time interval before midnight, in which all trading operations will be canceled.
- MinutesAfter – minute time interval after midnight, in which all trading operations will be canceled.
- x_MaxSpreadFilter – switch on/off the rollover additional spread filter.
- x_MaxSpread – multiply the initial MaxSpread, which will be allowed in general, before canceling all trading operations. As an example, if the MaxSpread is 6 and x_MaxSpread is 2, all trading operations will be canceled if the spread exceeds 6×2=12 pips.
- RecoveryMode – activate the drawdown recovery. It works when AutoMM > 0.
- FixedLots – fixed trading lots when AutoMM = 0.
- AutoMM – money management. For example, AutoMM=5 means that the robot will trade with 5% risk.