Robustheit gut oder schlecht für EURCAD-Bollinger-Antizyklik-EA?
Wie im letzten Blog-Post versprochen, ging es im gestrigen Webinar um die Robustheitstest in der EA-Entwicklung. Maik Schober und ich stellten Euch dabei vor, wie wir beim derzeit in der Entwicklung liegenden EURCAD-Bollinger-Antizyklik-Modell vorgehen, um dessen Robustheit zu testen.
Vorab: Was ist Robustheit?
Robustheit bedeutet, dass ein System nicht zusammenbricht, nur weil ein Teil davon ausfällt oder nicht optimal funktioniert.
Alle Systeme sollten auf Robustheit überprüft werden, nicht nur Trading-Systeme und Expert Advisors (EAs).
Bei der Entwicklung von EAs haben sich für Maik und mich die folgenden Robustheitstests bewährt:
Test 1: Out-of-sample
Test 2: Variablen-Varianten
Test 3: Andere Handelssymbole
Test 4: Andere Broker
Test 5: Spread-Sensibilität
Test 6: Zufallswahrscheinlichkeit der Ergebnisse
Wer unser Buch Mit Handelssystemen zum Börsenerfolg gelesen hat, kennt diese Tests aus den Kapiteln 4, 5 und 6.
In diesem Blogpost zeige ich Dir die Ergebnisse dieser Tests für unser neues EURCAD-Modell.
Robustheitstest 1: Out-of-sample
“Out-of-sample” ist ein englischer Begriff aus der Statistik und bedeutet “außerhalb der Stichprobe”.
Wir entwickeln erfolgreiche EAs, indem wir die Handelsregeln festlegen und Regelparameter für einen gewissen, begrenzten Zeitraum optimieren. Dieser begrenzte Zeitraum ist die Stichprobe der Grundgesamtheit aller verfügbaren Daten selbst, also der “in-sample” Test.
Wir hatten im EURCAD-EA-Bespiel einen 1-Jahres Zeitraum als Stichprobe verwendet und dann mit einem 2-Jahres Zeitraum “out-of-sample” die Gegenprobe gemacht, siehe mein Artikel von vor ein paar Wochen hier: Praxis-Beispiel der Entwicklung eines erfolgreichen EAs.
Um die darin festgestellte Robustheit noch zu untermauern, haben wir weitere 3 Jahre zurück getestet, also einen weiteren out-of-sample Zeitraum überprüft. Hier die Ergebnisse:
Der zusätzliche 3-Jahres-Zeitraum ist fast so profitabel und ähnlich unvolatil wie der ursprüngliche. Das weist uns auf Robustheit und einen möglicherweise auch in Zukunft erfolgreichen EA hin.
Robustheitstest 2: Variablen-Varianten
In diesem, von mir oftmals auch “Nachbarschaftstest” genannten Robustheitstest geht es darum herauszufinden, ob der EA nur mit den exakten Parameter-Einstellungen erfolgreich ist oder ob wir einen “sweet spot” mit guter Umgebung gefunden haben.
In anderen Worten: Wenn wir die Bollinger-Periode z.B. von 26 auf 28 oder 30 oder den SL-Faktor von 1.0 auf 1.1 oder 0.9 verändern, kommt dann ein sehr viel schlechteres Ergebnis heraus oder sind die Testresultate immer noch in der Nähe des optimierten Ergebnisses?
Das ist eine wichtige Untersuchung, denn solche Parameter-Veränderungen verursachen regelmäßig abweichende Deals, deren Ausführung oder Nicht-Ausführung aber oft im Bereich des Zufalls liegen.
Das sieht man im folgenden Beispiel sehr gut:
Solche im Zweifelsfall auch dem Zufall zuzuschreibenden Deal-Verschiebungen dürfen unterm Strich nicht das Ergebnis verhageln.
Die gute Nachricht ist, dass sie das in unserem EURCAD-EA nicht tun, was wiederum für die Robustheit des Algorithmus spricht:
Robustheitstest 3: Andere Handelssymbole
Sich ähnlich verhaltende Assets sollten ähnlich gute Ergebnisse im EA-Backtest erzielen. Wenn das Modell EURCAD funktioniert, sollte es in anderen EUR-Forex-Paaren mit Währungen von etablierten Industrienationen ebenso einigermaßen gut funktionieren - es sei denn es liegt ein fundamental guter Grund für die Abweichungen vor, der mit Marktlogik belegt werden kann.
Nur wenn die generelle Verhaltensweisen der Assets nicht vergleichbar sind, wie z.B. bei Yen-Paaren, die in der Regel sehr viel trendiger sind als andere Hauptwährungen, hinkt dieser Vergleich.
Hier die von uns durchgeführten Vergleichstests mit anderen Währungspaaren im gleichen 3-Jahres Zeitraum:
Dieser Symbol-Vergleich erscheint im großen und ganzen in Ordnung zu sein. Er deutet uns darauf hin, dass für andere Währungspaare (hoffentlich nur leicht) abweichende Eingabe-Parameter gewählt werden müssten, um auf ähnlich gute Ergebnisse zu kommen. Dies bleibt aber noch zu untersuchen in weiteren Modell-Entwicklungen.
Dieser Robustheitstest ist bis hierhin der am ungünstigsten ausgefallene. Aber zumindest sind keine großen Abstürze zu erkennen, so dass wir ihn als bestanden abhaken können.
Robustheitstest 4: Andere Broker
Im Forex- und CFD-Bereich gibt es keinen zentralen Handel an einer Börse. Aktuelle Kurse und historische Charts basieren auf bilateralen Kursverhandlungen, so dass jeder Broker leicht andere historische Datenreihen erstellt. Die Abweichungen liegen in aller Regel im sehr geringen Bereich und können daher dem Zufall zugerechnet werden.
Daraus leitet sich die Konsequenz ab, dass die Testergebnisse eines erfolgreichen EAs sehr ähnlich ausfallen müssen, wenn man ihn auf den unterschiedlichen Datensätzen mehrerer Broker testet. Tun sie das nicht, würde das nicht für Robustheit sprechen, sondern auf relative Zufälligkeit des entwickelten Systems hinweisen.
Da wir bislang sehr gute Hinweise auf Robustheit für dieses EURCAD-Systems haben, haben wir auf diesen Robustheitstest verzichtet.
Wer Modelle auf börsengehandelte Assets entwickelt, sollte die Asset-Preise mehrerer Börsen (z.B. Aktien auf Xetra versus Börse Stuttgart oder NYSE versus NASDAQ) verwenden und diesen Robustheitstest damit durchführen.
Robustheitstest 5: Spread-Sensibilität
Je höher die Dealfrequenz eines EAs ist, desto schwerer fallen die Handelskosten ins Gewicht. Einer der größten Elemente aller Transaktionskosten ist der Spread, bzw. die Kombination aus Spread und Broker-Provision.
Die Effekte des Bid-Ask-Spreads werden oft unterschätzt, insbesondere wenn ein Handelssystem Signale zu Marktphasen generiert, in dem die Liquidität dünn ist und somit “Slippage” entsteht. Slippage bedeutet, dass ein Trade schlechter ausgeführt wird als der angefragte Kurs. Slippage entsteht auch, wenn man größere Lotsizes handelt als die, die zum angebotenen Kurs handelbar sind.
In Backtests simuliert man Slippage am einfachsten durch eine Ausweitung des Spreads.
Wir fordern von erfolgreichen EAs in der Regel, dass sie auch noch mit dreifachem Spread profitabel sind.
Unser oben dargestellter, ursprünglicher Test war mit 20 Punkten (2 Pips) Spread gerechnet, was überdurchschnittlich hoch ist und somit konservativ gerechnet war. Hier nun der Gegentest mit 60 Punkten, also dem Dreifachen des konservativen, normalen Spreads:
Robustheitstest 6: Zufallswahrscheinlichkeit der Ergebnisse
Kann es sein, dass wir nur zufällig ein vielversprechendes EA-Setup gefunden haben?
Dies liegt immer im Bereich des Möglichen, weshalb wir die Zufallswahrscheinlichkeit der Testergebnisse untersuchen müssen.
Dieser sechste Robustheitstest wird von den wenigsten Amateur-Tradern durchgeführt, da er etwas Fachwissen in Statistik voraussetzt. Er ist aber im Standard-Repertoire eines jeden Trading-Profis.
Er gibt tieferen Einblick in das Handelsmodell und ist sehr wertvoll.
Daher darf er niemals fehlen! Auch nicht bei Amateuren.
Die gute Nachricht: Es gibt eine Berechnungsmethode für die Zufallswahrscheinlichkeit der Modell-Ergebnisse, die sehr leicht durchzuführen ist. Man muss nur die richtige Excel-Formel kennen und das Rechenergebnis richtig deuten können.
Diesen finalen Robustheitstest behandeln wir im Detail zusammen im nächsten Webinar am Donnerstag, 16.5.2024, um 17 Uhr.
Du bist herzlich eingeladen!
Melde Dich hier zur zwölfteiligen Webinarserie an, falls Du noch nicht dabei bist. Sie ist dank unseres Sponsors JFD Brokers für Dich komplett kostenlos.
Ich empfehle Dir zur idealen Vorbereitung auf das Webinar, das Kapitel 6 Test des Modells auf zufällige Spezifikation ab Seite 154 unseres Buchs Mit Handelssystemen zum Börsenerfolg zu lesen.
Hol Dir das Buch hier.
Trade wie Profis
Cristof Ensslin von mindfulfx.de