Robustheitstests und Analyse

Die größte Gefahr von Strategien, die mit einem maschinellen Lernverfahren erstellt werden, ist die Anpassung der Strategie an die historischen Daten, auf denen sie aufgebaut wurde.
Nachdem Sie eine neue Strategie entwickelt haben, sollten Sie sicherstellen, dass Ihre Strategie robust ist - was die Wahrscheinlichkeit erhöhen sollte, dass sie auch in Zukunft funktionieren wird.

Was ist Robustheit?
Sie ist einfach die Eigenschaft einer Strategie, mit sich ändernden Bedingungen zurechtzukommen.
- Zunächst einmal sollte die Strategie auf unbekannten Daten funktionieren (wenn sich die Marktcharakteristika nicht geändert haben), entweder mit oder ohne periodische Neuoptimierung der Parameter.
- Es sollte nicht auseinanderbrechen, wenn einige Abschlüsse verpasst werden.
- Eine robuste Strategie sollte nicht zu empfindlich auf die Eingangsparameter reagieren - sie sollte auch dann funktionieren, wenn Sie die Werte der Eingangsparameter, wie z. B. den Indikatorzeitraum oder eine Konstante, geringfügig ändern.

Wie man Strategien auf ihre Robustheit prüft

1. Nutzen Sie die Zeiträume innerhalb und außerhalb der Stichprobe

Der grundlegendste Test für die Robustheit ist das Testen der Strategie auf Out-of-Sample-Daten. Wenn Sie die genetische Evolution durchführen, wird die Strategie nur auf dem In Sample-Teil der Daten entwickelt. Der "Out of Sample"-Teil ist der Strategie "unbekannt" und kann daher verwendet werden, um festzustellen, ob die Strategie auch bei einem unbekannten Teil der Daten funktioniert.

Der blaue Teil jedes Diagramms sind die "Out of Sample"-Daten (unbekannte Daten). Wir können sehen, dass die Strategie auf der linken Seite auch in diesem Teil gut abschneidet, während die Strategie auf der rechten Seite an den unbekannten Daten scheitert - es ist fast sicher, dass sie an die Kurve angepasst wird.

2. Testen Sie die Strategie mit mehreren Symbolen und/oder Zeitrahmen

Der zweite Test auf Robustheit ist sehr wichtig - er bedeutet, dass dieselbe Strategie auf verschiedenen Symbolen und/oder anderen Zeitrahmen getestet wird. Eine robuste Strategie sollte idealerweise auf mehreren Symbolen/Zeitrahmen funktionieren.

Da jeder Markt seine eigenen Merkmale, seine tägliche Volatilität usw. hat, ist es in der Realität nicht einfach, eine Strategie zu finden, die bei mehreren Symbolen mit nur einem Satz von Einstellungen die gleiche perfekte Performance erzielt.
Wir können zufrieden sein, wenn die Strategie auf anderen Märkten zumindest ein gewisses Maß an Rentabilität erzielt oder nur leicht verliert.

StrategyQuant ermöglicht es Ihnen, zusätzliche Symbole für die Erstellung/Testung der Strategien im Abschnitt Zusätzliche Daten anzugeben. Sie können die Strategie sogar mit demselben Symbol und einem anderen Zeitrahmen testen.


(Klicken Sie auf das Bild, um eine größere Version zu sehen)

In den beiden Charts oben sehen Sie den Test der Strategie für EURUSD (grüne Linie), GBPUSD (cyanfarbene Linie) und ein Portfolio aus beiden (blaue Linie).
Während die Strategie im linken Diagramm bei beiden Währungen gut abschneidet, zeigt das rechte Diagramm, dass die Performance beim GBPUSD schlecht ist. Diese Strategie ist wahrscheinlich nicht robust genug.

3. Verwenden Sie das Werkzeug Robustheitstests in StrategyQuant

StrategyQuant ermöglicht es Ihnen, Robustheitstests zu aktivieren. Das Tool Robustheitstests testet die Strategie einfach wiederholt mit verschiedenen zufälligen Änderungen der Eingabeparameter und Daten, indem es eine Monte-Carlo-Simulation durchführt.

Die Idee hinter dieser Robustheitsprüfung ist es, zu überprüfen, wie gut die Strategie bei kleinen Änderungen der Eingaben, der historischen Daten oder anderer Komponenten der Strategie abschneidet.

Sie können verschiedene Eigenschaften simulieren:

- Zufällige Reihenfolge der Trades - Dies ist der einfachste Test, bei dem die Reihenfolge der Trades zufällig gemischt wird. Dies ändert den resultierenden Nettogewinn nicht, ist aber sehr nützlich, um verschiedene Variationen des Drawdowns zu untersuchen, die sich aus der unterschiedlichen Reihenfolge der Trades ergeben können.

- Gewerke zufällig überspringen - wird der Handel mit einer bestimmten Wahrscheinlichkeit zufällig übersprungen. Im realen Handel kann es vorkommen, dass Sie einen Handel aufgrund eines Plattform- oder Internetfehlers oder einfach deshalb verpassen, weil Sie den Handel für einige Zeit pausiert haben. Dieser Test gibt Ihnen eine Vorstellung davon, wie die Aktienkurve aussehen könnte, wenn einige Geschäfte zufällig übersprungen werden.

- Startleiste zufällig wählen - wird das Verhalten der Strategie getestet, wenn der Test bei einem anderen Startbalken beginnt. Es liegt auf der Hand, dass eine gute Strategie nicht davon abhängen kann, auf welchem Balken Sie den Test beginnen.

- Randomisierung der Strategieparameter - Jede Strategie verwendet Parameter, wie z.B. die Periode eines Indikators oder eine Konstante, die zum Vergleich herangezogen wird. Mit diesem Test wird geprüft, wie empfindlich die Strategie auf eine kleine Änderung des Parameterwerts reagiert. Die Änderungswahrscheinlichkeit gibt die Wahrscheinlichkeit an, dass ein Parameter seinen Wert ändert. Maximale Parameteränderung ist der maximale Prozentsatz, um den der Parameter seinen Wert ändert. Wenn Sie z.B. Max. Parameteränderung auf 10% setzen, kann ein Parameter mit dem Wert 60 zufällig in einen Bereich von 54 - 66 (+- 10% seines ursprünglichen Wertes von 60) geändert werden.

- Randomisierung von Verlaufsdaten - Ein sehr häufiger Fall von Kurvenanpassung ist, wenn die Strategie zu sehr von den Verlaufsdaten abhängig ist. Diese Option prüft das Verhalten der Strategie bei einer Änderung der Verlaufsdaten.
Die Änderungswahrscheinlichkeit gibt für jeden Balken an, wie wahrscheinlich es ist, dass sich der Eröffnungs-, Hoch-, Tief- oder Schlusskurs ändert. Die maximale Preisänderung ist ein prozentualer Wert der Änderung im Verhältnis zur ATR (Average True Range).
Wenn also zum Beispiel der Schlusskurs zufällig ausgewählt wird, um geändert zu werden, der ATR-Wert 10 Pips beträgt und die maximale Kursänderung 20% ist, dann kann sich der Kurs um +- 2 Pips ändern

Interpretation der Ergebnisse
Bei Robustheitstests werden die Ergebnisse in Form einer Reihe von Aktiengrafiken für jeden Testlauf UND einer Tabelle mit den Ergebnissen der Monte-Carlo-Simulation ausgegeben.

In diesem Beispiel haben wir 10 Simulationen durchgeführt, mit zufälligen Änderungen der Strategieparameter, historischen Daten und zufällig ausgelassenen Geschäften.
Wir können sehen, wie hoch das Eigenkapital für jede dieser Simulationen wäre, und die Tabelle auf der linken Seite liefert uns wertvolle Informationen über die Eigenschaften der Strategie während dieser Simulationen.

Was bedeuten diese Werte?
In der ersten Zeile werden die Werte des Nettogewinns, des maximalen %-Drawdowns usw. der ursprünglichen Strategie zum Vergleich angezeigt.
In den übrigen Zeilen werden Werte mit unterschiedlichen Konfidenzniveaus angezeigt.
Diese Zahlen sind das Ergebnis einer Monte-Carlo-Analyse, die auf unsere 10 Zufallssimulationen angewendet wurde.

Beispielsweise bedeuten Werte mit einem Konfidenzniveau von 80%, dass die Wahrscheinlichkeit, dass der Nettogewinn, der Drawdown usw. schlechter als die Werte des Konfidenzniveaus sind, 20% beträgt.
Werte mit einem Konfidenzniveau von 90% bedeuten, dass es eine Wahrscheinlichkeit von 10% gibt, dass der Nettogewinn, der Drawdown usw. schlechter als die Werte des Konfidenzniveaus sind.
Werte mit einem Konfidenzniveau von 95% bedeuten, dass nur eine Wahrscheinlichkeit von 5% besteht, dass Nettogewinn, Drawdown usw. schlechter als diese Werte sind.

Die Monte-Carlo-Simulation unserer Strategie zeigt uns, dass durch das Auslassen von 10% zufälliger Trades und kleinen zufälligen Änderungen der Eingabeparameter und Daten unser Nettogewinn von $ 6990 auf $ 3943 sinken und der maximale Drawdown von 6.97% auf 11.36% steigen kann.
Das bedeutet, dass es nur eine 5% Chance gibt, dass der Nettogewinn niedriger ist als $ 3943. Wenn wir die höheren Konfidenzniveaus betrachten, können wir sehen, dass keiner unserer Tests schlechtere Ergebnisse als $ 3943 hatte, also scheint die Strategie relativ robust gegenüber den Änderungen zu sein, denen wir sie ausgesetzt haben.

Da Robustheitstests nach dem Zufallsprinzip generiert werden, werden sich die Aktiencharts und die Werte in der Tabelle bei jedem erneuten Test der Strategie leicht unterscheiden. Je mehr Simulationen Sie durchführen, desto größer ist die statistische Aussagekraft dieses Tests.

4. Verwendung der Walk-Forward-Matrix als Robustheitstest

Die vierte Art der Robustheitsprüfung ist der Test mit der Walk-Forward-Matrix. Wenn die Strategie diesen Test besteht, bedeutet dies, dass sie mit Hilfe der Parameteroptimierung an eine große Bandbreite von Marktbedingungen anpassbar ist.

Unter diesen Links finden Sie ausführliche Artikel über Walk-Forward-Optimierung und Walk-Forward-Matrix.

Abonnieren
Benachrichtigen Sie mich bei
0 Kommentare
Inline-Rückmeldungen
Alle Kommentare anzeigen

Lesen Sie weiter