Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 18

 

Nur ein paar Ideen:

Ich habe versucht, ein solches System rein in MQL4 zu erstellen:

einen Vektor von Inputs gebildet (nur die Differenz zwischen den Preisen mit einer Verzögerung)

ideale Ein- und Ausgänge bilden (es gibt viele Methoden, ich habe diejenige gewählt, die mir am besten gefallen hat).

All dies für 5-Minuten-Balken zum Beispiel.

Dann füllte ich das Array bei jedem neuen Balken auf und versuchte auch, ähnliche Muster aus der Vergangenheit zu finden und den Prozentsatz der Einträge für Kauf und Verkauf in einer mehrdimensionalen Kugel mit variablem Radius zu berechnen. Diese Sache wurde lange Zeit getestet. Die Ergebnisse waren unbeständig.

Ich möchte es irgendwann noch einmal in R versuchen. Das heißt, es handelt sich um eine Suche nach Ein- und Ausgängen nach euklidischem Abstand.

 
mytarmailS:

Nun, sagen wir, der Markt entspricht dem Cluster № 5, die nächste Kerze wird der Cluster № 18 sein und sie wird uns nichts bringen, weil wir keine Zeit haben werden, den Cluster № 5 zu handeln, und im SMM gibt es ein Konzept des Zustands, der Zustand kann eine bestimmte Zeit dauern

Oder vielleicht verstehe ich Ihren Gedanken nicht?

Cluster sind lange Reihenfolgen (sogar 100 Kerzen). Auf der Grundlage dieser langen Sequenzen können Sie eine Reihe von Eingaben machen. Und irgendwann geht das System von Cluster 5 zu Cluster 45 über, aber das geschieht sozusagen fließend.
 
Alexey Burnakov:

Nur ein paar Ideen:

Ich habe versucht, ein solches System rein in MQL4 zu erstellen:

einen Vektor von Inputs gebildet (nur die Differenz zwischen den Preisen mit einer Verzögerung)

ideale Ein- und Ausgänge bilden (es gibt viele Methoden, ich habe diejenige gewählt, die mir am besten gefallen hat).

All dies für 5-Minuten-Balken zum Beispiel.

Dann füllte ich das Array bei jedem neuen Balken auf und versuchte auch, ähnliche Muster aus der Vergangenheit zu finden und den Prozentsatz der Einträge für Kauf und Verkauf in einer mehrdimensionalen Kugel mit variablem Radius zu berechnen. Diese Sache wurde lange Zeit getestet. Die Ergebnisse waren unbeständig.

Ich möchte es irgendwann noch einmal in R versuchen. Das heißt, die Suche nach Ein- und Ausfahrt über die euklidische Distanz.

Ich habe auch die ähnliche Sache, auch die Nähe durch Euklid und Pearson-Korrelation gesucht, sollte Euklid weniger als 0,27 und Korrelation mehr als 0 sein.97, d.h. die Muster waren fast eins-zu-eins, Ähnlichkeiten wurden in den Serien mit drei Kerzen für alle 4 Preise OHLC + Volumen + Volatilität gesucht, die Preise sind normal, nur skaliert und zentriert (Skala, Mitte), was, wie ich schon schrieb, der Preis geht gegen meine eigenen Vorhersagen mit inverser Korrelation -0,6-0,9, ich fürchte, dass auch die Kreuzvalidierung hier nicht helfen wird, zumindest im euklidischen Raum, vielleicht ist das die Antwort, warum 99% der Trader ihr Geld verlieren
 
Alexey Burnakov:
Clustering von langen Reihenfolgen (sogar 100 Kerzenständer). Auf der Grundlage dieser langen Sequenzen lassen sich viele Eingaben machen. Irgendwann geht das System von Cluster 5 zu Cluster 45 über, aber das geschieht sozusagen langsam.
Die Sache ist die, wenn wir Cluster 5 auf der Sequenz von 100 Candlesticks machen, wissen wir, dass es Cluster 5 auf 101 Candlesticks von Cluster 5 ist, d.h. wir haben 100 Candlesticks verloren) Und da wir in SMM auf Cluster #45 sind, wissen wir bereits, dass wir wahrscheinlich zu Cluster #5 gehen werden.
 

Und noch eine Frage an die R

bibliothek(kza)

DAT <- rnorm(1000)

KZP <- kzp(DAT,m=100,k=3)

summary(KZP ,digits=2,top=3)


Wie kann ich sie aus der "Zusammenfassung" http://prntscr.com/bhtlo9 herausholen, damit wir mit diesen Ziffern arbeiten können?

Скриншот
Скриншот
  • prnt.sc
Снято с помощью Lightshot
 
Dr.Trader:


Ich habe versucht, den Artikel auf p-bloggers zu lesen, aber da ich kein Englisch kann, verstehe ich nichts. Können Sie in einfacher Sprache erklären, was das Wesentliche dieser Auswahlmethode ist, wie sie funktioniert?

Rein intuitiv und basierend auf ersten Testergebnissen vermute ich, dass diese Methode der Methode der Hauptkomponenten sehr ähnlich ist, vielleicht sogar dieselbe ...

Erster Test, ich hatte eine Stichprobe von 30 Prädiktoren, ich trainierte RF-Fehler, ich bekam Genauigkeit: 0.6511

dann habe ich sie mit Ihrer Methode ausgewählt

wir haben 14 Prädiktoren, der Fehler war Genauigkeit: 0.6568

Tatsächlich haben wir die Hälfte der Prädiktoren eliminiert und das Vorhersageergebnis ein wenig verbessert, was nicht schlecht ist

Ich werde andere Datensätze ausprobieren.....

Eine weitere Frage: Warum erhalte ich einen Fehler von 3-6 % bei den Validierungsdaten, wenn ich die gleichen Daten in Rattle lade?

 
mytarmailS:
Wenn wir eine Gruppe von 100 Kerzen bilden, wissen wir, dass es sich um die Gruppe Nr. 5 mit 101 Kerzen der Gruppe Nr. 5 handelt, d. h. wir haben 100 Kerzen geblasen.) Und in SMM, das sich auf Cluster #45 befindet, wissen wir bereits, dass wir wahrscheinlich zu Cluster #5 gehen werden.
Wir haben nichts verloren. Bei der ersten Messung wird der Cluster ermittelt, danach gibt es eine Reihe von Änderungen der Cluster. An den Punkten der Übergänge von Cluster zu Cluster können wir eine quadratische Matrix erstellen und den Handelsmodus ändern: Kauf auf Cluster n, Abschluss auf Cluster m. Dann die gleiche Matrix für den Verkauf. Alle Varianten sind gerade im Gange. Wir können die Parameter für das Clustering variieren und das Ergebnis in der Schleife betrachten.
 
mytarmailS:

Ich habe versucht, den Artikel auf p-bloggers zu lesen, aber da ich kein Englisch kann, verstehe ich nichts. Können Sie in einfacher Sprache erklären, was das Wesentliche dieser Auswahlmethode ist, wie sie funktioniert?

Rein intuitiv und basierend auf ersten Testergebnissen vermute ich, dass diese Methode der Methode der Hauptkomponenten sehr ähnlich ist, vielleicht sogar dieselbe ...

Erster Test, ich hatte eine Stichprobe von 30 Prädiktoren, ich trainierte RF-Fehler, ich bekam Genauigkeit: 0.6511

dann habe ich sie mit Ihrer Methode ausgewählt

wir haben 14 Prädiktoren, der Fehler war Genauigkeit: 0.6568

Tatsächlich haben wir die Hälfte der Prädiktoren eliminiert und das Vorhersageergebnis ein wenig verbessert, was nicht schlecht ist

Ich werde andere Datensätze ausprobieren.....

Eine weitere Frage: Warum beträgt der Fehler bei der Validierung von Daten 3-6 %, wenn wir dieselben Daten in Rattle verwenden, und woher weiß ich das?

1. Es wird die Hauptkomponentenmethode mit einigen Modifikationen verwendet.

2. Der Hauptgedanke bei der Anwendung dieser Methode ist nicht die Verbesserung der Vorhersagegenauigkeit. Der Grundgedanke ist, dass die erzielte Vorhersagegenauigkeit auch in Zukunft annähernd gleich bleiben würde. In der Praxis, und das wissen wir von den Testern, können wir durch Optimierung fast immer erstaunliche Daten von Expert Advisors erhalten. Doch mit der langweiligen Monotonie in der Zukunft leeren diese Griffe das Depot. Dies geschieht, weil der Expert Advisor während des Trainings einige Besonderheiten lernt, die sich in der Zukunft nicht wiederholen werden. Prädiktoren, die nichts mit der Zielvariablen zu tun haben, d. h. Rauschen, sind als solche Singularitäten besonders nützlich. Bei der Optimierung oder Anpassung des Modells an R ist es immer möglich, aus diesem Rauschen einige Werte zu extrahieren, die die Leistung radikal verbessern können. Aber das wird in Zukunft nicht mehr passieren und der Expert Advisor wird scheitern.

Noch einmal: Sie verwenden ein Werkzeug, mit dem Sie die Unterschiede in der Modellleistung bei der Trainingsstichprobe und bei den zukünftigen Kursen beseitigen können. Meiner Meinung nach können wir nur dann weiterkommen, wenn wir das Problem der Umschulung lösen.

3. Ein Fehler von weniger als 10 % und mehr als 5 % ist ein starkes Indiz dafür, dass das Modell neu trainiert wird. Und das Übertraining des Modells wird durch die Menge der Eingabeprädiktoren verursacht, nicht durch das Modell selbst.

 
SanSanych Fomenko:


3. Ein Fehler von weniger als 10 %, geschweige denn 5 %, ist ein klarer Beweis dafür, dass das Modell übertrainiert ist. Und die Überanpassung des Modells ist auf die Menge der Eingabeprädiktoren zurückzuführen, nicht auf das Modell selbst.

Die Frage ist nicht, warum es unterschiedliche Ergebnisse in R und Rattle bei denselben Daten und demselben Modell gibt

Zweite Frage: Welchen Sinn hat es, ein Modell, das nicht in der Stichprobe ist, auf Rattle zu prüfen, wenn es die Hölle zeigt?

 
mytarmailS:

Die Frage ist nicht, warum es unterschiedliche Ergebnisse in R und Rattle bei denselben Daten und demselben Modell gibt

Zweite Frage: Welchen Sinn hat es, das Modell "out of sample" auf rattle zu überprüfen, wenn es die Hölle zeigt?

Wahrscheinlich haben Sie unterschiedliche Gerüstparameter in r und rattle, daher die unterschiedlichen Ergebnisse. In Rattle selbst können Sie auch die Anzahl der Bäume und Variablen ändern.

Und Ihr Rattle hat 34% Fehler bei den Trainingsdaten und 3% Fehler bei den Validierungsdaten? Irgendetwas stimmt mit den Validierungsdaten nicht, entweder waren sie bereits in den Trainingsdaten vorhanden, oder Sie haben einen sehr kleinen Datensatz und es ist einfach so passiert.