Backtest Reality Check
- Utilitys
- Version: 1.0
- Aktivierungen: 10
Backtest Reality Check liest den Bericht des Strategietesters, berechnet daraus zehn Kennzahlen und ermittelt anschließend mit denselben Funktionen, was derselbe Expert Advisor auf dem Konto tatsächlich getan hat; beide Ergebnisse stehen danach nebeneinander. Solange auf dem Konto weniger als 30 abgeschlossene Trades vorliegen, bleiben die Unterschiede zwar sichtbar, das Panel bezeichnet sie aber nicht als Abweichung, sondern vermerkt, dass die Grundlage dafür noch nicht ausreicht. Gehandelt wird dabei nicht: Das Tool eröffnet keine Positionen, ändert keine Orders, schließt nichts und greift auch sonst nicht in das Konto ein.
Wo ein Schwellenwert hinterlegt ist, bedeutet eine Markierung ausschließlich, dass der gemessene Wert diesen Schwellenwert überschritten hat; ob ein Expert Advisor taugt, sagt das Tool nicht, und warum eine Zahl so ausfällt, kann es ebenso wenig erklären – eine Überanpassung an historische Daten, ein verändertes Marktumfeld, ein anderer Broker und schlichter Zufall hinterlassen ähnliche Spuren.
Die Gegenüberstellung
So sieht der Reiter „Live vs Report“ auf dem Chart aus:
Manual (0) Link Unlink
Report: GridBot_EURUSD_M15.htm
Report Live Diff
Trades 28 140 -
Win rate 67.86% 41.43% -26.4 pt
Profit factor 3.50 1.64 -1.86
Expected payoff 32.14 7.16 -24.99 0.22x
Avg win 66.32 44.14 -22.18
Avg loss -40.00 -19.00 +21.00
Max drawdown 0.40% 0.38% -0.0 pt
Avg holding time 5.9 h 4.9 h -0.9 h
Trades per week 5.64 5.52 -0.12 0.98x
Avg lot 0.10 0.10 -0.00
Win rate differs from the report by -26.4 pt over 140 trades
Die Beschriftungen stehen auf Englisch, weil das Panel selbst englischsprachig ist. Die Trades des Kontos werden zuerst in dieselbe Struktur überführt wie die Angaben aus dem eingelesenen Bericht und laufen danach durch dieselbe Messfunktion. Damit die beiden Spalten auseinanderlaufen könnten, müsste jemand diese gemeinsame Funktion ändern; zwei getrennte Rechenwege, die unbemerkt voneinander abweichen, kommen hier nicht vor. In der Zeile „Trades“ steht deshalb ein Strich statt einer Differenz: Ein Bericht über mehrere Monate und ein Konto mit wenigen Wochen Historie kommen nie auf dieselbe Anzahl, und eine Subtraktion hätte dort keine Aussagekraft. Den Abstand zwischen zwei Prozentwerten gibt das Panel in Prozentpunkten an, denn eine in Prozent ausgedrückte Differenz von Prozentwerten bedeutet etwas anderes. Für die Zuordnung ist nichts einzustellen: Das Tool liest die Magic-Nummern aus der Historie des Kontos und legt für jede eine eigene Zeile an. Trades ohne Magic-Nummer sammelt die Zeile „Manual (0)“, denn von außen lässt sich eine von Hand aufgegebene Order nicht von der Order eines Expert Advisors unterscheiden, bei dem die Magic-Nummer nicht gesetzt ist.
Wenn die Grundlage noch zu dünn ist
Zu Beginn sieht dieselbe Ansicht so aus:
Not enough live trades yet (18 of 30)
Win rate 50.00% vs 67.86% - with 18 trades, a gap this size can occur by chance
Die Zahlen sind dann grau dargestellt – die Spalten „Report“ und „Live“ ebenso wie „Diff“. Verborgen wird nichts, denn etwas auszublenden wäre auf seine Art ebenso unaufrichtig; die Zahlen bleiben sichtbar, sie heißen nur noch nicht Abweichung. Bei der Zeile „Win rate“ fragt das Tool nicht, ob ein Schwellenwert überschritten wurde, sondern ob der Abstand noch in den Bereich des Zufalls fällt: Aus dem Anteilswert des Berichts und der Anzahl der Trades auf dem Konto ergibt sich ein Standardfehler, und das 1,96-Fache davon spannt das Band auf – 1,96 ist der bei zweiseitiger Betrachtung übliche Faktor. Liegt der Abstand innerhalb dieses Bandes, gilt er als etwas, das durch Zufall entstehen kann. Beide gezeigten Zustände beziehen sich auf denselben Bericht, sodass allein die Anzahl der Trades auf dem Konto die Breite des Bandes bestimmt. Bei der kleineren Anzahl ist das Band breiter als der Abstand, und das Panel spricht vom Zufall; bei der größeren ist es schmaler als der Abstand, deshalb lässt das Panel diese Formulierung weg und nennt nur noch die Abweichung. Genau darum geht es: Ein Programm, das jederzeit eine Antwort bereithält, hat nichts gemessen.
Den Bericht speichern
Beim Speichern des Berichts bietet der Strategietester zwei Formate an, und keines davon ist voreingestellt: Wählen Sie HTML. Eine als XML abgelegte Datei ist in Wirklichkeit eine Tabellendatei und lässt sich in dieser Form nicht auslesen; stillschweigend übersprungen wird sie trotzdem nicht: Das Panel nennt den Dateinamen und fordert dazu auf, den Bericht als HTML zu speichern. Die Berichte gehören in den Ordner MQL5\Files\BacktestRealityCheck\reports; er wird schon beim Start angelegt, und solange er leer ist, erscheint der vollständige Pfad im Panel.
Was gelesen wird
Die Werte stammen aus der Aufstellung der einzelnen Trades im Bericht, nicht aus den Beschriftungen der Kopfzeilen; deshalb ergibt derselbe Test dieselben Zahlen, unabhängig davon, in welcher Sprache das Terminal den Bericht gespeichert hat. Wer das nachrechnen möchte, speichert denselben Test zweimal, stellt dazwischen die Sprache des Terminals um und liest anschließend beide Dateien ein. Gelesen wird ausschließlich auf dem eigenen Rechner: Es findet keine einzige Verbindung nach außen statt, und nichts verlässt dieses Gerät.
Was das Tool nicht kann
– Es greift nicht in das Konto ein; es startet und stoppt auch keinen Expert Advisor.
– Es ist für Hedging-Konten ausgelegt; auf einem Netting-Konto werden Positionen zusammengefasst, sodass auch die Zahlen je Expert Advisor in einer gemeinsamen Summe aufgehen können.
Die kostenlose Demo
Die Demo wird im Strategietester ausgeführt. Ein Beispieldatensatz gehört zum Lieferumfang, deshalb erscheint schon in der ersten Sekunde ein gefülltes Panel auf dem Chart, und darüber steht von der ersten bis zur letzten Sekunde die Zeile:
Sample data - not a real report
Dieselbe Zeile erscheint zusätzlich im Journal des Terminals; auf einem echten Chart taucht sie nie auf.
Die Eingaben
Im Fenster Eingaben stehen dreizehn Namen:
InpReportFolder InpUseCommonFolder InpRescanSeconds InpMinTradesForStats
InpFlagTopTradeShare InpFlagEquityR2 InpFlagMinTrades InpIncludeSwapCommission
InpHistoryDays InpPanelX InpPanelY InpFontSize InpShowTesterSelfDemo
Alle dreizehn sind mit Standardwerten vorbelegt, eine Set-Datei muss niemand laden. Eine vierzehnte Eingabe gibt es nicht. Benötigt werden MetaTrader 5, ein freies Chartfenster und ein Hedging-Konto. Vor der Auslieferung wurde maschinell geprüft, ob Handelsfunktionen aufgerufen, DLL-Dateien eingebunden oder Verbindungen nach außen aufgebaut werden – gefunden wurde jeweils nichts.
Dieses Programm liest abgeschlossene Trades und rechnet sie nach; über künftige Kursverläufe sagt es nichts und verspricht keinerlei Ergebnisse. Der Handel an den Finanzmärkten birgt das Risiko von Verlusten; wer das Panel kennenlernen möchte, beginnt auf einem Demokonto.
