L'apprendimento automatico nel trading: teoria, modelli, pratica e algo-trading - pagina 12

 
Ciao, sono nuovo nell'apprendimento automatico e ho una domanda, perché tutti voi cercate di prevedere la direzione del prezzo, sia zigzagando o semplicemente incrementando la prossima candela, c'è molto caos nel mercato, è necessario includere un corridoio in cui il prezzo potrebbe "dimenarsi". Mi sembra più efficace prendere il risultato del trading come obiettivo. Per esempio, durante l'addestramento consideriamo una curva di profitto ideale e l'obiettivo sarà contrassegnato come non deviante dall'ideale per più del 15% o, in alternativa, prendiamo il fattore di recupero e non lo lasciamo scendere sotto n , tali obiettivi saranno più flessibili per i dati di mercato. E la cosa più interessante è come implementare la funzione in tale forma per esempio per la stessa foresta casuale?
 
mytarmailS:
Ciao, sono nuovo nell'apprendimento automatico e ho una domanda, perché tutti voi cercate di prevedere la direzione del prezzo, o zigzagando o semplicemente incrementando la prossima candela, c'è molto caos nel mercato, dovreste includere qualche corridoio in cui il prezzo potrebbe "dimenarsi". Mi sembra più efficace prendere il risultato del trading come obiettivo. Per esempio, durante l'addestramento consideriamo una curva di profitto ideale e l'obiettivo sarà contrassegnato come non deviante dall'ideale per più del 15% o, in alternativa, prendiamo il fattore di recupero e non lo lasciamo scendere sotto n , tali obiettivi saranno più flessibili per i dati di mercato. E la cosa più interessante è come implementare una funzione di questo tipo per esempio per una foresta casuale?
Ciao, potresti disegnare questo obiettivo graficamente per renderlo più chiaro?
 
 

Ciao!

Il lato sinistro è solo un tipo di prezzo, il lato destro nero rappresenta la curva di equilibrio ideale (tutto ciò che può essere guadagnato), il verde rappresenta un certo intervallo (corridoio) dalla curva di equilibrio ideale che non dovremmo andare oltre nel nostro commercio, il grigio rappresenta l'equilibrio di un tipo di commercio reale)

Quindi l'essenza dell'obiettivo non è prevedere i prezzi e l'obiettivo sotto forma di un vettore 11100001111100 , e trovare uno stato in cui la linea grigia non andrà oltre il verde

Io stesso non capisco come farlo, per questo vorrei discuterne).

 
mytarmailS:

Ciao!

Il lato sinistro è solo un tipo di prezzo, il lato destro nero rappresenta la curva di equilibrio ideale (tutto ciò che può essere guadagnato), il verde rappresenta un certo intervallo (corridoio) dalla curva di equilibrio ideale che non dovremmo andare oltre nel nostro commercio, il grigio rappresenta l'equilibrio di un tipo di commercio reale)

Quindi l'essenza dell'obiettivo non è prevedere i prezzi e l'obiettivo sotto forma di un vettore 11100001111100 , e trovare uno stato in cui la linea grigia non andrà oltre il verde

Forse sono un po' confuso ma non so come fare).

L'angolo di pendenza della linea nel commercio degli errori sarà meno che ideale. Hai raffigurato il commercio in grigio, dove molto probabilmente aumentando il lotto sta facendo un ritorno all'angolo previsto.

Cioè, è il trading a prevedere la direzione del prezzo, ma quando l'errore si accumula il sistema in qualche modo inizia a lavorare nella direzione più spesso.

Qui abbiamo discusso tre opzioni di obiettivo.
1) chiusura di una posizione in un intervallo di tempo
2) chiusura di un affare quando il livello è rotto (tp/cl)
3) direzione generale del trend, dove la chiusura del trade non è esplicitamente definita. Può essere per tempo o tp/cl.

In questo caso la variante 3 è la più vaga in termini di criterio di uscita.
 
Alexey Burnakov:
L'angolo di pendenza della linea nel commercio degli errori sarà meno che ideale. Hai raffigurato un trade su una linea grigia in cui aumentando il lotto molto probabilmente si tornerà all'angolo previsto.

Cioè, sta facendo trading sulla previsione della direzione del prezzo, ma quando l'errore si accumula il sistema in qualche modo inizia a lavorare intensamente nel più spesso.
Non capisco )) non c'è un lotto, non c'è un sistema che lavora duro), è una data generata casualmente... Solo immaginando l'obiettivo dovrebbe funzionare meglio dello zigzag a mio modesto parere, naturalmente, ma come implementare questo non lo so, ho pensato che forse qualcuno mi avrebbe detto
 
mytarmailS:
Non capisco )) non c'è un lotto, non c'è un sistema che funziona migliorato), è una data generata casualmente... Ho appena immaginato un obiettivo che dovrebbe funzionare meglio dello zigzag a mio modesto parere, naturalmente, ma come implementarlo non lo so, pensavo che forse qualcuno mi dirà

Neanche io riesco a capirti.

La tua curva grigia è come fare trading con un lotto variabile per tornare sempre su una linea con una pendenza elevata.

È come un martin che ha sempre un angolo della linea commerciale.

In realtà non è realistico fare trading in questo modo. Con gli errori (trade perdenti) la vostra curva reale sarà molto più vicina allo zero.

Anche il modo in cui l'obiettivo viene realizzato non è chiaro. Questo tipo di serie temporale è possibile solo quando il commercio ritorna sempre in positivo dopo l'accumulo di minus. Non è quasi possibile mettere questo in formazione, almeno non nel modo standard.

 

Non è un sistema, è solo un'illustrazione ))) Non c'è commercio.

Scusa, devo essere pessimo nell'esprimere i miei pensieri.

Ecco il codice

PREZZO <- cumsum(rnorm(200))+1000

par(mfrow=c(1,2))

plot(PRICE,t="l",,lwd=2)

PD <- c(0,diff(PRICE))

BAL <- PD

per(i in 1:lunghezza(PD)){

se(BAL[i] < 0) BAL[i] <- BAL[i]/-1

}

BAL <- cumsum(BAL)

lowBAL <- BAL - 50

plot(BAL,t="l",lwd=3)

plot(lowBAL,t="b",col="verde")

realBAL <- BAL+rnorm(200,sd=20)

linee(realBAL,t="l",col="grey")


Ricominciamo, c'è una funzione target standard, è un vettore che denota la direzione del movimento, si può descrivere con uno zigzag o semplicemente la prossima chiusura di candela, il vettore è di solito trasformato in 1110000111 o -1-1-11111

Posso farlo in questo modo, ma penso che tali approcci siano difettosi

Propongo di farlo: lasciare che l'algoritmo durante l'addestramento imiti il trading (grafico grigio) e lo confronti con il rendimento ideale che ci si potrebbe aspettare (grafico nero), cioè l'algoritmo non cerca di prevedere il prossimo prezzo e cerca solo di non andare oltre la linea verde. Questo è tutto ciò che ho cercato di mostrare nel grafico.

Domanda: è possibile realizzarlo, perché tutti gli algoritmi che ho visto (neurale, RF...) vogliono un vettore target di 11100011

 
mytarmailS:

Non è un sistema, è solo un'illustrazione ))) Non c'è commercio.

Scusa, devo essere pessimo nell'esprimere i miei pensieri.

Ecco il codice

PREZZO <- cumsum(rnorm(200))+1000

par(mfrow=c(1,2))

plot(PRICE,t="l",,lwd=2)

PD <- c(0,diff(PRICE))

BAL <- PD

per(i in 1:lunghezza(PD)){

se(BAL[i] < 0) BAL[i] <- BAL[i]/-1

}

BAL <- cumsum(BAL)

lowBAL <- BAL - 50

plot(BAL,t="l",lwd=3)

plot(lowBAL,t="b",col="verde")

realBAL <- BAL+rnorm(200,sd=20)

linee(realBAL,t="l",col="grey")


Ricominciamo, c'è una funzione target standard, è un vettore che denota la direzione del movimento, si può descrivere con uno zigzag o semplicemente la prossima chiusura di candela, il vettore è di solito trasformato in 1110000111 o -1-1-11111

Posso farlo in questo modo, ma penso che tali approcci siano difettosi

Propongo di farlo: lasciare che l'algoritmo durante l'addestramento imiti il trading (grafico grigio) e lo confronti con il rendimento ideale che ci si potrebbe aspettare (grafico nero), cioè l'algoritmo non cerca di prevedere il prossimo prezzo e cerca solo di non andare oltre la linea verde. Questo è tutto quello che ho cercato di mostrare nel grafico.

La domanda: è possibile realizzarlo, visto che tutti gli algoritmi che ho visto (neurale, RF...) vogliono un vettore target di 11100011 sotto forma di vettore target?

Grazie. Ti ho capito subito. È solo che non è possibile implementarlo di default.

Prendiamo la foresta casuale. Presumo che abbiate familiarità con questo metodo di apprendimento automatico.

Questa cosa può funzionare solo in un modo. Se abbiamo una variabile di uscita binaria, la foresta decisionale per ciascuno degli ingressi cercherà stupidamente una regione di valori in cui l'asimmetria di una delle classi di uscita è statisticamente più grande. E iterativamente questo viene fatto per tutte le variabili.

Se volete che la macchina tenga conto della deviazione della precisione del commercio reale dall'ideale, dovete assicurarvi che la foresta decisionale sia abbinata di conseguenza, non in base all'asimmetria delle classi. Questo deve tener conto della variazione dinamica della deviazione dal commercio ideale, che non è anche realizzabile dallo standard. Per questo, la macchina ha bisogno di essere alimentata dinamicamente con dati sul commercio perfetto. A tal fine è necessario riscrivere il metodo. Gli strumenti standard semplicemente non possono farlo.

Ci sono funzioni di gradiente. Per una foresta standard, il gradiente è impostato a modo suo. Se dovete ottimizzare la deviazione del commercio dall'ideale, sarà un gradiente completamente diverso. In qualche modo non credo di poterlo scrivere personalmente sulle mie ginocchia.

 
Grazie per il chiarimento, ora ti capisco perfettamente, le algo genetiche possono aiutare qui? invece di RF, ho alcune idee interessanti per implementare un obiettivo, mi piacerebbe provarle.