123 Invest Gruppe: Insight

Algorithmische Handelsstrategien und ihre Robustheit auf dem Prüfstand

Robustheitsfeststellung durch den Einsatz der Monte-Carlo-Simulation

Fakt ist: Die Robustheit von Handelsstrategien muss in regelmäßigen Abständen geprüft werden. Doch wie prüft man sie? In diesem Artikel zeigen wir, welchen Beitrag die Monte-Carlo-Simulation in diesem Fall leistet. Die Methode aus der Stochastik ist auch als Monte-Carlo-Studie bekannt, welche eine große Menge gleichförmiger Zufallsexperimente als Basis nutzt. Die möglichen Marktabweichungen und die darauf basierende Robustheit einer Handelsstrategie sollen dabei auf numerischem Weg gelöst werden. Dabei geht es um die Wahrscheinlichkeitstheorie, für die zufällige Ereignisse simuliert und algorithmisch mit augenscheinlichen Zufallszahlen – Pseudozufallszahlen – berechnet wird.

Die Monte-Carlo-Methode ist keine Erfindung der Neuzeit. Schon in den 1940er Jahren wurde das Verfahren von Pionieren wie Nicholas Metropolis, Stanislaw Ulam oder John von Neumann verwendet. Bei Anwendung der Simulation im Handel auf dem Finanzmarkt wird die Datenhistorie experimentell mit einem Rauschanteil versehen. Da sich der Test mit Zufallswerten bis ins Unendliche wiederholen lässt, gibt das Ergebnis bei Veränderung einer Datenreihe Auskunft über Stabilität (Robustheit) ihrer Strategie.

Die Problematik beim Curve Fitting

Mit der Power heutiger Computer können unzählige Ideen einem Backtest unterzogen werden. Dabei sind die Strategien identifizierbar, die sich in der Vergangenheit bewährt haben. Die Strategieparamater werden zu einem beachtlichen Teil an die Kurshistorie (curve) angepasst (Fitting). Ein vollständiger Ausschluss der erhöhten Anpassung ist unmöglich. Immerhin werden neue Handelsstrategien immer auf bereits bestehenden Mustern aus der Vergangenheit entwickelt. Die Überanpassung (Overfitting) stellt sich allerdings problematisch dar, da sie sich auf die historische Performance auswirkt und so zu einem im Rückblick besseren Ergebnis führt. Hieraus resultiert das Risiko des zukünftigen Misserfolgs, da Kursbewegungen individuell sind und eine exakte Wiederholung der Vergangenheit in der Zukunft auszuschließen ist.

Ist die Optimierung zu stark? Robustheitstests liefern Antworten.

Sobald sich die Marktbedingungen verändern, funktioniert die Handelsstrategie nicht mehr. Vor dieser Herausforderung stehen quantitative Trader, deren Erfolg nachhaltig vom Ergebnis der Robustheitschecks abhängig ist. Ist die eigene Strategie möglichst immun gegenüber der veränderten Preisentwicklung? Es gibt drei verschiedene Testverfahren, die auf wenige Parameter innerhalb der Handelsstrategie, und auf unbekannte (Out-of-Sample) Daten beschränkt werden. In den Tests wird sichergestellt, dass die Strategie nicht stärker als nötig angepasst wurde, und, dass sie sich bei zukünftigen Kursveränderungen als robust erweist.

Beim ersten Check wird die Performance auf unterschiedlichen Märkten, beispielsweise bei Wertpapieren untersucht. Exemplarisch richtet sich unser Blick auf eine Strategie für den Handel mit Rohstoffen. Lieferte sie bei Rohstoff 1 ein gutes Ergebnis, versagte aber beim artverwandten Rohstoff 2, ist die Strategie anfällig für Verluste und daher nicht robust. Eine Handelsstrategie kann nicht in allen Märkten gleichermaßen profitabel sein. Doch in ähnlichen Märkten sollte sich eine brauchbare Performance zeigen. Ähnliche Märkte werden von den gleichen Teilnehmern gehandelt und weisen gemeinsame Merkmale auf.

Der zweite und am häufigsten angewandte Robustheitstest prüft die Performance unter Veränderung der Parameter. Wir nutzen dafür einen Sensibilitätsindex, mit dem wir die höchstmögliche Stärke der Abweichung eines Parameters ohne die Veränderung der Profitabilität testen. Am Beispiel sieht das wie folgt aus. Erweist sich eine SMA Crossover Strategie unter Verwendung eines 5- und 35- Perioden SMA ergebnissicher und versagt bei Variante 10- und 70, ist Letztere höchstwahrscheinlich überoptimiert und erzielt daher nur eine marginale Quote. Der Blick auf die Wahrscheinlichkeit des Scheiterns ist beim zweiten Beispiel deutlich erhöht, wodurch die Robustheit sinkt und der quantitative Trader keine sicheren positiven Ergebnisse erzielen wird.

Nun kommen wir zum dritten Robustheitstest, welcher in den nachfolgenden Ausführungen im Zentrum steht. Hier wird die Performance einer Handelsstrategie untersucht, deren grundlegende Kursdaten einer Veränderung unterzogen werden. Es ist ein anspruchsvoller, durch die Vielfalt an Datenmodifizierungsmöglichkeiten ergebnissicherer Backtest. Hier berufen wir uns auf die Monte-Carlo-Simulation.

Die Monte-Carlo-Simulation im Überblick

Vor Testbeginn muss klar definiert werden, inwieweit und in welcher Art es zu Preisänderungen im Rahmen der Strategieprüfung kommen soll. Für ein sicheres Ergebnis müssen zahlreiche Änderungen in verschiedenen Größenordnungen zur Anwendung kommen. Die Backtests werden in beliebiger Menge anhand der modifizierten Daten durchgeführt, ehe es im finalen Schritt zur Untersuchung der Performanceveränderungen im Kontext zu den fingierten Preisänderungen kommt.

Ein Praxisbeispiel im realistischen Volatilitätsspektrum

Bei uns erfolgt die Modifikation der Kursreihe auf ATR Basis, da wir so eine Anpassung an das realistische Umfeld der Volatilität herstellen. Unser Handelsinstrument nennen wir SYMBOL. Nun erstellen wir ein fiktives Handelsinstrument, das wir SYMBOLnew nennen. Dazu verändern wir für jedes Bar von SYMBOL die Werte für High und Open, sowie für Low und Close. Die neu erstellen Werte nennen wir HIGHnew und OPENnew, LOWnew und CLOSEnew. Noch sind sie mit den originalen Daten identisch, bis wir einen zufälligen Bruchteil der ATR addieren oder subtrahieren. Die logische Reihenfolge wird beibehalten, so dass LOWnew wie beim Original positiv ist und dem Minimum, und HIGHnew dem Maximum entspricht.

Für die Erstellung von SYMBOLnew entwickeln wir eine Optimierung – Noisy Function. Mit dieser werden die modifizierten Werte konstruiert und als Candlestick Chart angezeigt. Der Anwender kann ihn per Drag & Drop mit einem Handelsinstrument in den Chart einfügen, wodurch SYMBOLnew im Subchart dargestellt wird.

Zur Verfügung stehen beim Indikator diese Eingabeparameter:

+ ATR_Period: Der Parameter definiert die ATR Periode Standard 1. Hierbei berufen wir uns auf die Funktion AvgTrueRange.

+ ATR_FactorCutoff: Dieser Parameter legt den Maximalanteil des ATR fest. Er wird für die Erzeugung des Rauschanteils benötigt und entspricht dem Standard 0,3. Die Zahlenwahl basiert auf folgenden Werten. Null steht für die Noisy Function, die mit der als Grundlage genommenen Datenreihe identisch ist. Bei der Entscheidung für 0,3 wird das aus Pseudozufallszahlen erzeugte Rauschen, das auf alle Open, High, Low und Close Elemente aufgerechnet oder von ihnen abgezogen wird, das Maximum des 0,3-fachen der ATR.

+ MaintainOCorder: Dieses Parameter entscheidet darüber, ob bei allen Open- und Close Kursen in der Simulation an der Ursprungsreihenfolge festgehalten wird (Standard: false). Mit der Parametersetzung auf true bleiben die Kurse in der ursprünglichen Folge erhalten.

+ Iterations: Im Optimizer der Monte-Carlo-Simulation kommt zur Durchführung des Tests ein Dummy Input zur Anwendung. Auf den Chart hat dieser Faktor auch bei Einfügung des Indikators keinerlei verändernde Wirkung.

Jeder Durchgang zieht die Erstellung einer neuen verrauschten Version des Underlyings nach sich.

Die Noisy Function ist ein Indikator, der sich in jeder Kalkulation verändert und somit kein statisches Symbol darstellt. Auf diesem Weg können unzählige Simulationen durchgespielt und die Veränderungen der Performance in jeder Handelsstrategie des Tests sichtbar gemacht werden. Unter Implementierung des Rauschens wird ermittelt, ob die Stabilität – Robustheit – erhalten bleibt.

Die Heatmap bildet die Robustheit ab

Durch die Farbvisualisierung bietet die Heatmap einen guten Blick auf die Profitabilitätsstreuung der Handelsstrategie, die mit zahlreichen, durch Rauschen veränderten Varianten der originalen Kursreihe geprüft wurde. Durch die Autofunktion lassen sich bis zu 20.000 Durchläufe generieren, was gleichermaßen die Versionsanzahl eines rauschunterlegten Underlayings ist.

Modifizierungsmöglichkeiten in Vielfalt

Die Möglichkeitsvielfalt für Anwender ist mit der präsentierten Methode breit gefächert. Um die Parameter zu verändern, wird einfach der Noisy Function Indikator angepasst und eine Grundlage für Tests aus verschiedenen Perspektiven geschaffen. Ebenso ist die Erstellung neuer Kennzahlen zur Steuerung der Simulation möglich. Der Fokus kann sich nicht nur auf den Nettoertrag, sondern auch auf den Drawdown im Maximum lenken. Die Ergebnisse sind für weitere Analysen in MS Excel transferierbar und können für weitere Strategietests im Vergleich herangezogen werden. Vorteilhaft, oder nicht?

Das war es für heute von uns: Take care & take Profit!

Weitere Informationen über die 123 Invest Gruppe und unsere Produkte finden Sie unter www.1-2-3-invest.de.

Herzlichst

Ihre Algopioniere
erstellt von Julia Rosen in Zusammenarbeit mit unserem Team

Weitere Informationen über die 123 Invest Gruppe erhalten Sie unter www.1-2-3-invest.de