Diskussion zum Artikel "Die praktische Verwendung eines neuronalen Kohonen-Netzes im algorithmischen Handel. Teil I: Werkzeuge"

 

Neuer Artikel Die praktische Verwendung eines neuronalen Kohonen-Netzes im algorithmischen Handel. Teil I: Werkzeuge :

Der vorliegende Artikel entwickelt die Idee, die Kohonen-Netzen in MetaTrader 5 zu Verwenden, was aber auch in einigen früheren Publikationen behandelt wurde. Die verbesserten und erweiterten Klassen bieten Werkzeuge zur Lösung von Anwendungsaufgaben.

In vererbten Quellcodes wird keine Normalisierung der Eingangsdaten verwendet. Dies ist jedoch sehr wichtig, wenn verschiedene Komponenten (Merkmale) von Eingangsvektoren unterschiedliche Wertebereiche haben. Und das ist der Fall bei den Optimierungsergebnissen der EAs und bei der Zusammenführung der Daten verschiedener Indikatoren. Was die Optimierungsergebnisse betrifft, so können wir dort sehen, dass die Werte mit den Gesamtprofiten von Dutzenden von Tausenden von Menschen mit kleinen Werten, wie z.B. den Bruchteilen der Sharp Ratio oder den einstelligen Werten des Restitutionsfaktors, zusammenpassen.

Sie sollten ein Kohonen-Netzwerk nicht mit solch unterschiedlichen Daten trainieren, da das Netzwerk praktisch nur die größeren Komponenten berücksichtigen und die kleineren ignorieren würde. Sie können dies in der folgenden Abbildung sehen, die mit dem Programm erhalten wurde, das wir in diesem Artikel schrittweise betrachten und am Ende anhängen werden. Das Programm ermöglicht das Erzeugen von zufälligen Eingangsvektoren, bei denen drei Komponenten in den Bereichen[0, 1000],[0, 1] und[-1, +1] definiert sind. Eine speziellee Eingabeparameter, UseNormalization, ermöglicht das Aktivieren/Deaktivieren der Normalisierung.

Lassen Sie uns einen Blick auf die endgültige Struktur des Kohonen-Netzwerks in drei Schichten werfen, die für die drei Dimensionen der Vektoren relevant sind. Erstens, das Netzwerk-Lernergebnis ohne Normalisierung.

Kohonen Netzwerk-Lernergebnis ohne Normalisierung der Eingänge

Kohonen Netzwerk-Lernergebnis ohne Normalisierung der Eingänge

Jetzt - mit der Normalisierung.

Kohonen Netzwerk-Lernergebnis mit einer Normalisierung der Eingänge

Kohonen Netzwerk-Lernergebnis mit einer Normalisierung der Eingänge

Autor: Stanislav Korotky

 
In Zukunft werden wir CSOMDisplay für die Aufgabe der Auswahl der optimalen Parameter des Experten und CSOM für die Vorhersage verwenden.

Leider habe ich das Thema völlig vergessen. Die Lektüre der Artikel auf den Links hat mir kein Verständnis gebracht.


Nehmen wir an, es gibt drei Eingangsparameter, die optimiert wurden. Kohonen hat das Clustering durchgeführt und visualisiert. Wie kann man die optimalen Parameter finden?

Ich verstehe überhaupt nichts von Prognosen. Wenn möglich, auch eine Idee in Kurzform.

 

In Zukunft würde ich gerne ein solches praktisches Beispiel sehen.


Wir führen einige zusätzliche Eingabeparameter in den Expert Advisor ein. Und seine Abhängigkeit von anderen bewerten.

 

Ich interessiere mich mehr für den praktischen Teil der Verwendung von Clustering in Forex, abgesehen von der Erstellung von Korrelationstabellen und anderen Dingen. Außerdem verstehe ich das Problem der Stabilität von Karten bei neuen Daten nicht, wie kann man die Generalisierungsfähigkeit einschätzen und wie stark werden sie umtrainiert?

Zumindest in der Theorie, um zu verstehen, wie dies effektiv genutzt werden kann. Das einzige, was mir einfällt, ist die Unterteilung einer Zeitreihe in mehrere "Zustände".

 
fxsaber:

Nehmen wir an, es gibt drei Eingabeparameter, die optimiert wurden. Kohonen hat das Clustering und die Visualisierung durchgeführt. Wie kann man die optimalen Parameter finden?

Ich verstehe überhaupt nichts von Prognosen. Wenn möglich, fassen Sie die Idee kurz zusammen.

Normalerweise bietet die Optimierung eine große Auswahl an Optionen und liefert keine Schätzungen über deren Stabilität. Der zweite Artikel versucht, diese Probleme teils visuell, teils algorithmisch mit Hilfe von Kohonen-Karten zu lösen. Der Artikel wurde zur Überprüfung eingesandt.

 
fxsaber:

Wir führen einige zusätzliche Eingabeparameter in den Expert Advisor ein. Und bewerten seine Abhängigkeit von anderen.

Kohonen ermöglicht es uns, dies visuell zu tun - in Form einer Karte. Wenn wir über eine einzelne Ziffer sprechen, dann ist das für andere Methoden.

 
Maxim Dmitrievsky:

Ich interessiere mich mehr für den praktischen Teil der Verwendung von Clustering in Forex, abgesehen von der Erstellung von Korrelationstabellen und anderen Dingen. Außerdem verstehe ich die Frage der Stabilität von Karten bei neuen Daten nicht, wie kann man die Generalisierungsfähigkeit einschätzen und wie stark werden sie umtrainiert?

Zumindest in der Theorie, um zu verstehen, wie dies effektiv genutzt werden kann. Das Einzige, was mir einfällt, ist die Aufteilung der Zeitreihe in mehrere "Zustände".

Vielleicht wird Teil 2 einige Antworten liefern. Wenn das Gesetz der Datenverteilung beibehalten wird, sollte Stabilität gegeben sein. Um die Verallgemeinerbarkeit zu kontrollieren, wird vorgeschlagen, die Kartengröße und/oder die Trainingsdauer anhand von Validierungsstichproben zu wählen.

Einige Beispiele für Anwendungsfälle finden Sie im zweiten Teil.

 
Stanislav Korotky:

Vielleicht wird der zweite Teil einige Antworten liefern. Wenn das Gesetz der Datenverteilung beibehalten wird, sollte Stabilität gegeben sein. Um die Verallgemeinerbarkeit zu kontrollieren, wird vorgeschlagen, die Kartengröße und/oder die Trainingsdauer anhand von Validierungsstichproben zu wählen.

Einige Beispiele für Anwendungsfälle finden Sie im zweiten Teil.

Ja, tut mir leid, ich habe nicht gesehen, dass es bereits eine Methode zum Stoppen durch Validierungsstichproben gibt. Dann lassen Sie uns auf Beispiele warten, interessant :)

 
Klarstellung/Ergänzung: Die auf MQL5 portierte Version von ALGLIB bietet bereits agglomeratives hierarchisches Clustering - siehe ClusterizerRunAHC in der Datei MQL5/Include/Math/Alglib/dataanalysis.mqh.