Testing & evaluation
Why add execution delay to an MT5 backtest?
An instant fill assumes that a request reaches execution without waiting. A delay allows the market to move between the trading decision and processing. That difference matters most when a strategy pursues small movements or reacts to a breakout.
Choose the model before the number
Use real ticks where the broker supplies them. Save one run with a documented fixed delay, then one slower run with the same dates and inputs. Your measured network ping is useful context, but it is not the entire order-processing time.
Compare the trades, not only the ending balance
Find the first entry whose fill differs. Compare request time, fill price, stop distance and exit. A small price change can change later automatic position sizes, so a large final-profit gap does not necessarily mean every trade had poor execution.
A practical review sheet
Record broker server, symbol, tick model, dates, delay and costs. Keep both reports and list changed entries. Describe a zero-delay run as an idealised scenario, not as a promise of live fills.
Keep the interpretation useful
Delay does not reproduce every rejection, outage or liquidity shortage. Use it to learn how execution-sensitive your idea is. MQLume review articles publish their test settings so you can start from a visible reference and explore your own conditions.
Start with a free editable EA project · Explore MQLume source code
Back to top