Why live results are worse than the backtest
EA Trade TesterDemo labHow we testFor AI agents
It is the most common EA story: a smooth backtest, then a live account that drifts down. Usually nothing mysterious happened. One or more of a handful of known gaps between the tester and the market was there from the start, and the backtest could not show it.
What are the usual gaps?
| Gap | What happens | How we check it |
|---|---|---|
| Costs | a fixed or low spread in the tester; real spreads widen around the roll-over and at news | recorded spreads per hour, commission, slippage, swaps, then extra costs (EA costs) |
| Luck | the backtest shown was the best of many tries, so it was partly chance; new data pulls it back to the average | the luck bar counts your tries (overfitting) |
| The clock | session hours mean a different market on the live broker or after a clock change | first-read clock faults and the clock sweep (server time) |
| Repainting | signals read from the bar still forming appear and vanish inside the bar | first-read repaint fault and the look-ahead probe (repainting) |
| Orders | live orders fail (requotes, stops too close, market closed) and the EA does not notice | first-read check for unchecked order results |
| Drift | the backtest period rose or fell steadily, and the EA just rode it | the drift control: the same trades entered one day later |
How much can luck alone explain?
Suppose a strategy has no edge and you kept the best of 200 versions. The best one's backtest is expected to show a t-value near 2.77, which looks like a strong edge. Live, the same rules have no reason to keep that luck: the expected result is the true one, about nothing, minus costs. That is why a live account can fall short even when every trade is executed exactly as in the tester.
What should I do before going live?
- Count every version you tried and check the best one against the luck bar.
- Re-run the backtest with your broker's real spread at the hours the EA trades, plus commission and swaps.
- Check the code for the clock, repainting and unchecked orders.
- Run the frozen rules on new prices for a while (a forward test) before you add money. Our forward watch does this for free.
Is a small difference normal?
Yes. Fills, spreads and the exact ticks differ, so live results are never identical. A difference that grows steadily in one direction is the warning sign; a backtest that cleared costs, the luck bar and the drift control has a better chance of holding up, though never a certain one.
Related pages
- Is my EA backtest real or luck?
- EA costs: spread, commission and swap
- Does my EA repaint or look ahead?
- MT5 Strategy Tester report checker
- EA Trade Tester home: test your EA, bot, indicator or report
Questions people ask
My EA made money for a month live, then lost. Is it broken?
Not necessarily. A month is a short record; judge it with the record check, which counts trades and days and says TOO FEW when there are not enough.
Can I upload my live statement and my backtest together?
Upload the live statement to the record check, and send the code with your tester report for the lab: the parity check compares our rebuild's trades with your report.
Is a demo account the same as live?
Close for prices, but fills and spreads can be kinder on demo. Treat a demo forward test as the minimum, not the proof.
Is this financial advice?
No. It explains why tests and live trading differ. Not financial advice.