Backtesting results in different results on different brokers



I'm backtesting an EA, but I receive completely different results on two different brokers (GMT offset is equal to -7200 for both brokers).

One probable reason is that on one broker time stamp of historical data looks erroneous. Look at attachment: 2017.07.08 is Saturday, but historical data have data until 00:59, though the market closes at 00:00.

Have you faced similar issue?

Kind regards,


The backtesting results are almost always different from one broker to the other one. Because the data/quotes are different from one broker to the other broker.

I remember old story - 

  • one person - "my EA is profitable";
  • the other person - "good for you ... which broker?"

Because it may be profitable on one broker and not profitable on the other one.


I am suggesting to go to MT5, because MT5 is having more good situation concerning backtesting: we can backtesting with real ticks


Testing trading strategies on real ticks and the explanation is on this post.

Forum on trading, automated trading systems and testing trading strategies

PriceChannel Parabolic system

Sergey Golubev, 2017.02.15 06:02



Just an example -

MT4 and very old builds of MT5: I optimized the EAs from this thread just to find good settings for the pair, I was backtesting them, and I traded on demo for some time just to be sure that EAs are profitable.

With new builds of MT5: I will optimize the EAs from this thread to find the settings, and I will backtesting them with 'every tick based on real ticks' - and it will be same as trading by those EA on real account for many months or years!


Forum on trading, automated trading systems and testing trading strategies

MT4 & MT5 backtest

Sergey Golubev, 2017.02.17 20:53

If you are backtesting EA on MT5 using 'every tick based on real ticks' so it will be almost same with trading on MT5 platform with some particular broker (because it is based on actual historical data).

Example, read this thread: Why is it better MT5 than MT4?? Does it have fewer limitations ??? - this is the quote from the first post of the thread:

  • In MT5 you can backtesting robots with the closest possible conditions to the real market natively  (real tick data, real variable spreads, lag, slippage, etc). In MT4 you can't natively. You only can if you pay for a third-party software. If so, you also have to download history data from a few sources (there are many few, almost everyone uses the same source), transform it to MT4 format and open the platform through this third-party software in order to patch MT4 behavior. You take many hours to complete this process, and you have to repeat it every time you want to incorporate new data. 
    We have all seen hundreds of robots that obtained spectacular results in backtesting, but when operating in real account the results were very bad. This is mainly because they were made with conditions that had nothing to do with real market conditions.

For more information about it - read this summary.


As i know - some coders/traders are converting their MT4 EAs to MT5 just to backtest them and/or to find the settings with optimization to get the backtesting results that are closest to reality. 

MOSIZNBD: but historical data have data until 00:59, though the market closes at 00:00.

I had a broker that usually had one tick after. It simply means their server was one or two seconds off from actual time. Therefor the last tick of the day appeared to be the next day on their server, and you get your history from them. Live with it.

For new bar, use not-equal not greater. A few years back a server had the correct time but was off three days. Those that had greater than stopped working for days.

Sergey Golubev:
Thank you.. now I have converted everything to MT5 and do tests with "Every tick based on real ticks"... seems to work out, though I cannot say if it is consistent, because I haven't compared it with another MT5 platform.