Workshop Backtesting – Ignorierte Funktionen

video
play-sharp-fill

Leider haben wir im Backtesting nicht nur mit technischen Problemen zu kämpfen. Manchmal ist auch unser eigenes Programm die Ursache dafür, dass etwas nicht funktioniert. Wir wollen uns einmal ein Beispiel ansehen: Ich drücke auf F4 um in den Metaeditor zu wechseln. Hier habe ich ein einfaches kleines Progrämmchen geschrieben, welches nur eine einzige Funktion hat, nämlich mit der Comment Funktion den Text “Test” auszugeben. Ich kompiliere das hier mal, gehe zurück in mein Backtesting, stoppe den aktuellen Backtest und wähle mein Programm hier oben aus. Und nachdem ich den Backtest starte sollte - wenn ich die historischen Daten entsprechend heruntergeladen habe - hier oben links der Text erscheinen. Das funktioniert also! Jetzt möchte ich gerne eine Message Box ausgeben. Also wechsele ich wieder in den Metaeditor und ersetze diesen Befehl durch die Message Box Funktion. Ich kompiliere und erhalte hier unten auch keine Fehler. Gehen wir also zurück in unseren Strategietester und starten unseren Test erneut!  Und unser Programm läuft auch, aber weder erscheint hier oben ein Text, noch sehe ich die von mir gewünschte Messagebox. Was kann der Grund dafür sein? Wenn man sich die Hilfefunktion aufruft oder in die Referenz von MQL4 wechselt bekommt man zur Message Box viele Informationen. Unter anderem hier unten die Information, dass diese Funktion vom Strategietester nicht unterstützt wird! Wer solche Dinge nicht weiss, kann in seinem Programmcode Funktionen verwenden die im aktuellen Trading funktionieren aber beim Backtesting überhaupt nichts tun. Und das kann einen schon ein bischen in den Wahnsinn treiben! Wenn also eine Funktion einmal im Strategietester nicht arbeitet wie sie soll, macht es immer Sinn die entsprechende Referenz dazu aufzurufen und nach so einem Eintrag hier zu suchen...