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

 
mytarmailS:

Die Idee ist, die Merkmale zu ändern, das Modell zu trainieren und zu sehen, was mit den neuen Daten passiert.


Wie arbeiten wir mit gewöhnlichen Modellen? Wir geben einfach x1,x2,x3,....x20 ein und das war's dann.


Was ich im letzten Skript gemacht habe, ist, dass - 0,82

Ich habe alle 31 Indikatoren als Prädiktoren verwendet.

dann nahm ich ihre Vorhersagen als Prädiktoren zweiter Ordnung, dann nahm ich Vorhersagen aus den Vorhersagen und so weiter 11 Mal, bis der Fehler fiel, ich bekam 0,82 statt 0,7


Ich weiß nicht, was ich falsch gemacht habe ((

Die Idee ist absolut richtig und erlaubt es, im Wesentlichen Prädiktoren zu erzeugen, aber es gibt zwei Feinheiten:

1. Reproduzierbarkeit der Ergebnisse - wir müssen eine Art zusätzliche Konvertierung vornehmen - was erhalten wir nach der Verarbeitung - eine neue Tabelle?

2. Es ist notwendig, Regelmäßigkeiten in der Stichprobenzeit zu überprüfen - dass die korrekte Klassifizierung an verschiedenen Standorten erfolgen würde und dies in keinem mir bekannten Trainingsmodell realisiert wird, ist sehr schlecht.

Da der Großteil meiner Prädiktoren kategorisch ist, möchte ich versuchen, Prädiktoren zu erzeugen, indem ich Bereiche statistisch signifikanter Prädiktoren durch && pre-joining kombiniere.

Handelt es sich bei dem Fehler um eine zuvor unbekannte Probe oder um eine Testprobe? Vielleicht hat das Skript bei der Erstellung neuer Regeln die Messwerte des Testmusters berücksichtigt?

Es ist schon eine Weile her, was ist das Fazit - funktioniert die Methode oder nicht?

 
mytarmailS:

beschlossen, zu sehen, wie typische Daten für die Ausbildung NS in 3d aussehen würde ))

Daten 31 Indikatoren sind, ist das Ziel ein Zickzack

Ich habe die Dimensionalität mit drei Algorithmen auf drei Dimensionen reduziert - pca, t-sne, umap (die letzten beiden gelten als die fortschrittlichsten)


Was ist das überhaupt -https://en.wikipedia.org/wiki/Dimensionality_reduction

how it can help -https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%BA%D0%BB%D1%8F%D1%82%D0%B8%D0%B5_%D1%80%D0%B0%D0%B7%D0%BC%D0%B5%D1%80%D0%BD%D0%BE%D1%81%D1%82%D0%B8


Also Daten 31 Indikator Ziel Zickzack , zuerst haben wir PCA

Können Sie das Skript veröffentlichen, damit auch Dummköpfe wie ich so schöne Bilder auf ihren Mustern sehen können?

 
mytarmailS:

Ich hatte die Idee, einen Thread zu erstellen, um über Zielfunktionen zu diskutieren, und zwar nicht einmal eine Diskussion, sondern vielmehr eine Datenbank mit verschiedenen Arten von Zielfunktionen und Statistiken darüber, was funktioniert und was überhaupt nicht funktioniert.

Glauben Sie, dass es jemand braucht?

Die Idee ist gut, aber zusätzlich zu den Ideen wäre es nützlich, einen Code in MQL offen zu haben - das Ergebnis wäre eine Bibliothek.

Wenn schon kein Code, dann doch wenigstens ein Wortalgorithmus für die Reproduktion.


1. Vorhersage des Tageshöchstpreises anhand von Intraday-Daten (Regression)

Durch interne Daten der vorangegangenen Tage oder während des Tages - wenn letzteres, dann wird der Fehler am Ende des Tages einfach abnehmen.

Zu einem bestimmten Zeitpunkt wird die Stichprobe klein sein.


2. bei welcher Aufschlüsselung des Niveaus es zu einer Übervolatilität kommt (Regression + Klassifizierung)

Ich weiß nicht einmal, was Super-Volatilität ist, aber ich denke, es geht nur um den Trend oder nicht?

Wenn es viele Ebenen gibt, gibt es auch viele Klassen, was einen viel höheren Fehler als bei der binären Klassifizierung bedeutet.

Die einzige Möglichkeit, dies zu tun, besteht darin, für jede Stufe ein anderes Modell zu verwenden...


2. die Vorhersage der Stunde der täglichen Umkehrunganhand von Intraday-Daten(Klassifizierung).

Es ist im Wesentlichen dasselbe wie bei der Vorhersage des Höchstpreises - dieselben Probleme.


3. wenn die erste Kerze schwarz war, wird die dritte Kerze weiß sein? (Klassifizierung)

Es sollte sehr einfach sein - wir können es versuchen.


4. Markieren Sie Unterstützungs- und Widerstandsniveaus und sagen Sie das Niveau voraus, von dem aus ein Sprung/Durchbruch erfolgen wird (Klassifizierung).

Dieselben Probleme wie im zweiten Satz.


5. den optimalen Zeitraum für den Indikator zu einem bestimmten Zeitpunkt vorherzusagen (Regression).

Das ist natürlich interessant, da es den Zweck des Indikators auf den Kopf stellt.

 
Aleksey Vyazmikin:

Es ist schon lange her, was ist das Ergebnis - funktioniert die Methode oder nicht?

Ja, ich habe es selbst nicht verstanden, ich denke schon, versuchen Sie, etwas Ähnliches zu stümpern


Es gibt die Zeichen x1,x2,x3 und das Ziel "Y".

eine Vorhersage zu den Attributen treffen

"Y_x1[i+1]" ~ x1+x2+x3

"U_x2[i+1]" ~ x1+x2+x3

"U_x3[i+1]" ~ x1+x2+x3

und fügen Sie dem Modell

x1,x2,x3"U_x1" + "U_x2"+ "U_x2" und das Ziel "U"

jetzt gibt es 6 Zeichen.


Aleksey Vyazmikin:

Können Sie das Skript posten, damit sich Dummköpfe wie ich solche schönen Bilder auf ihren Mustern ansehen können?

Ich habe es bereits gelöscht, es macht Spaß, es sich vorzustellen, sich zu verwöhnen... aber ich weiß nicht, ob Sie es überhaupt brauchen... Wenn Sie es brauchen, kann ich es wieder schreiben, oder?


Aleksey Vyazmikin:

Die Idee ist gut, aber zusätzlich zu den Ideen wäre es nützlich, einen Code in MQL offen zu haben - das Ergebnis wäre eine Bibliothek.

Wenn schon kein Code, dann doch wenigstens ein Wortalgorithmus für die Reproduktion.

Wenn ich zeigen wollte, dass es Millionen von Möglichkeiten gibt, Vorhersagen zu treffen, würde ich mich mit einer begnügen - entweder mit dem Binärsystem (auf/ab) oder mit Inkrementen, und das war's! Sie funktionieren beide nicht, aber sie haben es alle satt!)

 
mytarmailS:

Ich habe es selbst nicht verstanden, ich denke schon, versuchen Sie, etwas Ähnliches bei Ihnen zu backen.


es gibt die Zeichen x1,x2,x3 und das Ziel "Y"

eine Vorhersage zu den Zeichen treffen

"Y_x1[i+1]" ~ x1+x2+x3

"U_x2[i+1]" ~ x1+x2+x3

"U_x3[i+1]" ~ x1+x2+x3

und fügen Sie dem Modell

x1,x2,x3"U_x1" + "U_x2"+ "U_x2" und das Ziel "U"

Wir haben jetzt sechs Funktionen.

Ja, ich werde meine Methode ausprobieren, aber es sieht so aus, als würde das alles sehr langsam gehen - es gibt viele Kombinationen.

Wie viel davon wird in R durchgeführt, mit wie viel Stichproben?

mytarmailS:

Ich habe es bereits gelöscht, es macht Spaß, es sich vorzustellen, nur zum Spaß... aber ich weiß nicht, ob ich es überhaupt brauche... Wenn Sie es wirklich brauchen, kann ich es wieder schreiben, oder?

Es wäre interessant zu sehen - schreiben Sie einfach mehr, was und wie die Bibliothek zu setzen, bitte. Und weitere Kommentare im Drehbuch. Anpassbare Trennzeichen und Auswahl von Spalten mit Ziel, auch Ausnahmespalten :)

Übrigens, Sie können verschiedene Spaltengruppen im Zyklus abwählen und sehen, wie sich diese visuellen Modelle verändern, dann sollte das Speichern von Bildern realisiert werden...

mytarmailS:

Ja, ich schrieb all diese Optionen, nur um zu zeigen, dass es Millionen von Möglichkeiten, um vorherzusagen, und dann alle auf eine oder binäre (up / down) oder Inkremente stecken, und das ist es !!! Ich bin krank von ihm ... Keines von beiden funktioniert, aber alle haben sie satt)

Millionen von ihnen...

Versuchen Sie meine Methode - 1 oder -1 - gegenüber dem Vektor ZZ Kanal Doncian hat den Vektorwechselpunkt überschritten. Geben Sie auf Vektor-Änderung, Schleppnetz auf dem gegenüberliegenden Kanal und 0 - nicht in den Markt - flach. Bei 40 % Klassifizierungsgenauigkeit von 1 und -1 wird ein Gewinn erzielt.

Von einfach möchte ich ein primitives Ziel mit der Markierung der korrekten Eingabe mit 1k3 Risiko in Pips oder jede gegebene implementieren - das Ensemble mit unterschiedlichen Risiko kann gute Ergebnisse in der Summe geben, aber es ist theoretisch.

Und so muss man natürlich über verschiedene Ziele nachdenken.

 
Aleksey Vyazmikin:

Ja, ich werde meine Methode ausprobieren, aber es scheint immer noch so, als wäre das alles sehr langsam zu machen - viele Kombinationen.

Wie viel davon wird in R gemacht, mit wie viel Stichproben?

Mit Vektorisierung ist es sehr schnell, aber als ich einen Checker geschrieben habe, um es um einen Takt zu zählen, ist es langsamer, aber immer noch sehr akzeptabel.

Aleksey Vyazmikin:

Es wäre interessant zu sehen - schreiben Sie bitte einfach auf, was und wie man Bibliotheken verwendet. Und weitere Kommentare im Drehbuch. Anpassbare Trennzeichen und Auswahl von Spalten mit Ziel, auch Ausnahmespalten :)

Schicken Sie mir eine Datei mit Ihren Attributen und dem Ziel, in dem Format, in dem Sie die p-Datei einfügen werden, und ich werde versuchen, sie so zu gestalten, dass sie sofort funktioniert.

Keine große Datei, bitte 1000 Zeilen für die Augen

Denken Sie einfach daran, dies ist nur ein Spielzeug, nur für die Visualisierung, wenn Sie das Modell / Zeichen überprüfen wollen, ist es 10000% besser, dummerweise den Fehler auf den Test zu sehen)
 
mytarmailS:

Mit Vektorisierung ist es sehr schnell, aber als ich einen Checker geschrieben habe, um einen Takt nach dem anderen zu zählen, ist es langsamer, aber immer noch sehr akzeptabel.

Hm, interessant - wenn Sie glauben, dass Sie das können, lassen Sie das Skript fallen, es könnte wirklich nützlich sein. Jetzt mache ich einen sehr großen Pool neuer Prädiktoren und muss irgendwie nach einer Verbindung zwischen ihnen suchen - Synergie, vielleicht müssen die meisten von ihnen weggeworfen werden...

mytarmailS:

Ok. Schicken Sie mir die Datei mit Ihren Eigenschaften und dem Ziel, in dem Format, in dem Sie die p-Datei einwerfen werden, ich werde versuchen, dass es ohne Probleme funktioniert

Nur keine große Datei, bitte. 1.000 Zeilen reichen aus.

Die Sache ist die, dass sich Formate ändern können - seien Sie also nicht geizig mit Kommentaren :)

Eine Variante des häufiger verwendeten, beigefügten.

Dateien:
 
mytarmailS:

Zeit oder ignorieren Sie sie?

Ignorieren Sie sie, ebenso wie die letzten Spalten mit dem finanziellen Ergebnis. Das Timing liegt in den Prädiktoren.

 
Aleksey Vyazmikin:

Ignorieren, ebenso wie die letzten Spalten mit dem finanziellen Ergebnis. Das Timing liegt in den Prädiktoren.

Ja, ja, ich habe es schon gesehen)

 

Was das Ziel anbelangt, so sollte es meiner Meinung nach geändert werden, wenn es keine Möglichkeit gibt, die Eingabedaten zu ändern, wie ich in dem Video sagte. Wenn die Daten gesammelt wurden und nicht mehr geändert werden können. Andernfalls, wenn Sie eine Vielzahl von Eingabevariablen haben, sollten Sie das Standardziel nehmen und sich mit den Eingabedaten befassen.

Vergessen Sie nicht, dass, wenn die Zielvorgabe absichtlich Fehler enthält und die Lernkurve dadurch verbessert wird, das Modell entsprechend der Zielvorgabe auch Fehler machen wird. IMHO