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

 
elibrarius:

Ich glaube nicht, dass die Anzahl der Trades hier gezählt werden muss. Ziehen Sie einfach den Spread und die Provision von jedem Handel ab. So ist das nun mal:

So funktioniert das nicht, man muss trotzdem mitzählen.

 
Vladimir Perervenko:

Ja, Ihre Aussage ist richtiger.

Nein) Ihre ist richtiger!

Weil das Geschäft, das "früher" eröffnet wurde (die Eröffnung ist nicht in unseren Vektor gefallen)

es bedeutet, dass die Provision "früher" zurückgezogen wurde aber nicht im aktuellen Vektor

aber das sind nur kleine Details...

 

für diejenigen, die 2 Stunden Zeit haben


 
mytarmailS:

für diejenigen, die zwei Stunden Zeit haben.


Worum geht es dabei?

 
mytarmailS:

für diejenigen, die 2 Stunden Zeit haben


Er stopft die Gehirne junger Menschen mit seinen schizoiden Fantasien und falschen Schlussfolgerungen voll.

 
mytarmailS:

Nein) Ihre ist richtiger!

weil das Geschäft, das "früher" eröffnet wurde (die Eröffnung fiel nicht in unseren Vektor)

es bedeutet, dass die Provision "früher" zurückgezogen wurde aber nicht im aktuellen Vektor

aber das sind nur kleine Details.

Das sind wirklich Kleinigkeiten, mit Ausnahme von zwei Dingen. Der erste ist die Geschwindigkeit der Ausführung:

cnt<-function(x){
    n <- 1:(length(x)-1)
    cnt <- 0
    for(i in n) {if(x[i]!=x[i+1]) {cnt<-cnt+1}}
    return(cnt)
}
cnt1 <- function(x){
    length(rle(c(x))$values)
}

sig <- rep(c(1,1,1,-1,-1,-1), 3000)

bench::workout({
    c <- cnt(sig)
    c1 <- cnt1(sig)
})
# A tibble: 2 x 3
  exprs            process     real
  <bch:expr>      <bch:tm> <bch:tm>
1 c <- cnt(sig)     15.6 ms   9.21 ms
2 c1 <- cnt1(sig)        0   1.15 ms

Der zweite ist 15 Mal schneller. Und wenn sie an einer Fitnessfunktion beteiligt ist, die zehntausende Male aufgerufen wird, verlieren wir viel Zeit.

Zweiter Punkt. Alles ist in Ordnung, wenn wir zwei Bedingungen Kaufen/Verkaufen haben, aber in der Regel erzeugt der TS drei Signale - Kaufen/Verkaufen/Halten (1, -1, 0). Und dann funktioniert die zweite Option nicht. Und die erste Variante mit einer leichten Änderung

sig <- rep(c(1,1,1,-1,-1,-1,0,0,0), 3000)
> length(sig)
[1] 27000
cnt<-function(x){
    n <- 1:(length(x)-1)
    cnt <- 0
    for(i in n) {if(x[i] != x[i+1] & x[i+1] != 0) {cnt<-cnt+1}}
    return(cnt)
}
bench::workout({
    op <- cnt(sig)
    op1 <- cnt1(sig)
})
# A tibble: 2 x 3
  exprs             process     real
  <bch:expr>       <bch:tm> <bch:tm>
1 op <- cnt(sig)     31.2 ms  17.43 ms
2 op1 <- cnt1(sig)        0   3.23 ms
> op
[1] 5999
> op1
[1] 9000

Die erste Variante zeigt das richtige Ergebnis (wenn auch langsam), während die zweite Variante das Verlassen der Position als Geschäft betrachtet, was falsch ist.

 
Vladimir Perervenko:

Das sind wirklich kleine Dinge, wenn man zwei Dinge nicht bedenkt. Der erste ist die Geschwindigkeit der Ausführung:

Ich stimme völlig zu...

Gibt es Möglichkeiten, Netzwerke oder Wälder mit einer Fitnessfunktion zu trainieren?
 
mytarmailS:

stimme völlig zu...

Gibt es eine Möglichkeit, ein Netz oder Gerüst mit einer Fitnessfunktion zu trainieren?

Die Fitnessfunktion berechnet den Wert des Optimierungskriteriums während des Optimierungsprozesses. Das hat nichts mit der Modellausbildung zu tun.

 

wir müssen die Multiklasse catbust in der Metaq um den Zusatz "no trading" erweitern

das Spektrum der Strategien wird größer

 

Ich habe eine neue Gleichgewichtsberechnungs- und Provisionsfunktion zur Fitnessfunktion hinzugefügt...

Ich denke, der Algorithmus versucht nun, die Anzahl der Abschlüsse zu minimieren, um Provisionen zu sparen... Folglich führen weniger Berufe zu weniger Erfahrung...

Hier sind die Charts, können Sie deutlich sehen, dass, wenn es nur wenige Trades, Lernen nicht funktioniert ...

grau ist TRAIN 1500 pips

die schwarze Farbe ist die TEST 500 Punkte

Dieser hatte nur wenige Trades, der Algo hat nichts gelernt, er ist sehr niederfrequent...


Es macht Spaß, die Einstiegspunkte 2 Tage im Voraus zu kennen ))

Aber es ist wahrscheinlich besser, ständig umzuschulen, ich weiß noch nicht, wie ich das alles testen soll.

Grund der Beschwerde: