Backtest Reality Check
- Utilitários
- Versão: 1.0
- Ativações: 10
A backtest is a promise. This tool keeps score against it.
Load the Strategy Tester report of an EA and Backtest Reality Check takes it apart: how many trades it really rests on, how much of the winnings came from the three biggest ones, how straight the balance curve is, how long the quiet stretches are, whether the lot size grows inside a run of losses, and how much history the whole thing stands on.
Then link that report to an EA running on your account. The same figures are measured again from your own closed trades and put next to the report, so you can watch where live has drifted away from the test.
It never places, modifies or closes an order. It does not give advice, it does not send signals, and it does not tell you what to trade. It reads, it counts, and it shows you both columns.
WHAT IT MEASURES - TEN CHECKS
- Trades: how many the result rests on
- Top-3 share of the winnings: how much came from the three biggest trades
- Equity curve R2: how closely the balance curve fits a straight line
- Longest no-trade gap: the quietest stretch, against the length of the test
- Max lot increase: whether the lot grows inside a run of losses
- History quality: how complete the price data behind the test was
- Max consecutive losses, PF, max drawdown, test period
On screen the rows keep the names MetaTrader uses in its own report, so you can hold the two side by side. Each one shows the measured value and, when it crosses a line, why it was flagged: "The 3 biggest winners are more than 50% of all the winnings", "Fewer than 30 trades: too few to draw a statistical conclusion". The thresholds are yours to change, and the panel marks them as custom when you do.
These are measurements, not a verdict. The tool does not say an EA is good or bad, and it cannot tell you why a number looks the way it does - overfitting, a changed market, a different broker and plain luck all leave similar marks.
THEN IT KEEPS SCORE
- Trades, win rate, PF, expected payoff, average win and loss, max drawdown, average holding time, trades per week, average lot
- Report and Live side by side, with the difference in the third column
- EAs are found on their own from the magic numbers in your account history, manual trading included
- Link a report to an EA once. The pairing is remembered per account
BELOW THIRTY TRADES IT SAYS SO
A gap between two small samples is not a finding. Under thirty live trades the panel says "Not enough live trades yet (18 of 30)" and greys the difference column out. Even above it, a win rate gap comes with the arithmetic: "Win rate 44.29% vs 42.71% - with 140 trades, a gap this size can occur by chance."
Being able to say "not yet" is the point. A tool that always has an answer is not measuring anything.
HOW TO SAVE THE REPORT
Run the backtest, right-click the report, Save as Report. The dialog offers HTML and XML and picks neither by default - CHOOSE HTML. The XML option is really an .xlsx file and cannot be read here; if you save one by mistake the panel names the file and tells you to save it again as HTML.
Put the file in MQL5\Files\BacktestRealityCheck\reports. The folder is created for you on the first run, the full path is printed on the panel when the folder is empty, and Show path writes it to the Experts log so you can copy it from there.
WHAT IT READS, AND WHAT IT DOES NOT
- A Strategy Tester report holds the expert, the symbol, the period, the inputs, the company, the currency, the deposit and the leverage. It carries no account number and no name.
- The file is read on your own computer. There is no internet connection of any kind and nothing is sent anywhere.
- The figures come from the deal list, not from the labels, so a report saved on a terminal in any language gives the same numbers. Checked against the same test saved in three languages.
WHAT IT CANNOT DO
- MT5 Strategy Tester reports in HTML only. MT4 reports are not read, and neither is the XML/.xlsx option. Both are refused with their own reason on screen rather than failing quietly.
- It needs a report. Without one the second half has nothing to compare against.
- It cannot say why live differs from the test.
- It cannot see trades that are no longer in your terminal history.
- Netting accounts: the platform merges positions per symbol there, so per-EA figures may be merged as well. This tool is built for hedging accounts.
- Two EAs sharing one magic number appear as one.
- Very large reports are cut off with a reason rather than freezing the terminal.
- It occupies one chart and refuses to start on a second one.
- Average holding time is measured with weekends removed, the same way the report does it. On instruments that trade at weekends this reads shorter than wall-clock time.
Everything works with Algo Trading switched off, because nothing here touches an order.
TRYING IT
The free demo runs in the Strategy Tester and comes with a built-in sample, so all three screens are filled in from the first second: the report list, the ten checks with four of them flagged, and the comparison. It shows "Sample data - not a real report" the whole time. Point it at your own reports on a chart when you want your own numbers.
INPUTS
Folder: InpReportFolder, InpUseCommonFolder, InpRescanSeconds
Thresholds: InpMinTradesForStats, InpFlagTopTradeShare, InpFlagEquityR2, InpFlagMinTrades
Live figures: InpIncludeSwapCommission, InpHistoryDays
Panel: InpPanelX, InpPanelY, InpFontSize
Tester: InpShowTesterSelfDemo
REQUIREMENTS
MetaTrader 5 and a hedging account. One free chart. No DLL, no external server, no internet connection, no additional files. This tool does not predict prices, does not tell you what to trade, and makes no claim about your results.
