MT5 tick models are not interchangeable: run a backtest sensitivity check

A practical MT5 workflow for comparing Real Ticks, Every Tick, 1 Minute OHLC and Open Prices Only without treating the fastest mode as equivalent evidence.

BamaUp Editorial ·
Candlestick chart with an indicator panel, used as a neutral illustration for MT5 backtest modeling and tick-path sensitivity
Candlestick with MACD by Jmay03, Wikimedia Commons, CC0 1.0, dated 22 November 2025. The chart is not MT5 output and is not BamaUp trading performance.

A faster test can answer a different question

MetaTrader 5 offers several tester modes because not every research question needs the same price-path detail. That convenience creates a common validation mistake: a strategy is optimized quickly with Open Prices Only or 1 Minute OHLC, then the best parameters are treated as if they had already survived a real-tick test. They have not. The modes differ in how often OnTick is called and in which intrabar prices exist, so an EA that reacts inside the bar can experience a materially different sequence of events.

MetaQuotes documents four relevant choices: Every Tick, Every Tick based on real ticks, 1 Minute OHLC and Open Prices Only. Real-tick testing uses broker-collected ticks when available; generated Every Tick reconstructs intermediate ticks from minute data; 1 Minute OHLC generates only four prices for a minute bar; Open Prices Only calls the EA at the bar open for the selected test timeframe [1, 2]. The right question is therefore not 'which mode is best?' but 'which assumptions can this EA safely ignore?'

Classify the EA before choosing a modeling shortcut

An EA that makes one decision at a new H1 bar and does not manage stops or pending logic intrabar may tolerate a coarse screening mode better than a scalper that reacts to every quote. Likewise, a strategy using trailing stops, tick-based exits, spread filters, stop orders, or sub-bar state changes is explicitly sensitive to the path between bar open and close. For those systems, a coarse mode can skip exactly the events that define the strategy.

Write a short dependency list before testing: signal frequency, intrabar order management, use of Bid/Ask, spread conditions, stop or limit triggers, lower-timeframe data, and any logic that counts ticks. This list is part of the experiment record. It also protects you from changing the test mode after seeing the result merely because one mode looks better.

Run a three-stage sensitivity check

Use the fastest reasonable mode only as a screening step. Stage one can be Open Prices Only or 1 Minute OHLC if the EA design genuinely allows it. Stage two should use Every Tick. Stage three should use Every Tick based on real ticks for a representative period where broker tick history is available. Keep the EA build, inputs, symbol, dates, timeframe and account assumptions unchanged between stages. The modeling mode is the variable you are testing.

Here is a hypothetical example. Suppose one fixed parameter set produces 420 trades in a coarse run, 397 in generated Every Tick and 361 in real ticks. Those counts are not 'good' or 'bad' by themselves, and they are not BamaUp results. The discrepancy is a diagnostic signal: ask which rules are being triggered or skipped. If the final result depends on 59 trades that only exist in the coarse model, the next task is to explain those trades, not to average the three equity curves.

Real ticks are closer to recorded market data, not a promise of live fills

MetaQuotes notes that real-tick mode uses ticks accumulated by brokers, while generated ticks are based on minute data. It also notes that real ticks can contain changing spreads within a minute, whereas generated ticks use a spread associated with the minute bar [2]. That makes real ticks valuable for sensitivity testing, but the label does not make a historical simulation identical to future execution.

The tester also provides execution-delay settings. No Delay represents idealized order handling, while Random Delay and Fixed Delay can be used to study sensitivity to processing latency [1, 3]. This still does not reproduce every live condition such as liquidity, broker-side rules, or future price behavior. Treat the tester as a controlled experiment, not a certificate.

A useful acceptance test for the next EA review

Create one table with rows for the three modeling stages and columns for trade count, net result, maximum drawdown, average trade, and any strategy-specific failure count you log. Do not set a universal pass threshold just because a metric moved by a certain percentage. Instead, define what difference would invalidate the logic of this particular EA. For example, if a system claims to trade only on new bars, a large trade-count change between Open Prices Only and Every Tick deserves investigation.

Then inspect a small sample of trades that exist in one mode but not another. Record the reason: spread filter, stop trigger, intrabar signal, missing tick history, or another cause. The official documentation reviewed on 25 September 2026 describes current tester behavior, but broker history availability and symbol conditions remain external limitations. Continue with BamaUp's free Auto-Trading Foundations path and EA checklist. Testing can expose assumptions; it cannot guarantee future trading outcomes.

Article references

1. MetaTrader 5 Help — Strategy Testing2. MetaTrader 5 Help — Real and Generated Ticks3. MetaTrader 5 Help — Strategy Optimization and Execution DelayImage: Wikimedia Commons — Candlestick with MACD (CC0 1.0)

Hypothetical examples are not BamaUp trading performance.

Support