Home > Blog > Don't Be Fooled by MT5 Tester's Cached Inputs

Strategy TesterBacktestingTesting Workflow

Don't Be Fooled by MT5 Tester's Cached Inputs

Published: 2026-10-18Read time: about 2 min
⏱ This article reflects information as of its publish date. EA performance figures (PF, DD, annual return) change with live trading and re-validation — check the latest on the EA pages. See the latest EA results →

Bottom Line: Assume the Tester Still Holds the "Previous" Values

The MT5 Strategy Tester remembers the last inputs you used for each EA. It's a convenient feature, but right after you update an EA or finish a different test, the settings you think you tested can differ from the settings that actually ran.

Our fix is simple: don't trust the values shown on the tester screen. Write every parameter into the [TesterInputs] section of the config file, and verify against the inputs recorded in the report. This article explains why and how.

📧 Free 8-email course + subscriber-only pack of 13 MT5 indicators

Right after you sign up, you get a download link for a subscriber-only pack of our 13 MT5 indicators: compiled files (.ex5), source code and a setup guide. Then 8 emails on algo-trading essentials, reading backtests correctly and choosing a broker (one a day for the first 5 days, then 7, 14 and 30 days after signing up). You also get notified before each price rise of the versions sold on the MQL5 Market (launch pricing that steps up as copies sell). Our EAs are free on this site with a live account at a partner broker.

* Privacy strictly protected. You can unsubscribe at any time.

Why You End Up Testing a Different Setup

The tester saves inputs and reuses them

MT5's tester stores the last parameters used for each EA and loads them the next time you select that EA. It saves you from re-entering values by hand, but it causes accidents in situations like these:

  • You changed the default values when updating the EA, but the tester still held the old ones
  • You tried extreme values during optimization, then ran a normal backtest with those values still in place
  • Lot size or filter settings changed for a different currency pair carried over into the next test

All of these should be noticeable if you look at the screen carefully. But with an EA that has dozens of inputs, a single wrong value is easy to miss.

The Trouble Is That the Results Look Plausible

The tester shows no error even when the settings are wrong. If the results were completely off, you'd notice. The real problem is when the numbers look reasonable.

As an example, here are two Donchian-style EAs running on the same USDJPY H1 (both figures are measured values from real MT5 backtests).

EAPFTradesEffective DD
DONCHIAN ENGINE1.563110.8%
MEGAMAX DONCHIAN1.5562958.6%

PF and trade count are almost the same, yet the effective drawdown differs greatly. The design differences between the two are described on each EA's page. The point here is that if you only look at PF and trade count, you can't tell which setup actually ran. A single input being off can completely change your assessment of the risk.

Our Verification Routine

1. Write every parameter in [TesterInputs] in the config file

MT5 can launch the tester with a config file (ini). In its [TesterInputs] section, write all input values, not just the ones you're changing.

[Tester]
Expert=MyEA
Symbol=USDJPY
Period=H1
Model=4

[TesterInputs]
InpLots=0.10||0.10||0.01||1.00||N
InpPeriod=20||10||5||50||N

The format is "value||start||step||stop||optimize (Y/N)". For a normal backtest, set the last field to N.

We don't rely on whatever value an unlisted parameter might run with, since it can vary by environment. The assumption that "it should be at the default" is exactly the kind of accident this article is about.

2. Cross-check the report's input parameters

The tester report keeps the input values that were actually used. When a test finishes, compare the ini against the report's inputs. Dumping both to text and diffing them is more reliable than comparing by eye.

3. Treat an updated EA as a "different EA"

If you changed default values in an update, save the EA under a new name with a version in the filename. This cuts off, from the start, any path where old saved values get loaded automatically.

Checklist

  • Every input is written in [TesterInputs]
  • After optimization, the last field of every parameter is back to N
  • The report's inputs match the ini
  • The filename was changed after the EA update
  • Symbol, timeframe, and modeling are also specified explicitly in [Tester]

Limits and Caveats

Even this routine can't prevent every mistake.

  • Internal constants not exposed as inputs can't be managed through the ini. You need another way to confirm the source is identical.
  • Even with correct inputs, results change if the history data or spread conditions differ. Matching inputs is only one element of reproducibility.
  • We can't claim that every test we ran before adopting this routine was correct. We have re-run the ones we noticed, but we can't say nothing was overlooked.

How to set up our distributed EAs is covered in EA Setup Guide, and more testing know-how is collected in Knowledge.

Summary

  • The MT5 tester remembers previous inputs and can carry them over without you noticing
  • Misaligned settings produce no error and plausible-looking numbers, which makes them hard to catch
  • The fix is writing every parameter in [TesterInputs] and cross-checking against the report's inputs
  • After updating an EA, save it under a new name so old saved values can't be loaded
  • Internal constants and data conditions still aren't covered, so input management is only one part of testing

📧 Free 8-email course + subscriber-only pack of 13 MT5 indicators

Right after you sign up, you get a download link for a subscriber-only pack of our 13 MT5 indicators: compiled files (.ex5), source code and a setup guide. Then 8 emails on algo-trading essentials, reading backtests correctly and choosing a broker (one a day for the first 5 days, then 7, 14 and 30 days after signing up). You also get notified before each price rise of the versions sold on the MQL5 Market (launch pricing that steps up as copies sell). Our EAs are free on this site with a live account at a partner broker.

* Privacy strictly protected. You can unsubscribe at any time.

Have a question about EAs or FX?

You can post it on the Nattzy trading forum (free sign-up). Questions beyond this article are welcome too — EA settings, choosing a broker and more.

Ask on Nattzy ↗

Comments & questions