Using a Fixed Spread for Backtesting Forex EA with MT4 Strategy Tester

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:

Original source (requires registration first) :

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.

Leave a Comment