So optimieren Sie Handelssysteme

Mai 2, 2017 1:05 pm

[marker color=“#34aa6f“] Eine perfekte System-Optimierung ist nur Mythos [/marker]

Jedes Handelssystem enthält bestimmte Parameter. Damit passen Trader ihr Handelssystem auf einen ausgesuchten Markt an. Erfahrene Systementwickler könnten bereits jetzt Kritik üben. Wieso muss man die Parameter verändern? Ist das Handelssystem so schwach, dass es ständige Anpassungen benötigt? Solche Fragen machen das Leben eines Traders schwer. Unsicherheit multipliziert sich, wenn ein optimiertes „Supersystem“ keine realen Gewinne bringt.

Probleme bei der Optimierung

Für jede Kombination aus Markt, Handelssystem und Testzeitraum gibt es eine optimale Handelseinstellung. Die beste Einstellung lässt sich mit einem Backtest mathematisch genau ermitteln.
Wird nun der Markt oder der Testzeitraum geändert, verändert sich alles. Nicht nur die Parameter-Einstellungen unterscheiden sich. Es geht sogar so weit, dass aus einem profitablen System ein Verlustbringer werden könnte.
Noch komplizierter wird es, wenn die Handelsfrequenz hoch ist, und der eingestellte Zeitrahmen (zum Beispiel 1-min-Chart) klein ist. Denn je kleiner er ist, desto stärker schlagen Transaktionskosten negativ durch. Die Handelsgebühr, der Spread zwischen Geld- und Briefkurs sowie die Slippage können ein „gutes“ Handelssystem schlecht aussehen lassen. „Gut“ heißt in diesem Fall, dass das Handelssystem eigentlich auf einer soliden Handelsidee beruht, und trotzdem unbefriedigende Ergebnisse zeigt.
Jetzt könnte man leicht in Versuchung kommen, grundsätzlich nicht mehr zu testen. Das dürfte vielleicht sogar noch ein größerer Fehler sein. Man hätte nämlich keinen Hinweis, auf die Funktionsweise des Systems. Jeder Backtest ist zwar ein Blick in die Vergangenheit, aber Backtests helfen, Erfahrungen zu sammeln. Sie sind die kostengünstigste Möglichkeit, um herauszufinden, ob ein System überhaupt einen Wert besitzt.
Es gilt: Je größer die Anzahl der Parameter ist, desto komplizierter wird das Handelssystem. Die Anzahl der Kombinationsmöglichkeiten steigt mit der Parameteranzahl rapide an. Je komplizierter das Handelssystem aufgebaut ist, desto wahrscheinlicher ist es, dass bei einer mathematischen Optimierung ein großartiges Ergebnis errechnet wird. Meistens erwischt man damit aber nur die beste Zufallseinstellung.
Tipp für die Entwicklung: Favorisieren Sie Handelssysteme, die einfach und logisch sind. Am besten ist es, wenn sie nur einen oder zwei Parameter enthalten.

Kursdatenauswahl für einen Backtest

Grundsätzlich ist es gut, wenn man viele Kursdaten zur Verfügung hat. Daten sollten jedoch repräsentativ sein. Wenn Sie zum Beispiel Kursdaten verwenden, die einen Crash enthalten, dann wird es in der Optimierung Verzerrungen geben. Jeder Crash ist eine statistisch sehr unwahrscheinliche Marktbewegung. Sollten Sie mit Futures arbeiten, bieten sich fortgesetzte Kursdaten an (Endloskontrakte).
Von Vorteil ist es, wenn so viele Kursdaten zur Verfügung stehen, dass Sie eine Halbierung vornehmen können. Starten Sie eine Optimierung mit der einen Hälfte und testen Sie danach mit der anderen Hälfte die Zuverlässigkeit des Handelsergebnisses.

Reale Ergebnisse sind oft schlechter als erwartet

Es gibt praktisch kein Handelssystem, dass nach einer Optimierung ein gutes Ergebnis zeigt, und im realen Handel danach, mit einem noch besserem glänzt. Man muss immer Abstriche machen – oft sogar sehr große. Ursache dafür sind immer Handelskosten und Slippage. Hinzu kommen Fehler bei den Testdaten und der Programmierung. Mit etwas Sarkasmus, kann man sogar eine Regel aufstellen: Je besser die berechnete Profitabilität des Handelssystems ist, umso schlechter fällt der reale Handel aus.
Das Ziel einer Optimierung sollte nicht die Berechnung der Parameter sein, die ein möglichst hohes Ergebnis bringen. Praktikabler ist die Ermittlung eines Einstellbandes, das über verschiedene Zeiträume eine gute Performance bietet.
Eine Systemeinstellung passend zum höchsten Gewinnbetrag zeigt oft nur den optimierten Zufall. Jeder Markt enthält ein „Random Walk“. Das sind Kursbewegungen, die weitgehend zufällig passieren. Die Bewegungen lassen sich nicht vorhersehen, und sind deshalb nicht mathematisch optimierbar.
Vermutlich lässt sich sogar ein völlig unsinniges Handelssystem ohne Marktbezug soweit optimieren, dass Gewinne in einem Backtest nachweisbar sind.

Ein Beispiel-Handelssystem: „RSI-Crosser“

Beim diesem Handelssystem geht es um einen Trendhandel mit dem RSI. Ich habe das System „RSI-Crosser“ genannt.
Das gewünschte Einstiegs-Szenario geht davon aus, dass es Rücksetzer gegen die allgemeine Trendrichtung gibt. Solche Rücksetzer enthalten hohes Gewinnpotenzial, weil sie einen guten Einstiegskurs mit besonderen Chance-Risiko-Verhältnis bieten. Im Fall eines Einstiegs ist der durchschnittliche Gewinnbetrag deutlich höher als der durchschnittliche Verlust.
Erwartungsgemäß werden die Ergebnisse in Abhängigkeit zum Markt schwanken. Je trendiger der Markt ist, desto höher fallen die Gewinne aus.
Einstiegsbedingungen für den Long-Einstieg:

  • Handelsobjekt: DAX-Future im Endloskontrakt auf Tagesbasis
  • Der RSI(3) kommt aus dem unteren Extrembereich und kreuzt von unten nach oben den unteren Grenzwert von 35
  • Der Trend wird mit Hilfe von Welles Wilders Directional-Movement (DM) gemessen. Liegt der +DM(14) über den –DM(14), dann handelt es sich um einen Aufwärtstrend. Andernfalls liegt ein Abwärtstrend vor.
  • Als Filter gibt es einen GDL(20) (einfacher gleitender Durchschnitt) im RSI-Indikator. Für das Einstiegssignal muss der RSI nicht nur den unteren Grenzwert überschreiten, sondern gleichzeitig über dem GDL liegen.
  • Der Long-Trade wird geschlossen (Verlust-Stopp), wenn der RSI wieder zurückfällt, und seinen unteren Grenzwert unterbietet.
  • Im positiven Fall steigt der RSI an, und übertrifft den oberen Grenzwert. Der RSI darf sich im oberen Grenzbereich dauerhaft aufhalten.
    Der Long-Trade wird geschlossen, wenn der RSI den oberen Grenzwert (65) von oben nach unten kreuzt. (Gewinnmitnahme)

 
Für einen Short-Trade gelten die passenden Regeln in umgedrehter Form.
RSI Handelssystem
Bild: Zwei Short-Trades mit RSI-Crosser.
Der mittlere Indikator ist ein kurzfristiger RSI(3). Darunter ist Directional Movement (DM) dargestellt. Dieser unterteilt sich in +DM (Aufwärtsbewegungen) und –DM (Abwärtsbewegungen). Ein Aufwärtstrend darf angenommen werden, wenn +DM größer als –DM ist. Bei einem Abwärtstrend steht –DM über +DM.
RSI Kapitalkurve
Bild: Kapitalkurve des RSI-Crosser. Umrahmt ist eine dynamische Phase in der Kapitalkurve.
 

Auswertung des RSI-Crosser

Das obere Beispiel, mit dem Handelssystem RSI-Crosser, zeigt wie tückisch Optimierungen sein können.
 

Handelsobjekt: FDAX
Einsatz jeweils nur ein Kontrakt.
Handelsgebühr: 2 Euro 4 Euro / Roundturn
Trades: 113 Stk.
Zeitraum: 01.04.04 bis 28.04.17
Trefferquote: 41,59%
Payoff-Ratio: 2,56
Profitfaktor: 1,83
max. Drawdown: -23%
Gesamtrendite: 92%
Trades: 13 Stk.
Zeitraum: 01.01.11 bis 31.12.12
Trefferquote: 84.62%
Payoff-Ratio: 3,36
Profitfaktor: 18,49
max. Drawdown: -6%
Gesamtrendite: 67.49%

 
Dargestellt sind zwei verschiedene Auswertungszeiträume. Der erste Zeitraum umfasst eine Optimierung über einen langen Zeitraum von 13 Jahren. Heraus kommt eine solide Rendite.
Bei Betrachtung der Kapitalkurve fällt jedoch ein bestimmter Zeitraum auf. Hierbei handelt es sich, um eine volatile Handelszeit von zwei Jahren. Hätte man das Handelssystem nur in dieser Zeit angewendet, wäre das Ergebnis phänomenal gewesen. In dieser Zeit ergab sich eine hohe Trefferquote von 84% und ein Profitfaktor von 18.
Das Beispiel zeigt, wie drastisch sich Handelsergebnisse nur durch die veränderte Marktstruktur verbessern oder verschlechtern können. Eine solche Verzerrung gibt es praktisch bei jedem optimierten Handelssystem. Beim RSI-Crosser liegt der Erfolgsfaktor in der Volatilität des Marktes. Besonders gut funktioniert es in volatilen Trendmärkten.
 

Grundlegendes Misstrauen gegenüber optimierten Handelssystemen

Die meisten Programmierer sind von ihren Optimierungen völlig überzeugt. Seien Sie jedoch misstrauisch. Das trifft besonders auf Backtest-Kapitalkurven zu, die gleichmäßig von links unten steil nach rechts oben verlaufen. Im praktischen Trading lassen sich die Top-Ergebnisse nicht reproduzieren.
Börsenkurse und -muster wiederholen sich nicht. Die Technische Analyse lebt nur von der Ähnlichkeit der Muster. Beim Optimieren von Handelssystemen gehen Programmierer davon aus, dass sich die Muster wiederholen. Eben das passiert nicht, und führt zur Diskrepanz zwischen Theorie und Praxis.
Die Unterschiede zwischen Theorie und Praxis zeigen sich in den Performancezahlen. Fragt man einen Programmierer nach seinem Backtest-Ergebnis, wird nicht selten ein Profitfaktor von über 3 genannt (Summe der Einzelgewinne / Summe der Einzelverluste). Bei so einem hohen Wert müsste das System eine wahrhaftige Gelddruckmaschine sein. Fragt man danach, wie hoch die aktuelle Kapitalrendite ist, dann tritt Ernüchterung ein. Meistens reicht es noch nicht einmal für eine 10%-Rendite.
 
Trading mit GDL