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

 
Dr. Trader:

Ich weiß nicht, wie man das auf die übliche Art und Weise macht, aber so mit der Bibliothek:


Herzlichen Dank!!! Sie wissen sehr gut über Pakete, wurde ich angeboten, format() Klasse alle wieder auf speziellen Forum auf die gleiche Frage zu schreiben, und zeigte ein Beispiel mit ~ 300 Zeilen Code, habe ich bereits begonnen, über Krücken denken, und hier ist eine große Lösung ... danke!

 

Eine weitere Frage: Ich habe drei Datenrahmen mit leicht unterschiedlichen Längen, da die Beobachtungen zu verschiedenen Zeiten gemacht wurden,

Wie kann ich sie so synchronisieren, dass nur die Beobachtungen übrig bleiben, die in allen drei Frames vorkommen, und diejenigen verworfen werden, die nur in einzelnen Frames auftreten?

> head(sec1)
        date  time   open   high    low  close vol
1 2016.09.06 08:45 3081.5 3082.5 3080.5 3080.5   6
2 2016.09.06 08:50 3081.5 3081.5 3079.5 3080.5   6
3 2016.09.06 08:55 3081.5 3082.5 3081.5 3082.5  19
4 2016.09.06 09:00 3083.5 3083.5 3081.5 3082.5  19
5 2016.09.06 09:05 3083.5 3085.5 3082.5 3085.5   8
6 2016.09.06 09:10 3086.5 3086.5 3084.5 3086.5  15
> head(sec2)
        date  time  open  high   low close vol
1 2016.09.13 13:00 95.34 95.40 95.33 95.39  36
2 2016.09.13 13:05 95.40 95.43 95.39 95.41  40
3 2016.09.13 13:10 95.42 95.44 95.40 95.42  37
4 2016.09.13 13:15 95.41 95.42 95.39 95.39  25
5 2016.09.13 13:20 95.40 95.41 95.38 95.38  21
6 2016.09.13 13:25 95.39 95.42 95.38 95.42  32
> head(sec3)
        date  time    open    high     low   close vol
1 2016.09.14 18:10 1.12433 1.12456 1.12431 1.12450 137
2 2016.09.14 18:15 1.12444 1.12459 1.12424 1.12455 139
3 2016.09.14 18:20 1.12454 1.12477 1.12446 1.12469 148
4 2016.09.14 18:25 1.12468 1.12474 1.12442 1.12453 120
5 2016.09.14 18:30 1.12452 1.12483 1.12442 1.12482 156
6 2016.09.14 18:35 1.12481 1.12499 1.12472 1.12474 126
 
https://www.mql5.com/en/blogs/post/650079

Interessant. Verbesserung einer bestehenden Strategie durch maschinelles Lernen. Dem Artikel mangelt es an Informationen über die Stichprobe, aber die Idee ist interessant.
 
mytarmailS:

Eine weitere Frage: Ich habe drei Datenrahmen mit leicht unterschiedlichen Längen, da die Beobachtungen zu verschiedenen Zeiten gemacht wurden,

Wie können sie zeitlich synchronisiert werden, so dass nur die Beobachtungen übrig bleiben, die in allen drei Einzelbildern enthalten sind, und diejenigen verworfen werden, die nur in einzelnen Einzelbildern auftreten?

würde es so aussehen:


a <- data.frame(c1 = c('a','b','c','d','e','f'), c2 = c(1,2,3,4,5,6))

b <- data.frame(c1 = c('a','b','c','d','e'), c2 = c(1,2,3,4,5))

c <- data.frame(c1 = c('b','c','d','e','f'), c2 = c(2,3,4,5,6))


a$concat <- do.call(paste0, a[1:2])

b$concat <- do.call(paste0, b[1:2])

c$concat <- do.call(paste0, c[1:2])


concat_vec <- append(unique(a$concat)

    , c(unique(b$concat)

    , unique(c$concat)))

concat_vec_tbl <- as.data.frame(table(concat_vec))

concat_vec_tbl <- concat_vec_tbl[concat_vec_tbl$Freq == 3, ]



a <- a[a$concat %in% concat_vec_tbl$concat_vec, ]

b <- b[b$concat %in% concat_vec_tbl$concat_vec, ]

c <- c[c$concat %in% concat_vec_tbl$concat_vec, ]

 
Alexey Burnakov:
https://www.mql5.com/en/blogs/post/650079

Interessant. Verbesserung einer bestehenden Strategie durch maschinelles Lernen. Dem Artikel mangelt es an Informationen über Stichproben, aber die Idee ist interessant.
Guter Artikel, ich habe in letzter Zeit auch mit "SMM" experimentiert, aber auf eine eher gewöhnliche Weise.
 
Alexey Burnakov:

Bei Frontalangriffen wird es so aussehen:

Dankeschön
 
Alexey Burnakov:
https://www.mql5.com/en/blogs/post/650079

Interessant. Verbesserung einer bestehenden Strategie durch maschinelles Lernen. Dem Artikel mangelt es an Informationen über die Stichprobe, aber die Idee ist interessant.

Alexej!

Was für ein interessanter Mensch Sie sind!

Ich habe hier schon hundertmal geschrieben, dass ich rf verwende, um die Leistung von real TS auf Indikatoren zu verbessern, aber Sie haben nicht darauf reagiert.

Darüber hinaus habe ich mehrfach vorgeschlagen, dass:

1. nehmen Sie den echten TS.

2. Wir unterscheiden die Probleme von TS und beginnen, sie mit R-Tools zu lösen

In meinem erwähnten Fall habe ich rf verwendet, um das Problem der Verzögerung des Indikators zu lösen, der normalerweise Informationen über Takt 1 (-1) liefert, während rf Informationen einen Takt voraus liefert. Für H4 sind es 8 Stunden! Dadurch ist es mir gelungen, den Drawdown erheblich zu verringern.

 
Alexey Burnakov:
https://www.mql5.com/en/blogs/post/650079

Interessant. Verbesserung einer bestehenden Strategie durch maschinelles Lernen. Dem Artikel mangelt es an Informationen über die Stichprobe, aber die Idee ist interessant.

Die Idee dieses Artikels wird in dem Artikel https://www.mql5.com/ru/articles/1628 etwas anders umgesetzt.

Ich frage mich, ob jeder die Artikel über maschinelles Lernen auf dieser Website mit einem Jahr Verspätung liest (rhetorische Frage).

Viel Glück!

Глубокая нейросеть со Stacked RBM. Самообучение, самоконтроль
Глубокая нейросеть со Stacked RBM. Самообучение, самоконтроль
  • 2016.03.31
  • //www.mql5.com/ru/users/vlad1949">
  • www.mql5.com
Статья является продолжением предыдущих статей по глубоким нейросетям и выбору предикторов. В ней мы рассмотрим особенность нейросети, инициируемой Stacked RBM, а также её реализации в пакете "darch".
 
SanSanych Fomenko:

Alexej!

Was für ein interessanter Mensch Sie sind!

Ich habe hier schon hundertmal geschrieben, dass ich rf verwende, um die Leistung des echten TS auf den Indikatoren zu verbessern, und Sie haben nicht darauf reagiert.

Außerdem habe ich wiederholt den Gedanken geäußert, dass:

1. nehmen Sie den echten TS.

2. Wir unterscheiden die Probleme von TS und beginnen, sie mit R-Tools zu lösen

In meinem erwähnten Fall habe ich rf verwendet, um das Problem der Verzögerung des Indikators zu lösen, der normalerweise Informationen über Takt 1 (-1) liefert, während rf Informationen einen Takt voraus liefert. Für H4 sind es 8 Stunden! Dadurch ist es mir gelungen, den Drawdown erheblich zu verringern.

Das verstehe ich. Es ist einfach schwierig, die Tiefe des Denkens zu beurteilen, ohne konkrete Angaben zu machen. Und es gab Bilder in diesem Artikel. Auch Perervenko hat ähnliche. Und ich habe seinen Artikel auch gelesen.
 
Alexey Burnakov:
Das verstehe ich. Es ist nur schwer, die Tiefe der Überlegungen zu beurteilen, wenn man keine Einzelheiten kennt. Und es gab Bilder in diesem Artikel. Perervenko sieht auch so aus. Und ich habe seinen Artikel auch gelesen.

Nun, hier ist das Vergehen...

Mein Ziel ist es, das Gespräch in eine praktische Richtung zu lenken und niemanden in irgendeiner Weise zu beleidigen...

Bislang haben wir nur verstreute Bruchstücke.

Ihr akademischer Ansatz.... Für mich steht der Wert Ihrer Berechnungen außer Frage, aber .... Ich habe oben meine Zweifel geäußert.

Ich verfolge die Arbeitvon Vladimir Perervenko sehr genau. Ich habe noch nie einen Hinweis darauf gesehen, dass die Modelle nicht neu trainiert werden. Der letzte Link. Die Bedeutung der Variablen wird durch einen Baumalgorithmus bestimmt. Aber Bäume neigen aufgrund der Bequemlichkeit der verfügbaren Rauschwerte dazu, diese Rauschprädiktoren häufiger zu verwenden, was zur Folge hat, dass Rauschen in der Wichtigkeitsschätzung auftaucht...

Wir müssen also mit Algorithmen beginnen, die das Rauschen der Prädiktoren entfernen. Alle anderen Schritte ohne diese sind von keinem praktischen Nutzen, da alle Modellschätzungen nicht in die Zukunft extrapoliert werden können.

Dann wird ein Modell in Fenstern trainiert, und die Fensterbreite muss irgendwie gerechtfertigt werden. Anschließend wird das trainierte Modell in einer Vorauswahl von Prädiktoren für das Arbeitsfenster.... verwendet.

Etwa so.