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

 
elibrarius:
Wie lauten die Daten?

Jede Minute werden Käufe mit SLs und TPs von 100 bis 2500 in Schritten von 100 auf einer 5-stelligen Basis eröffnet. Das heißt, dass jede Minute 625 Käufe geöffnet werden. Alles zum Preis der ersten Minute.

Nach der Dekodierung sollte es wie folgt aussehen:

Nein, Einstiegspreis (*10^5), Unix-Zeit, Jahr, Monat, Tag, Minute, Sekunde, Wochentag, Tag des Jahres, ... , alles das gleiche für den Ausgang, ... , SL in PP, SL in Preisen, TP in PP, TP in Preisen, Handelsergebnis.

Die Wälder sollten sich damit abfinden. Interessant ist auch die Aufteilung in Cluster.

 
Rorschach:

Jede Minute werden Käufe mit einem SL und TP von 100 bis 2500 in Schritten von 100 auf einer 5-stelligen Basis eröffnet. Das heißt, dass jede Minute 625 Käufe geöffnet werden. Alles zum Preis der ersten Minute.

Nach der Dekodierung sollte es wie folgt aussehen:

Nein, Einstiegspreis (*10^5), Unix-Zeit, Jahr, Monat, Tag, Minute, Sekunde, Wochentag, Tag des Jahres, ... , alles das gleiche für den Ausgang, ... , SL in PP, SL in Preisen, TP in PP, TP in Preisen, Handelsergebnis.

Die Wälder sollten sich damit abfinden. Auch die Aufteilung in Cluster ist interessant.

Das Gleiche habe ich mit TP\CL gemacht.
Ich habe bei mir keine 10er-Schritte gemacht, sondern 100, 200, 300, 500, 700, 1000, 2000 - wenn man das anwendet, erhält man 49 verschiedene Kombinationen pro Minute, was fast 13 Mal weniger Daten sind.
Ich glaube nicht, dass bei hohen TP/SCL eine feine Abstufung erforderlich ist, 2400 und 2500 werden sich leicht unterscheiden, und die Ressourceneinsparung beträgt das 13-fache.
Außerdem habe ich für jede Kombination von CPOLs separate Durchläufe gemacht, anstatt alle auf einmal in einer Datei.
Durch die Gleichsetzung von TP/SL können Sie die Rentabilität des Systems sofort beurteilen. Zum Beispiel, bei TP = 50. Ich erhalte 53-55 % der erfolgreichen Abschlüsse. Im Testgerät.

Seit März, als die Volatilität zunahm, ist es nicht mehr möglich, TP=SL=50 zu verwenden, während dies viele Jahre lang eine gültige Kombination war. Vor März konnten 50 Punkte in 10-20 Minuten gewonnen werden, während es im März 1-2-5 Minuten dauerte.
Jetzt möchte ich nur noch nach Einstiegspunkten suchen und die Ergebnisse mit meinem Tester im laufenden Betrieb schätzen. Ich denke, dass es universeller für jede Volatilität sein wird.

Versuchen Sie, eine Kombination von z. B. TP=SL=100 zu nehmen und das Modell zu trainieren. Ich denke, Sie sollten genug Energie dafür haben. Wenn sie bei OOS höher als 55 % ist, dann sind Ihre Daten besser als meine. Und es ist noch besser, nicht mit OOS zu prüfen (weil es vielleicht nur Glück ist), sondern mit Kreuzvalidierung - das ist zuverlässiger.
 
elibrarius:
Ich habe das Gleiche mit TP/SCL gemacht.
Ich habe bei mir keinen 10-Punkt-Schritt gemacht, sondern ein Raster von 100, 200, 300, 500, 700, 1000, 2000 - wenn man das anwendet, erhält man 49 verschiedene Kombinationen pro Minute, das sind fast 13 Mal weniger Daten.
Ich glaube nicht, dass bei hohen TP/SCL eine feine Abstufung erforderlich ist, 2400 und 2500 werden sich leicht unterscheiden, und die Ressourceneinsparung beträgt das 13-fache.
Außerdem habe ich für jede Kombination von CPOLs separate Durchläufe gemacht, anstatt alle auf einmal in einer Datei.
Durch die Gleichsetzung von TP/SL können Sie die Rentabilität des Systems sofort beurteilen. Zum Beispiel, bei TP = 50. Ich erhalte 53-55 % der erfolgreichen Abschlüsse. Im Testgerät.

Seit März, als die Volatilität zunahm, ist es nicht mehr möglich, TP=SL=50 zu verwenden, während dies viele Jahre lang eine gültige Kombination war. Vor März konnten 50 Punkte in 10-20 Minuten gewonnen werden, während es im März 1-2-5 Minuten dauerte.
Jetzt möchte ich nur noch nach Einstiegspunkten suchen und die Ergebnisse mit meinem Tester im laufenden Betrieb schätzen. Ich denke, dass es universeller für jede Volatilität sein wird.

Versuchen Sie, eine Kombination von z. B. TP=SL=100 zu nehmen und das Modell zu trainieren. Ich denke, Sie sollten genug Energie dafür haben. Wenn sie bei OOS höher als 55 % ist, dann sind Ihre Daten besser als meine. Und es ist noch besser, nicht anhand von OOS zu prüfen (da es vielleicht nur Glück ist), sondern durch Kreuzvalidierung - das ist zuverlässiger.

Wahrscheinlich werden Sie Ihre Daten ausdünnen müssen

 
Rorschach:

Wahrscheinlich müssen Sie Ihre Daten ausdünnen

Wenn Sie ein Training mit TP/CL=50 oder 100 durchführen und das Ergebnis auf die Kreuzvalidierung schreiben, frage ich mich, ob Sie mehr als 55% erhalten werden.
 
elibrarius:
Wenn Sie das Training mit SP/SL=50 oder 100 durchführen und das Ergebnis auf Kreuzvalidierung schreiben, frage ich mich, ob Sie mehr als 55% erhalten.

Ich habe 10 Jahre lang ein System im Tester betrieben, das einmal am Tag einen Kauf mit unterschiedlichen SL/TP-Verhältnissen eröffnete. Von denjenigen, die überlebten, gab es keine Systeme mit demselben SL und TP, die meisten hatten TP<SL. Sie können es selbst durchführen.

Ich habe auch eine Emulation durchgeführt, die gezeigt hat, dass ein System mit einem SL<SL schneller in die schwarzen Zahlen kommt.

 
mytarmailS:

Hast du wieder am Netzwerk herumgepfuscht?)

Endlich habe ich den Fehler im Testgerät gefunden. Jetzt fügt sich alles zusammen.

Höchstwahrscheinlich hat er den gleichen Fehler bei seinem Tester gemacht.

das Thema geschlossen ) in Eile, Lamba wird verschoben

 
Rorschach:

Ich habe die Daten, jetzt weiß ich nicht, wie ich sie verarbeiten soll, ich habe nicht so viel Power((((

Im Moment ist es eine csv-Datei mit einer Spalte von Indizes, die ein Gigabyte wiegt. Nach der "Entschlüsselung" wiegt die Binärdatei 17 Mal mehr.

Wer braucht sie?

CatBoost wird diese Daten schlucken - es funktioniert gut mit den großen Dateien. Ich habe nur nicht verstanden, welches Ziel...

Wenn Sie die Daten in csv-Form mit Ziel vorbereiten, kann ich sie bei mir ausführen.

 
Rorschach:

Ich habe 10 Jahre lang ein System im Tester betrieben, das einmal am Tag einen Kauf mit unterschiedlichen SL/TP-Verhältnissen eröffnete. Von den Systemen, die überlebt haben, gab es keine Systeme mit gleichem SL und TP, die meisten hatten TP<SL. Sie können es selbst durchführen.

Ich habe auch eine Emulation durchgeführt, die zeigte, dass ein System mit TP<SL schneller auf der Gewinnerseite stand.

Es ist mir gelungen, ein System zu erstellen, bei dem der TP den SL um das 2-3-fache übersteigt, aber es gibt noch ein weiteres Problem - 20-25 % der profitablen Trades, und ich kann das Modell nicht richtig trainieren, um verlorene Einträge herauszufiltern.

 
Maxim Dmitrievsky:

Überprüft, funktioniert besser im Testgerät. Ich werde es mir noch einmal ansehen.)

Ich habe mich gerade mit Wiederholungen beschäftigt... sehr cool zu lernen.

Z.U. hat es richtig gemacht - leider sehr lernfähig.

dachte Liebe, aber nein - wieder Erfahrung))

Warum ist es so traurig? Maxim, haben Sie keine Links zur Dokumentation über Rekursoren? Ich bin daran interessiert, wie genau die Gewichte während des Trainings aktualisiert werden
 
Alexander Alekseyevich:
Warum ist es traurig? Maxim, haben Sie keine Links zur Dokumentation über Wiederholung? Ich bin daran interessiert, wie genau die Gewichte während des Trainings aktualisiert werden.

sie werden auf die gleiche Weise umgeschult wie andere

Es gibt eine Menge Informationen auf Google

Hier ist ein gutes Beispiel

https://towardsdatascience.com/gate-recurrent-units-explained-using-matrices-part-1-3c781469fc18

Gated Recurrent Units explained using Matrices: Part 1
Gated Recurrent Units explained using Matrices: Part 1
  • Sparkle Russell-Puleri
  • towardsdatascience.com
In the first step a dictionary of all of the unique characters is created to map each letter to a unique integer: Character dictionary : {‘h’: 0, ‘a’: 1, ‘t’: 2, ‘M’: 3} Our encoded input now becomes: MathMath = [3, 1, 2, 0, 3, 1, 2, 0] Step 1: Create batches of data This step is achieved by the user specifying how many batches (B), or sequence...