Significant Performance Discrepancy Between Backtesting and Live Trading - page 2

 
err3vi #:

Thank you, Evren Caglar, Michael Charles Schef, and Fernando Carreiro.

I believe implementation details are not particularly relevant in this case—the strategy is quite straightforward, relying on immediate (OPEN, CLOSE) order placements. What truly matters is understanding whether the MT5 platform applies any preprocessing to historical data.

How can I verify this? Who should I contact to obtain a definitive answer? My broker has informed me that their MT5 platform simply relies on data provided by MQL and that they do not intervene in any way.

Any guidance on this would be greatly appreciated!

As the moderator has said; not a reputable broker. The yellow part means that when you test in strategy tester you are not using live ticks from the broker, but from mql, which means your test is unrealistic or at least "not real".

 
Fernando Carreiro #:

A truly reputable and regulated broker provides their own data of high quality. They do not redirect it from MetaQuotes demo account data. If that is what your broker is doing, then they are not a reputable.

You were also not clear about which modelling methods you used in your back-testing. Was it real ticks or not?

Did you check how far back, your broker offers tick data? Are there in gaps in that data? Are there mismatches between tick data and the bar OHLC data?

Did you simulate delays in your testing to see your EAs robustness?

Did you test your EA's sensitivity to news events which results in high volatility, low liquidity, and widening spread?

All these and many more are the results of knowing the market conditions and your understanding of them. They are not a limitation of the Strategy Tester.

I use real ticks in backtesting and have even simulated slippage. Additionally, the backtesting spread matches the live spread, so the issue does not stem from these factors.

What I do notice, however, is a significant difference in noise. Even without considering my algorithm—just by looking at the chart—the price line in live trading vibrates continuously, while in backtesting, it moves smoothly. I suspect this discrepancy is the key to the performance gap.

Could it be that historical tick data undergo some form of filtering or smoothing? Has anyone else observed this?

 
err3vi #:

I use real ticks in backtesting and have even simulated slippage. Additionally, the backtesting spread matches the live spread, so the issue does not stem from these factors.

What I do notice, however, is a significant difference in noise. Even without considering my algorithm—just by looking at the chart—the price line in live trading vibrates continuously, while in backtesting, it moves smoothly. I suspect this discrepancy is the key to the performance gap.

Could it be that historical tick data undergo some form of filtering or smoothing? Has anyone else observed this?

did you read my msg? if your broker said that they use data from mq, then, that means that you are NOT using real tick data from the broker.

 
err3vi #:

I use real ticks in backtesting and have even simulated slippage. Additionally, the backtesting spread matches the live spread, so the issue does not stem from these factors.

What I do notice, however, is a significant difference in noise. Even without considering my algorithm—just by looking at the chart—the price line in live trading vibrates continuously, while in backtesting, it moves smoothly. I suspect this discrepancy is the key to the performance gap.

Could it be that historical tick data undergo some form of filtering or smoothing? Has anyone else observed this?

sounds like the ticks are generated in the backtest , i assume 

 
Lorentzos Roussos #:

sounds like the ticks are generated in the backtest , i assume 

The MT5 backtesting platform provides an option to use real ticks, as well as the ability to simulate slippage on historical data. By backtesting, I refer to testing the algorithm on historical data, whereas by live testing, I mean running the algorithm in real-time on a demo account.
 
err3vi #:
The MT5 backtesting platform provides an option to use real ticks, as well as the ability to simulate slippage on historical data. By backtesting, I refer to testing the algorithm on historical data, whereas by live testing, I mean running the algorithm in real-time on a demo account.

Yes , based on your description that the ticks live fluctuate more and are not "smooth" indicates you may be using "Every tick" method which produces ticks based on the direction of the OHLC stored . And does not use real ticks in the backtest

 
Michael Charles Schefe #:

did you read my msg? if your broker said that they use data from mq, then, that means that you are NOT using real tick data from the broker.

By backtesting, I refer to testing the algorithm on historical data, whereas by live testing, I mean running the algorithm in real-time on a demo account. Real Ticks are provided by the MT5 platform in backtesting.
 
err3vi #:

I use real ticks in backtesting and have even simulated slippage. Additionally, the backtesting spread matches the live spread, so the issue does not stem from these factors.

What I do notice, however, is a significant difference in noise. Even without considering my algorithm—just by looking at the chart—the price line in live trading vibrates continuously, while in backtesting, it moves smoothly. I suspect this discrepancy is the key to the performance gap.

Could it be that historical tick data undergo some form of filtering or smoothing? Has anyone else observed this?

Then you did not pay attention to my question ...

Did you check how far back, your broker offers tick data? Are there in gaps in that data? Are there mismatches between tick data and the bar OHLC data?

When there is missing real tick data or a mismatch between tick and OHLC data, then the Strategy Tester replaces it with virtual tick data which is much more "smooth" than real data.

You should be scrutinizing the logs for these failings in quality of the data.

 
Lorentzos Roussos #:

Yes , based on your description that the ticks live fluctuate more and are not "smooth" indicates you may be using "Every tick" method which produces ticks based on the direction of the OHLC stored . And does not use real ticks in the backtest

One potentially relevant detail I forgot to mention: I do not use time-based frames (M1, M5, etc.) for trading. Instead, I trade on every tick, both in backtesting and live testing. In backtesting, I specifically use the Every tick option to ensure tick-by-tick execution.
 
err3vi #: The MT5 backtesting platform provides an option to use real ticks, as well as the ability to simulate slippage on historical data. By backtesting, I refer to testing the algorithm on historical data, whereas by live testing, I mean running the algorithm in real-time on a demo account.

And what good is that when the broker is providing "false" or "deficient" tick data?

Read my previous message to understand what happens when the tester detects these issues.