I did a preliminary test run for a Bollinger Band trading EA I made using fxDreema recently. This is a quick write up of what we found.
- The Strategy
The Bollinger Band trading strategy is quite common and easily googled. The variant I am testing for is the breakout variant –
- Buy Long when candle closes below the lower band
- Sell Short when candle closes above the upper band
- Stop Loss to set at a multiple of ATR-14
- Close trade when price crossover middle-line
With these rules, the things we can change in this strategy are:
- Definition of the bands:
- Length/ Number of periods
- Standard Deviation
- ATR-14 multiple used for stop-loss
We technically can also test for the shift or offset for the bands but we’ll leave that out for now
For each of these 3 parameters, I test for about 5 values, for a total of 125 possible permutations.
Parameter: (starting value, step, ending value)
Number of Periods: 10, 5, 30
Standard Deviation: 1, 0.5, 3
ATR multiple: 1, 0.5, 3
- Pairs and Timeframe
It is my belief that common strategies do work; but they work better on higher timeframes. So I will test this on the daily timeframe on 7 major pairs:
EURUSD
GBPUSD
USDJPY
USDCAD
USDCHF
AUDUSD
NZDUSD
I ran the optimization over the recent 2 years 2018 -2019. I am aware that testing for 2 years on a daily timeframe isn’t going to produce runs that have a lot of trades, so I keep that in mind for now.
- Spread and Slippage settings
Tick Data Suite comes with a Variable Spread option that tries to emulate the spread of a FX pair at the time you are testing – so I will use that option.
The more important thing is Slippage – and this is going to differ greatly; but I assume:
20% of time, slippage can be 1 pip in my favour
80% of time, slippage can be 3 pips against me
Which is just a fancy way of saying I am getting an additional 2 pips against me on every trade on average. I am using this for all pairs which may or may not be perfectly accurate.
- Preliminary Results
With the above definitions in mind – let’s look at the first results:

My first instinct is this strategy looks promising – apart from USDCHF and NZDUSD, almost every other pair has at least 30% winning passes – especially EURUSD/ USDCAD where the winning passes are > 80%. Once again, only 2 years on daily timeframe, so number of trades is quite low, but still a good sign.
The next thing to look for is: out of all the winning passes; how many of them can get a Profit/ Max drawdown ratio of at least 1? (this means profit > amount risked in the period)

This part gets interesting – for USDCAD, even though 104 out of 125 passes are winning, none of them pass the P/MDD > 1 ratio. In fact, only EURUSD and USDJPY showed some promising results of that – out of all the winning runs, there are still quite a number of runs where P/MDD > 1.
The Next Step
SO with this, the next step will be to do more testing on EURUSD and USDJPY for this strategy.
This includes:
- Testing over a wider range of period that covers more varied market conditions
- Walk-forward testing
Stay tuned for more updates!