Dokumentation

Anwendungen

Zuletzt aktualisiert am 1. 3. 2019 von Kornel Mazur

Einfache Optimierung

Die Idee hinter einer Optimierung ist einfach. Zunächst müssen Sie ein Handelssystem haben, dies kann zum Beispiel ein einfacher gleitender Durchschnitts-Crossover sein.

In fast jedem System gibt es einige Parameter (Indikatorperioden, Vergleichskonstanten usw.), die darüber entscheiden, wie sich ein bestimmtes System verhält. Die Optimierung bedeutet, das System mit verschiedenen Parameterwerten zu testen

um die optimalen Werte dieser Parameter zu finden (die den höchsten Gewinn oder das beste Rendite/Defizit-Verhältnis ergeben).

Beispiel für die Optimierung

Schritt 1: Laden einer Strategie zur Optimierung

Zunächst müssen Sie in das Optimierungsfenster wechseln und die Strategie laden, die Sie optimieren möchten.

In diesem Beispiel verwenden wir eine einfache EMA-Cross-Strategie, die long geht, wenn der schnellere EMA über den langsameren EMA steigt, und short geht, wenn der schnellere EMA unter den langsameren EMA fällt.

Nachdem Sie die Strategie geladen haben, wird sie auch als Originalstrategie in die Datenbank für Optimierungsergebnisse aufgenommen.

Sie können auf die ursprüngliche Strategie doppelklicken und dann auf Ergebnisse -> Quellcode gehen, um ihre Regeln zu sehen.

Prüfen Sie unbedingt die Variablen Werte zuweisen so dass Sie sehen, dass die Variablen LongEMAPeriod, LongEMAPeriod2, ShortEMAPeriod, ShortEMAPeriod2 zum Speichern der Indikatorparameter verwendet werden.

In unserer Optimierung werden wir versuchen, optimale Werte für diese Parameter zu finden.

Es gibt noch ein kleines Problem. Wir können sehen, dass die Strategie unterschiedliche Parameter für die Long- und Short-Richtung verwendet.

Wir können ihn so verwenden, wenn wir unabhängig voneinander optimale Werte für die lange und die kurze Seite finden wollen, aber für unser Beispiel möchten wir denselben Parameter für die lange und die kurze Seite verwenden.

Wir können dazu das andere Kontrollkästchen verwenden Symmetrische Variablen generieren

Wenn Sie das Kontrollkästchen aktivieren, werden für die lange und die kurze Richtung die gleichen Parameter verwendet (vorausgesetzt, die Regeln sind gleich).

Sie sehen nun, dass die Strategie nur die Parameter EMAPeriod und EMAPeriod2 enthält, die für beide Richtungen verwendet werden.

Schritt 2: Einstellung der Optimierungswerte

Um Werte festzulegen, die optimiert werden sollen, müssen wir zu Einstellungen -> Parameter gehen

Parameter - automatisch

Wenn diese Option ausgewählt ist, wird der Wertebereich für alle Parameter automatisch anhand eines Verteilungsprozesses generiert, der durch Wertverteilung (%). Dieser Wert legt fest, wie stark der Parameterwert in %-Schritten schwankt. Maximale Schritte legt fest, wie viele %-Inkremente für den Parameterwert erzeugt werden sollen.

Parameter - manuell

Hier sehen Sie die Liste aller Strategieparameter, die zur Optimierung und manuellen Änderung zur Verfügung stehen.
Optimierung bedeutet einfach, dass verschiedene Werte der Eingabeparameter ausprobiert werden.

Für jeden Parameter, den Sie optimieren wollen, müssen Sie siehe die Zeile des Parameters und wählen Sie Start, Stopp und Schritt Werte. Der Optimierer durchläuft den Wert von Start bis Stop, wobei er Schritte unternimmt.

Der ursprüngliche Wert ist ebenfalls konfigurierbar und wird verwendet, um die ursprüngliche Strategie erneut zu testen. Sie können diesen Wert verwenden, um die Leistung der neuen Ergebnisse mit den "ursprünglichen" Einstellungen zu vergleichen.

Die Kombinationen insgesamt Wert zeigt uns, wie viele Tests durchgeführt werden müssen, um alle Kombinationen der Werte zu testen. Dies kann begrenzt werden durch Maximale Optimierungen.

Achtung!

Es ist möglich, dass Ihre Parametertabelle viel mehr Parameter enthält, sie könnte etwa so aussehen:

Dies ist eine weitere leistungsstarke Funktion von StrategyQuant. Sie ermöglicht es Ihnen, nicht nur die Strategieparameter zu optimieren, sondern auch andere Handelsoptionen, wie z. B. die Anzahl der Trades pro Tag, die Zeitspanne, in der gehandelt werden soll, oder sogar Indikatorverschiebungen.

Diese Einstellungen sind normalerweise Teil der Strategieoptionen, aber Sie können ihre Werte auch optimieren.

Der letzte Punkt, den wir konfigurieren müssen, sind die Daten, die zum Testen verwendet werden sollen. Für dieses Beispiel können wir EURUSD auf dem Zeitrahmen H1 in der Option Daten tab.

Schritt 3: Durchführung der Optimierung

Bevor wir mit dem Optimierungsprozess beginnen, müssen wir entscheiden, wie StrategyQuant die Ergebnisse speichern soll. Hierfür gibt es zwei Möglichkeiten. StrategyQuant kann entweder Alle Optimierungen in der Datenbank speichern oder Nur das Beste speichern Optimierung die nur die leistungsfähigste Änderung der Strategie in der Datenbank speichert.

Jetzt sind wir bereit, die Optimierung durchzuführen. Wir klicken auf Start Taste.

Die Optimierungsmaschine testet alle möglichen Kombinationen ausgewählter Eingabeparameter und speichert die Ergebnisse für jede Kombination in der Datenbank auf der Unterseite.

Wir können die Datenbank nach Nettogewinn sortieren und sehen, dass die besten Eingabewerte in Bezug auf den maximalen Gewinn EMAPeriod = 9 und EMAPeriod2 = 40 sind.

Achtung!

Bestimmte Ergebnisse werden mit einem Ausrufezeichen neben dem Titel der Strategie angezeigt. Das bedeutet, dass sich die Strategie bei bestimmten Parametern seltsam verhält und manuell genauer überprüft werden muss.

 

Interpretation der Ergebnisse

Jetzt haben wir Eingabeparameter, die für unser gegebenes Symbol und unseren Zeitrahmen optimiert wurden.

Wir haben eigentlich nur herausgefunden, was in der Vergangenheit am besten funktioniert hat. Wir müssen sehr vorsichtig sein, denn die Parameter könnten für die historischen Daten ideal sein,

aber es gibt keine Garantie dafür, dass das, was bei den Daten der Vergangenheit am besten funktioniert hat, auch in Zukunft funktionieren wird.

Dies wird als Kurvenanpassung bezeichnet - je mehr Parameter die Strategie hat, desto größer ist in der Regel die Gefahr der Kurvenanpassung.

Für die Kurvenanpassung gibt es zwei Ansätze:

  • sicherstellen, dass die Strategie robust ist und die Werte nicht optimiert werden
  • sicherstellen, dass die Strategie regelmäßig optimiert wird

Die Frage ist also, ob eine regelmäßige Neuoptimierung die Ergebnisse meiner Strategie verbessert.

Wenn ja, wie oft sollte ich es tun?

 

StrategyQuant kann Ihnen Antworten auf diese Fragen geben, indem es eine weitere seiner fortschrittlichen Funktionen nutzt - Walk-Forward-Optimierung und Walk-Forward-Matrix.

War dieser Artikel hilfreich? Der Artikel war nützlich Der Artikel war nicht nützlich

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