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

 
Vladimir Perervenko:

LSTM werden wir uns später ansehen.

Im Moment sind mein Kollege und ich bei dem Test zu einem R^2 von 0,2 gekommen. Ein paar Faltungsfilter und ein paar Neuronen in einer vollständig verknüpften Schicht. Die Idee ist, dass eine Wiederholung dort nicht erforderlich ist. Es bedarf einer angemessenen Merkmalsextraktion.

 
mytarmailS:

Ich habe mich an dieses Konzept gewöhnt: Ausgehend vom aktuellen Muster "B" in der Geschichte suchen wir nach einem ähnlichen Muster wie "A". Mit dem dtw-Algorithmus suchen wir nach Ähnlichkeit...

Das Traurige daran ist, dass wir nicht wissen, wie groß "B" und "A" am Ende sein werden. und das verursacht eine Menge Kopfschmerzen,

Sie brauchen nicht nur die Suche selbst, sondern auch die Möglichkeit, diese Muster dynamisch zu erweitern/zu verkleinern...

Wenn jemand eine Idee hat, wie man eine solche Suche so effektiv wie möglich gestalten kann, werde ich zuhören...

Früher habe ich einen Indikator verwendet, der anhand der euklidischen Distanz nach Kursmustern sucht und eine Fortsetzung in die Zukunft mit Konfidenzintervallen zeichnet. Aber die Skalierung auf der x-Achse wurde nicht durchgeführt und funktionierte nicht so gut.
 
Dr. Trader:

Der Standardindikator "Bill Williams Fractals" in MT ist auch eine Suche nach einem bestimmten Muster, ohne dtw, sondern nur nach Balken. Es funktionierte einst recht gut, bis es aufgrund seiner Popularität scheiterte (bei einigen Symbolen auf D1 kann es immer noch verwendet werden, der Gewinn ist jedoch minimal).

Aber die Handelsstrategie mit diesem Indikator ist komplizierter als "Kauf/Verkauf bei 1 Bar". Es verwendet pending, tp und sl, so dass Sie neben der Suche nach Mustern auch nach Handelsstrategien suchen müssen, auf die sie anwendbar sind.

Die Aufgabe des Handelssystems kann wie folgt formuliert werden:

bei jedem Balken, bei dem eine Neuberechnung stattfindet, zwei Aktionen durchführen:

1) Wahl zwischen "oben" und "unten"

2) Auswahl des Handelsvolumens(von 0 bis zu einem bestimmten Maximum)

Das Ergebnis ist ungefähr wie folgt:

Anstieg um 0,1

oben 0

Anstieg um 0,13

oben 0

minus 0,23

minus 0,3

...

Dies ist eine äußerst schwierig zu optimierende Aufgabe.

Für den Anfang können Sie eine "perfekte" Abwechslung dieser einfachen Aktionen vornehmen, die zu einem maximalen Gewinn bei minimalem Drawdown führt, indem Sie ziemlich umfangreiche Berechnungen für die gesamte Historie durchführen.

Im zweiten Schritt können Sie durch die Auswahl von Trainingsfics versuchen, die Maschine auf die zuvor ausgewählten Aktionen zu trainieren. Beispiel:

ficha1, ficha2,... Juckreiz10: 0

fich1, fich2,... Juckreiz10: 0,4

...

fich1, fich2,... fich10: -0,25

Regression in klassischer Form.

Schon der erste Punkt ist nicht einfach umzusetzen. Haben Sie eine Idee, liebe Mathematikerinnen und Mathematiker?

 
Alexey Burnakov:

Die Aufgabe des Handelssystems kann wie folgt formuliert werden:

bei jedem Takt, bei dem eine Neuberechnung stattfindet, zwei Aktionen durchführen:

1) Wahl zwischen "oben" und "unten"

2) Auswahl des Volumens der Transaktion(von 0 bis zu einem bestimmten Maximum)

Das Ergebnis ist ungefähr wie folgt:

Anstieg um 0,1

nach oben 0

Anstieg um 0,13

nach oben 0

minus 0,23

minus 0,3

...

Dies ist eine sehr schwierige Aufgabe für die Optimierung.

Inwiefern ist das schwierig?
 
Alexey Burnakov:
Ich habe früher einen Indikator verwendet, der anhand des euklidischen Abstands nach Preismustern sucht und eine Fortsetzung in die Zukunft mit Konfidenzintervallen zeichnet. Aber es hatte keine Skalierung auf der x-Achse und war nicht sehr gut.
Ich habe es auch getan, ich habe etwa ein Jahr damit verbracht, und wir hatten vor etwa 50 Seiten ein Gespräch darüber, aber anscheinend haben Sie ein kurzes Gedächtnis und daher kein Interesse daran.
 
Andrej Dik:
Inwiefern kompliziert?

In der Datenverarbeitung. Stellen Sie sich vor, Sie haben 2.000.000 5-Minuten-Geschäfte. Für jede dieser Optionen müssen Sie den Wert von -1 bis 1 in Schritten von 0,01 optimieren. Das Ziel ist ein perfekter Handel.

Zum Beispiel ist es nicht notwendig, während eines Aufwärtstrends jede Minute zu kaufen - das wäre ein Verlust an Spread. Gleich zu Beginn des Trends ist es notwendig, eine Menge auf einmal zu kaufen. Und das wird so sein:

bis 1

oben 0

oben 0

...

oben 0

... runter 1

anstelle einer ineffizienten Regelung

Anstieg um 0,02

Anstieg um 0,02

...

Anstieg um 0,02

..

unten 1

 
mytarmailS:
Ich habe es auch getan, ich habe etwa ein Jahr damit verbracht und wir hatten vor etwa 50 Seiten ein Gespräch darüber, aber anscheinend haben Sie ein kurzes Gedächtnis und daher kein Interesse

Das ist kein sehr logischer Vorschlag.

Ich erinnere mich, aber es besteht kein Interesse. Aber nicht, weil es eine wahnhafte Idee ist oder weil ich Ihre Ideen nicht respektiere. Das liegt daran, dass ich im Moment mit einer anderen Idee beschäftigt bin.

 
Alexey Burnakov:

In der Datenverarbeitung. Stellen Sie sich vor, Sie haben 2.000.000 5-Minuten-Geschäfte. Für jede dieser Optionen müssen Sie den Wert von -1 bis 1 in Schritten von 0,01 optimieren. Das Ziel ist ein perfekter Handel.

Zum Beispiel ist es nicht notwendig, während eines Aufwärtstrends jede Minute zu kaufen - das wäre ein Verlust an Spread. Gleich zu Beginn des Trends ist es notwendig, eine Menge auf einmal zu kaufen. Und das wird auch so sein:

Sie müssen die Punkte des idealen ZZ finden, habe ich recht?
 
Andrej Dik:
Sie müssen die Punkte des idealen ZZ finden, habe ich recht?
Genau das ist ideal. Das heißt, ohne Kompromisse. Wenn es möglich wäre, die Aktionen für jeden Takt perfekt zu optimieren, wäre das Ihr ideales Zickzack.
 
Alexey Burnakov:
Das ist genau das Richtige. Das heißt, ohne Kompromisse. Aber wenn Sie die Aktionen für jeden Balken optimieren könnten, wäre das Ihr ideales Zickzack.
Haben Sie versucht, meinen Artikel zu lesen? Dort wird gerade ein solcher Zickzackkurs als Beispiel für ein komplexes Optimierungsproblem betrachtet.
Grund der Beschwerde: