METHODOLOGY

How to Reproduce an EA Backtest on Your Own MetaTrader 5 Terminal

A screenshot proves nothing. A reproducible backtest you run yourself, on real ticks at Model=4, is the only honest receipt an EA vendor can hand you. Here is how to recreate one on your own terminal.

Why reproducibility is the trust signal, not the screenshot

Open any expert advisor (EA) listing and you will see the same thing: a glossy equity curve and a multiple of the starting balance. None of it is verifiable. A screenshot can be cropped, cherry-picked from one lucky run, generated on fast-tick data that never existed in the market, or simply drawn in an image editor. It is marketing, not evidence.

The only claim that survives scrutiny is one you can reproduce yourself. If a vendor hands you the exact symbol, timeframe, settings file, and tester configuration, and your terminal then prints a result in the same neighbourhood as theirs, that is a meaningful signal. It means the published curve was generated by the rules of the strategy tester and not by Photoshop.

A backtest you cannot reproduce is a story. A backtest you can reproduce is a receipt. The EudoraLab standard is to ship the receipts — the set file, the symbol, the timeframe, the tester mode — so any buyer can rerun the same test and check the math.

This article walks through how to recreate an EA backtest end to end on your own MetaTrader 5 (MT5) terminal, and — just as important — why your numbers will rarely match a vendor's to the dollar, and what an honest near-match actually proves. Every EudoraLab figure referenced here is a MetaTrader 5 Strategy Tester backtest at Model=4, not live trading and not a forecast.

What "Model=4 / every tick based on real ticks" actually means

The MetaTrader 5 Strategy Tester offers several modelling modes. They are not interchangeable, and the gap between them is where most fake-looking backtests hide.

  • Open prices only — fastest, least accurate; the EA only sees one price per bar.
  • 1 minute OHLC — builds ticks from minute bars; a rough approximation.
  • Every tick — the tester simulates ticks from available history.
  • Every tick based on real ticks (Model=4) — the tester downloads the actual tick history from the broker's trade server and replays it.

According to MetaTrader's own documentation, the real-ticks mode is the most accurate representation of history available in the tester, and quote-history accuracy is roughly twice as detailed as the best simulated mode. Crucially, when real ticks are missing for some interval, the tester falls back to simulating ticks just as it would in "Every tick" mode — so even a Model=4 run is only as clean as the underlying feed.

Why grid and recovery systems demand Model=4

Tick resolution matters most for strategies that place orders inside a bar. EudoraLab's instruments are, by design, controlled grid and recovery-grid systems: EudoraAegis builds a mean-reversion recovery grid on gold in 1.5x steps; EudoraAntaeus arms a leveraged controlled-martingale basket on the S&P 500 index. These systems add positions at specific intra-bar levels and close baskets at average-entry-plus-target prices. On coarse models, fills land at unrealistic prices and the equity curve flatters itself. Only real ticks reproduce where a grid level or a basket take-profit would genuinely have triggered. That is why every EudoraLab backtest is run at Model=4 and shipped with the exact set file so you can rerun it.

Step by step: recreating a backtest on your terminal

Here is the practical sequence. Budget an hour the first time — most of it is data download.

1. Install the EA and load the shipped set file

Drop the .ex5 into MQL5/Experts and the vendor's .set file into MQL5/Presets (or load it from the tester's Inputs tab). The set file is the single most important artifact: it pins every input parameter — lot percentages, grid step multipliers, drawdown caps, filter thresholds — to the exact values that produced the published run. Reproducing without the original set file is guesswork.

2. Match symbol and timeframe exactly

An EA tuned for GBPJPY on M15 is not the same instrument as "GBP/JPY" with a broker suffix on M5. Match the symbol string and the timeframe the vendor specifies. EudoraLab publishes both for each instrument — for example XAUUSD on M5 for Aegis, .US500Cash on H4 for Antaeus, BTCUSD/ETHUSD on D1 for Atomic.

3. Download real-tick history for that symbol

Select Every tick based on real ticks as the modelling mode. The first run will pull tick history from your broker; this can take a while for a 10-year window. Let it finish before trusting any output — a half-downloaded feed silently degrades into simulation.

4. Match the test window, deposit, leverage, and spread

Set the same date range, the same starting deposit, and a comparable leverage. Spread is a common silent divergence: if the vendor tested at a fixed spread and you leave it on "current," your costs will differ. Match the spread assumption the vendor documents.

5. Run, then compare shape — not just the final number

Run the test. Then compare the profile of the result: profit factor, maximum drawdown, win rate, trade count, and the shape of the equity curve — not only the ending balance. A reproduction that matches the drawdown and profit factor but lands at a different final multiple is still a strong confirmation. A reproduction with a wildly different drawdown is a red flag worth investigating.

Why your numbers will differ — and why that is normal

Here is the honest part most vendors skip: you will almost never reproduce a backtest to the dollar, and that does not mean either party is lying. The strategy tester replays your broker's tick history, and no two brokers' feeds are identical.

  • Different tick feeds. Broker A and Broker B record different ticks, micro-different prices, and different gaps. MetaTrader's own guidance is explicit: a broker's real tick data will not match another data source, so you should test against your own broker's ticks to compare.
  • Spread and commission models. Variable spreads, swap rates, and commission structures vary by broker and account type. The same EA on a Pro account versus an ECN account produces different net results.
  • Symbol specifications. Contract size, tick value, and minimum stop levels can differ, nudging fills and basket closes.
  • Missing-tick fallback. Where your feed lacks real ticks, the tester simulates — so two terminals with different gap patterns diverge slightly.

EudoraLab publishes results across more than one account type precisely to show this spread. EudoraAegis, for instance, backtests at +$87,282 (profit factor 2.43, relative drawdown 21.3%) over 2016–2025 on a RoboForex-Pro $1k account, and separately at +$1,055 (PF 2.88, rel DD 10.4%) over a 21-month RoboForex-ECN window. Same EA, different feeds and account models, different numbers. The shape — a positive, grid-driven mean-reversion profile — is what carries across.

Reading a reproduced result honestly

Reproducing a number is only half the work. Reading it without fooling yourself is the other half. Three habits separate a careful buyer from a hopeful one.

Distinguish edge from regime

A long backtest can flatter a strategy if it happens to span a regime that suited it. EudoraLab is candid about this. The headline EudoraFuji run reads +2,251% (PF 2.49, equity DD 9.6%) on GBPJPY M15 over 2015–2026 — but that 11-year figure incorporates hindsight regime-masking, and on an unmasked basis the profit factor is closer to 0.83. A more representative recent window (Feb 2025–May 2025) reads roughly +40% at PF 1.42. The honest read is the recent-regime number, not the headline multiple.

Respect concentration

Some returns are concentrated in a handful of days. For EudoraAntaeus on .US500Cash H4 (2018–2026), the Showcase profile backtests at 28.69x — but removing the best ~5% of days reduces it to roughly break-even. EudoraAtomic's crypto returns are similarly concentrated in bull-run regimes. Concentration is not a flaw to hide; it is a property to understand before you size a position.

A reproducible backtest tells you the strategy tester executed the rules faithfully on historical ticks. It does not tell you the future will resemble the past. Reproducibility is a trust signal about honesty, not a guarantee of profit.

What the EudoraLab "ship the receipts" standard looks like

Every EudoraLab instrument ships the exact set file, symbol, and timeframe so the published Model=4 backtest can be rerun on your own terminal. The table below summarises the reference backtests cited in this article. All figures are MetaTrader 5 Strategy Tester backtests at Model=4 — not live results, not forecasts, and not guarantees.

InstrumentSymbol / TFReference backtest (Model=4)Mechanism & main risk
EudoraAegisXAUUSD / M5+$87,282, PF 2.43, rel DD 21.3% (2016–2025, $1k)Recovery grid mean-reversion; floating drawdown by design
EudoraAntaeus.US500Cash / H4Showcase 28.69x, PF 1.77, eqDD ~59.3% (2018–2026)Leveraged controlled-martingale grid; returns concentrated in bounce days
EudoraFujiGBPJPY / M15+2,251%, PF 2.49 headline; ~+40% PF 1.42 recent regimeSpaced grid (martingale-style progression); regime-dependent
EudoraAtomicBTCUSD+ETHUSD / D1Portfolio ~977x, PF 1.24, max DD ~46% abs (2017–2026)Cross-sectional momentum; returns concentrated in crypto bull runs

Note what these mechanisms share: they are controlled grid, recovery-grid, and martingale-style systems. They carry floating (open) drawdown by design and can incur large losses. EudoraLab does not claim "no grid" or "no martingale" — the strategies are controlled grids, with breakers (EquityStop, crash-shield, AutoResume, blackout calendars) intended to bound the downside, not eliminate it.

A reproducibility checklist before you buy

Before paying for any EA — EudoraLab's or anyone's — run this checklist. If a vendor cannot satisfy the top three, you are buying a screenshot.

  • Set file provided? Without it you cannot reproduce the exact run.
  • Symbol and timeframe stated exactly? Ambiguity here invalidates the test.
  • Tester mode stated as Model=4 (real ticks)? Simulated-tick "100x" curves are not credible for grid systems.
  • Window, deposit, leverage, and spread documented? These move the result materially.
  • More than one broker/account shown? A single perfect curve is a warning, not a feature.
  • Mechanism disclosed honestly? If it is a grid or martingale, the vendor should say so and quantify the drawdown.

If you want EudoraLab's full disclosures and the per-instrument set files, see the FAQ. And the standing rule for any automated system: trade only with risk capital you can afford to lose. Nothing here is financial advice — it is a method for checking that a backtest is what it claims to be.

KEY TAKEAWAYS

  • A backtest screenshot proves nothing; a result you reproduce yourself on real ticks at Model=4 is the only verifiable trust signal.
  • Model=4 ('every tick based on real ticks') replays the broker's actual tick history and is roughly twice as detailed as simulated ticks — essential for grid and recovery systems that fill inside a bar.
  • To reproduce a run you need the shipped set file, the exact symbol/timeframe, real-tick data, and a matched window, deposit, leverage, and spread.
  • Your numbers will rarely match a vendor's to the dollar because each broker's tick feed, spreads, and symbol specs differ — a near-match on profit factor and drawdown is the real confirmation.
  • EudoraLab's instruments are controlled grid/recovery-grid/martingale-style systems that carry floating drawdown by design; all figures are Model=4 backtests, never guarantees or forecasts.
EudoraLab
The Operators · EudoraLab
Written by the EudoraLab desk — the operators who build, backtest and ship these MetaTrader 5 systems. Every figure we publish is a Model=4 real-tick backtest, packaged with reproducible set files so you can run it yourself. Not financial advice.

/ FREQUENTLY ASKED

What does Model=4 mean in the MetaTrader 5 Strategy Tester?

Model=4 is the 'Every tick based on real ticks' modelling mode. Instead of simulating ticks from bar data, the tester downloads the actual tick history from your broker's trade server and replays it. MetaTrader documents it as the most accurate mode available, roughly twice as detailed as the best simulated option. Where real ticks are missing for an interval, the tester falls back to simulation, so even a Model=4 run is only as clean as the underlying feed.

Why don't my reproduced backtest results exactly match the vendor's numbers?

Because the Strategy Tester replays your broker's tick history, and no two brokers' feeds are identical. Different ticks, spreads, swap rates, commissions, and symbol specifications all shift the result. MetaTrader itself advises testing against your own broker's ticks to compare. A reproduction that matches the profit factor, drawdown, and equity-curve shape — even at a different final balance — is a strong confirmation; only a wildly different drawdown is a red flag.

What do I need from a vendor to reproduce their EA backtest?

At minimum: the exact set file (which pins every input parameter), the precise symbol and timeframe, and confirmation that the test ran at Model=4 on real ticks. You also want the test window, starting deposit, leverage, and spread assumption documented. EudoraLab ships the set file, symbol, and timeframe for each instrument so buyers can rerun the same Model=4 backtest on their own terminal.

Does a reproducible backtest guarantee the EA will be profitable?

No. Reproducibility confirms only that the published curve was generated honestly by the strategy tester on historical ticks — it is a trust signal about transparency, not a forecast. Past backtested performance does not guarantee future results. EudoraLab's instruments are controlled grid, recovery-grid, and martingale-style systems that carry floating drawdown by design and can incur large losses. Trade only with risk capital you can afford to lose; nothing here is financial advice.

← BACK TO RESEARCH BROWSE ON MQL5 ↗

Every performance figure referenced here is a MetaTrader 5 Strategy Tester backtest (Model=4 real ticks), not live trading and not a forecast. Trade only with risk capital you can afford to lose.