Introduction
When you see “Model Quality 99% / 99.9%” in a backtest, it’s just a proxy for how well the tester reconstructed fine price movements (ticks). It does not mean “profit accuracy = 99%.” Don’t take the number at face value—judge whether a system looks robust in real life using the points below.
Modeling modes (and what they’re good for)
Every tick (real ticks)
Replays actual Bid/Ask ticks from history. It reflects spread widening and wicks better, but results can shift across brokers/data sources.
Use when: ultra-short scalpers where a few pips decide outcomes.
Note: Many EAs don’t need this level of precision.
Every tick (generated from M1)
Builds “synthetic ticks” from 1-minute OHLC. Flash moves and extreme wicks get smoothed, so it’s weak for scalping evaluation.
Use when: getting a high-level view for day-trade to swing EAs.
1-minute OHLC (M1 OHLC)
Decisions use only each minute’s open, high, low, close. The in-bar order of price moves is lost.
Use when: entries/exits happen on ≥M1 and stops/takes are not razor-tight.
Open prices only
Evaluates on each bar’s first price only. In-bar movement is ignored, so stop/limit, trailing, fine TP/SL logic won’t be modeled well.
Use when: H1+ bar systems that act only on bar close—rough, sanity-check runs.
Rule of thumb: the more scalpy the EA, the closer you should model to “Every tick (real ticks)”. The more swing-oriented, the more you can get away with rougher modes for a first pass.
Spread, commissions & slippage (the “realism” layer)
Spread
Spreads expand during news and thin liquidity. Testing at a fixed 1.0 pip can be too kind; live will often be worse. Prefer wider settings and/or time-varying spreads to cover “bad” cases.
MT5 setup notes
- In the tester, click the
$
(symbol properties) next to the symbol name, enable “Use custom symbol settings”, then enter Spread (points) manually. - Default is floating (uses the broker’s historical variable spreads). These histories can be unusually tight; setting a manually wider spread is safer.
When does your manual spread actually apply?
- Every tick (real ticks): Generally not applied. The tester uses recorded Bid/Ask (i.e., variable real spreads). If you want tougher conditions here, raise commissions and add delay/slippage.
- Every tick (from M1) / M1 OHLC / Open prices only: Applied. Your manual fixed spread (points) is used (e.g., to derive Ask).
Commissions
Match your broker’s scheme (per side/round-turn, per lot/notional, currency). If omitted or wrong, PF and expectancy are inflated.
Slippage & execution delay
Testers often under-slip vs live. Don’t set execution delay shorter than your real server ping (ms). Run worse-case scenarios (wider spreads, added delay) to check the EA doesn’t break.
Tick data caveats (hidden traps inside “99%”)
- Broker differences: quote precision, tick rules, contract specs vary → results move. Align tests with your actual live account.
- Outliers/gaps: spikes and weekend gaps can swing P/L depending on handling. Check for weird bars.
- Time zones/DST: server time shifts change daily cutoffs and week closes. Keep test and live on the same time basis.
Choosing the test period (don’t cherry-pick)
- Include a mix of trend/range, high/low volatility regimes.
- Cover crash/shock phases (COVID, war headlines, flash crashes, etc.).
- If possible, review longer spans (e.g., 10–20 years) for robustness.
- As a stability cue, aim for ≥ 500 trades on the same logic (ideally ≥ 1,000).
Limits of “99% quality”
- Real execution effects (thin books, requotes, partial fills) can’t be fully replicated.
- VPS latency, terminal load, and human actions (manual stops/lot changes) are out of scope.
Bottom line: treat backtest quality as a reference, not a guarantee.
What beginners should actually do
- Pick EAs that don’t hinge on tiny ticks. Extreme scalpers (1–few pips edge) or “wick-sensitive” logic depend too much on modeling quirks. Prefer EAs with longer bars, clear logic, and positive RR—they’re less likely to drift live.
- Prefer EAs with verified live forward results. Public real-account tracking (e.g., Myfxbook verified). Demos and backtests are reference only.
- Run your own backtests. Vendor tests may fit one broker’s data or understate costs. Test with your broker settings. If an EA blocks user testing, that’s a red flag.
- Check that live P/L “behaves the same way” as the backtest. On a monthly basis, compare win rate, Avg win/loss (RR), PF, Max DD. They should sit in a similar range. If backtest climbs but live doesn’t, re-check costs, hours, broker.
- Retest under tougher conditions. Wider spreads, added slippage, exclude news windows—make sure the EA doesn’t collapse.
- Be skeptical of “too perfect” curves. Sky-high PF, standout win rate, near-zero DD may signal grid/martingale or overfitting. See “optimization traps” to spot these.
Summary
- 99% quality = tick reconstruction, not “99% profit certainty.”
- From a user’s view, the safest path is to choose EAs less sensitive to micro-ticks and with real-account forward history.
- Treat demo/backtests as reference; ultimately verify that your live P/L pattern matches the backtest’s way of making money.