TesterVsLive – match a Strategy Tester report against your real account, trade by trade

Indicators MetaTrader 4 Free

TesterVsLive panel: a backtest report compared with a second report

A backtest looks great. Then the EA runs live and the numbers are different, and nobody can say why. Was it slippage, missed signals, a restart or a manual trade? Or was the backtest flattering?

TesterVsLive answers that trade by trade. It never opens, modifies or closes orders.

What you get:

  • Verdict: green (live matches backtest), amber (partly matches) or red (live differs).
  • Trade match:
    • trades on each side and the match rate (Jaccard)
    • trades the backtest took but live missed, and what they earned
    • extra live trades the backtest never took
  • Execution: average entry slippage, exit slippage and entry delay, plus trades where one side hit SL/TP and the other did not.
  • Result:
    • price distance captured on matched trades, backtest vs live (independent of lot size)
    • the % of the backtest edge retained live
    • real commission and swap
  • Largest gaps: the 5 matched trades where live did worst against the backtest.
  • Chart marks:
    • blue = backtest entry, orange = live entry, a dotted line joins a matched pair
    • red ✕ = missed by live, magenta ✕ = extra on live
    • every mark has a tooltip
  • CSV export of the full trade-by-trade table.

Two modes:

  1. Report vs account history: the main use.
  2. Report vs a second report: compare two brokers, two data feeds, or two versions of an EA.

Quick start:

  1. In the Strategy Tester, right-click the report and choose Save as Report.
  2. Copy the .htm file to MQL4Files .
  3. In the Account History tab, choose All History.
  4. Attach TesterVsLive to the traded symbol. Set the report name and the EA’s magic number.

How matching works:

  • Only closed trades are used, within the window where both sides overlap.
  • Backtest trades are processed in time order. Each takes the nearest unused live trade in the same direction within the tolerance (default 180 s).
  • Match rate = matched / (backtest + live − matched).
  • Slippage is signed: positive means live got a worse price.

Limitations:

  • MT4 tester reports have commission = 0, so costs are shown for the live side only.
  • Partial-close remainder tickets are skipped.
  • For grid or basket EAs, lower the match tolerance.
  • The verdict thresholds are practical rules of thumb, not statistics:
    • green = match ≥ 90 % and edge retained ≥ 80 %
    • amber = ≥ 70 % and ≥ 50 %

Free to use, modify and share (MIT). No warranty, and nothing here is trading advice.