Spread used by strategy tester is very critical to backtest a forex EA. MT4′s strategy tester uses the current live spread at the time a test is started. There are two serious problems with this approach:
- Test results can vary significantly depending on the live spread when the test is started. Consecutive tests of the same strategy may yield very different results.
- The results can be very optimistic if the strategy is spread-sensitive, and the live spread is below average at the time the test is started.
Some brokers which have normal spread of 1.5, will show a higher spread of 5, 10 or even more when the market is closed (during weekend). I looked up the issue in the forum and there was a thread in 2009 – “Spread Generator” which is very difficult to use. Till recently I found this free and accurate script – MT4i Spread Controller.
Click here to direct download: https://www.101forexcurrencytrading.com/downloads/MT4iSpreadControllerSetup.zip
Original source (requires registration first) : http://www.mt4i.com/appstore/app.aspx?id=5
Version 2 of MT4i’s Spread Controller offers simple, quick control over the spread used in each backtest. You turn on the Spread Controller by running a script (on any chart) when you start MT4. After that, whenever you run a backtest you will be prompted to change the spread which is about to be used.
I have downloaded and installed the script. Documentation is superb and the software is flawless. It allows me to do exactly what I wanted to do to backtest my EA. I was struggling with this issue for so long and wasted so much time. Backtesting results could not repeated with the same result without this software.