Diskussion zum Artikel "Kontinuierliche Walk-Forward-Optimierung (Teil 1): Arbeiten mit Optimierungsberichten"
Irgendwo in der Beschreibung von Metatrader-4 habe ich einen Satz gesehen, der besagt, dass MQL4 speziell dafür geschaffen wurde, dass jede Hausfrau ihre Strategie beschreiben und auf dem Terminal ausführen kann. Nicht jeder hier ist ein Software-Ingenieur.
Vielleicht wird MQ eines Tages kommen, um den Optimierungsprozess direkt im Tester zu automatisieren, aber im Moment müssen Enthusiasten Methoden mit Hilfe von Drittanbieter-Tools aus MQL konstruieren. Ich danke Ihnen, Andrey Azatskiy, für Ihre Bemühungen. Ich hoffe, dass es am Ende der Artikelserie eine kurze Anleitung zur Verwendung Ihrer Software für diejenigen geben wird, die nicht schnell verstehen können, was in diesem Artikel geschrieben wurde.
Irgendwo in der Beschreibung von Metatrader-4 habe ich einen Satz gesehen, der besagt, dass MQL4 speziell dafür geschaffen wurde, dass jede Hausfrau ihre Strategie beschreiben und auf dem Terminal ausführen kann. Nicht jeder hier ist ein Software-Ingenieur.
Vielleicht wird MQ eines Tages kommen, um den Optimierungsprozess direkt im Tester zu automatisieren, aber im Moment müssen Enthusiasten Methoden mit Hilfe von Drittanbieter-Tools aus MQL konstruieren. Ich danke Ihnen, Andrey Azatskiy, für Ihre Bemühungen. Ich hoffe, dass es am Ende der Artikelserie eine kurze Anleitung zur Verwendung Ihrer Software für diejenigen geben wird, die nicht schnell verstehen können, was in diesem Artikel geschrieben wurde.
Es gab einen Artikel über die schrittweise Vorwärtsoptimierung mit MQL, ohne Tools von Drittanbietern, in einer einzigen Instanz des Terminals:
Walk-Forward-Optimierung in MetaTrader 5 - mit Ihren eigenen Händen
Stanislav Korotky, 2017.06.08 15:03
Der Artikel beschreibt Ansätze, die es ermöglichen, die Walk-Forward-Optimierung mit Hilfe des eingebauten Testers und der in MQL implementierten Hilfsbibliotheken recht genau zu emulieren.Irgendwo in der Beschreibung von Metatrader-4 habe ich einen Satz gesehen, der besagt, dass MQL4 speziell dafür geschaffen wurde, dass jede Hausfrau ihre Strategie beschreiben und auf dem Terminal ausführen kann. Nicht jeder hier ist ein Software-Ingenieur.
Vielleicht wird MQ eines Tages kommen, um den Optimierungsprozess direkt im Tester zu automatisieren, aber im Moment müssen Enthusiasten Methoden mit Hilfe von Drittanbieter-Tools aus MQL konstruieren. Ich danke Ihnen, Andrey Azatskiy, für Ihre Bemühungen. Ich hoffe, dass es am Ende der Artikelserie eine kurze Anleitung zur Verwendung Ihrer Software für diejenigen geben wird, die nicht schnell verstehen können, was in diesem Artikel geschrieben wurde.
Ich habe vor, zwei weitere Artikel zu schreiben. Der zweite Artikel wird detailliert erklären, wie man diesen Vorwärtsoptimierer an einen beliebigen Roboter anschließt, für den man den Quellcode hat, und der letzte Artikel wird den Vorwärtsoptimierer selbst erklären und ein Videobeispiel zeigen, wie man ihn ausführt.
Es gab einen Artikel über die schrittweise Vorwärtsoptimierung mit MQL, ohne Tools von Drittanbietern, in einer einzigen Terminalinstanz:
Das ist möglich, aber die Tools von Drittanbietern haben auch ihre Vorteile. Sie werden später besprochen.
.....c durch Anbindung einer kostenpflichtigen Bibliothek. Ich glaube, sie läuft auf SQLite?
Es gibt keine Abhängigkeiten, nur MQL.
Dieser Artikel beschreibt im Detail 2 Möglichkeiten zur Durchführung von Walk-Forward-Analysen mit einem Standard-Tester, der in vereinfachter Form kostenlos implementiert werden kann. Die Bibliothek enthält nur einige nützliche Funktionen in fertiger Form, wie z.B. die Berechnung aller wichtigen Handelsindikatoren und die Erstellung von "genähten" HTML-Berichten.
Es gibt keine Abhängigkeiten, nur MQLs.
Dieser Artikel beschreibt im Detail 2 Möglichkeiten zur Durchführung von Walk-Forward-Analysen mit einem Standard-Tester, die Sie in vereinfachter Form selbst kostenlos implementieren können. Die Bibliothek enthält nur einige Nützlichkeiten in fertiger Form, wie z.B. die Berechnung aller wichtigen Handelsindikatoren und die Erstellung von "genähten" HTML-Berichten.
Was die Optimierung betrifft, so erinnere ich mich an einen Satz von Ostap Bender, der auf die Frage "Warum wurde bei der Tournee "Failure" die Bezahlung eingeführt" antwortete: "Damit man nicht zu oft scheitert".
So ist es auch mit der Optimierung, wenn die TK auf der Grundlage traditioneller Ansätze erstellt wird.
Das Modell (der Algorithmus) des Roboters sollte sich auf die elementare Struktur (und die Dynamik der Veränderungen ihrer Parameter) stützen und nicht auf die Messwerte der traditionellen Indikatoren.
Dann wird die Optimierung nicht zu einer endlosen, unverständlichen Selektion auf die Marktdynamik (und auf historische Daten), sondern zu einem bewussteren Prozess, bei dem die Anzahl der zu optimierenden Parameter um eine Größenordnung reduziert wird.
Die Anzahl der zu optimierenden Parameter wird um eine Größenordnung reduziert.
Auf diese Weise wird dieses Problem in der Theorie des Impulsgleichgewichts gelöst.
Was die Optimierung anbelangt, so erinnere ich mich an einen Satz von Ostap Bender, der auf die Frage "Und warum wurde bei der Tournee "Failure" die Zahlung eingeführt?" antwortete: "Damit man nicht wirklich scheitert".
So ist es mit der Optimierung, wenn die TK auf der Grundlage traditioneller Ansätze erstellt wird.
Das Modell (der Algorithmus) des Roboters sollte sich auf die elementare Struktur (und die Dynamik der Veränderungen ihrer Parameter) stützen, nicht auf die Messwerte der traditionellen Indikatoren.
Dann wird die Optimierung nicht zu einer endlosen, unverständlichen Selektion auf die Marktdynamik (und auf historische Daten), sondern zu einem bewussteren Prozess, bei dem die Menge der
der optimierten Parameter um eine Größenordnung reduziert wird.
Auf diese Weise wird dieses Problem in der Theorie des Impulsgleichgewichts gelöst.
Solch unverhohlene Werbung, insbesondere in mehreren Themen hintereinander, ist im Forum nicht erwünscht, aber es ist Ihre Sache.
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Neuer Artikel Kontinuierliche Walk-Forward-Optimierung (Teil 1): Arbeiten mit Optimierungsberichten :
Der erste Artikel beschäftigt sich mit der Erstellung eines Toolkits für die Arbeit mit Optimierungsberichten, für den Import aus dem Terminal sowie für die Filterung und Sortierung der erhaltenen Daten. MetaTrader 5 ermöglicht das Laden von Optimierungsergebnissen, unser Ziel ist es jedoch, dem Optimierungsbericht unsere eigenen Daten hinzuzufügen.
Dieser Teil beschäftigt sich mit der Erstellung eines Toolkits für die Arbeit mit den Optimierungsberichten, für den Import aus dem Terminal sowie für die Filterung und Sortierung der erhaltenen Daten. Um eine bessere Struktur der Präsentation zu gewährleisten, werden wir das Dateiformat *xml verwenden. Die Daten aus solch einer Datei können sowohl von Menschen als auch von Programmen gelesen werden. Darüber hinaus können die Daten innerhalb der Datei in Blöcken gruppiert werden und so schneller und einfacher auf die benötigten Informationen zugegriffen werden.
Unser Programm ist ein in C# geschriebener Prozess eines Drittanbieters und muss ähnlich wie MQL5-Programme erstellte *xml-Dokumente erstellen und lesen. Daher wird der Reporterstellungsblock als DLL implementiert, die sowohl in MQL5 als auch in C# Code verwendet werden kann. Um einen MQL5-Code zu entwickeln, benötigen wir also eine Bibliothek. Wir werden zuerst den Erstellungsprozess der Bibliothek beschreiben, während der nächste Artikel eine Beschreibung des MQL5-Codes enthält, der mit der erstellten Bibliothek arbeitet und Optimierungsparameter generiert. Diese Parameter werden wir im aktuellen Artikel besprechen.
Berichtsstruktur und erforderliche Kennzahlen
Wie bereits in den vorhergehenden Artikeln gezeigt, kann MetaTrader 5 den Bericht der Optimierungsdurchgänge selbstständig laden, jedoch bietet er nicht so viele Informationen wie der Bericht, der auf der Registerkarte Backtest nach Abschluss eines Tests mit einem bestimmten Satz von Parametern generiert wird. Um einen größeren Spielraum bei der Arbeit mit den Optimierungsdaten zu haben, sollte der Bericht viele der auf dieser Registerkarte angezeigten Daten enthalten, sowie die Möglichkeit bieten, dem Bericht weitere benutzerdefinierte Daten hinzuzufügen. Für diese Zwecke werden wir unsere eigenen generierten Berichte anstelle des Standardberichts laden. Beginnen wir mit der Definition von drei Datentypen, die für unser Programm benötigt werden:
Autor: Andrey Azatskiy