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

 
Andrey Dik:

Ok, questa è un'ottima performance di trading sulla storia! Congratulazioni.

Qualcuno ha visto un sistema Forex distribuito apertamente o in vendita, dove il futuro dà profitto in cinque anni? Potrei semplicemente postare questo prodotto qui o in code base come prova. Non mi interessano le curve piatte in un paio d'anni per centinaia di percentuali dal mercato. Poiché sono tutti di difficile montaggio. Faccio le mie cose ed evito il montaggio. E si possono fare abbastanza miglioramenti a questo sistema per migliorare il FS di un fattore e mezzo o due.

E comunque, questo thread riguarda l'apprendimento automatico, che implica la creazione di prodotti non addestrati. E il conteggio delle percentuali è un'altra cosa.

Proverò un altro metodo per addestrare la macchina e penso che possa ancora migliorare.
 
Alexey Burnakov:
Come si fanno più predittori dagli intervalli di un predittatore? Non lo capisco.

Oh è molto semplice) clustering...

1) Prendiamo ogni predittore e clusterizziamolo in, diciamo, 50 cluster (inoltre il clustering può e deve essere fatto in due tipi 1) clusterizzazione "così com'è" per clusterizzare il predittore per valori numerici e il secondo tipo 2) clusterizzazione del predittore normalizzato per clusterizzarlo come immagine) insieme otteniamo tutto come la visione umana, conosceremo non solo valori numerici "reali" del predittore ma anche immagine - curve, pendenze

2) Creiamo una tabella dove le colonne sono cluster, 50 cluster ---> 50 colonne ---> 50 predittori, controlliamo l'importanza di questi predittori usando qualche algoritmo e vediamo che su 50 predittori solo 1-5 sono importanti, li teniamo

3) prendere il prossimo predittore, raggrupparlo e ripetere i passi 1 e 2

Tale selezione all'interno del predittore dovrebbe teoricamente aumentare la qualità del riconoscimento di ordini di grandezza...

ma ci sono alcuni svantaggi

1) calcoli costosi

2) se ogni predittore è diviso uno per uno e il suo contenuto sarà valutato separatamente dal contenuto degli altri predittori, allora sarà impossibile valutare la correlazione tra i predittori, deve essere risolto in qualche modo

 
mytarmailS:

Oh è molto semplice) clustering...

1) Prendiamo ogni predittore e lo raggruppiamo in, diciamo, 50 cluster (mentre il clustering può e deve essere fatto in due tipi 1) clustering "così com'è" per raggruppare il predittore secondo i valori numerici e il secondo tipo 2) clustering del predittore normalizzato per raggrupparlo come immagine) insieme otteniamo tutto come la visione umana, conosceremo non solo i valori numerici "reali" del predittore ma anche l'immagine - curve, pendenze

2) Creiamo una tabella dove le colonne sono cluster, 50 cluster ---> 50 colonne ---> 50 predittori, controlliamo l'importanza di questi predittori usando qualche algoritmo e vediamo che su 50 predittori solo 1-5 sono importanti, li teniamo

3) prendere il prossimo predittore, raggrupparlo e ripetere i passi 1 e 2

Tale selezione all'interno del predittore dovrebbe teoricamente aumentare la qualità del riconoscimento di ordini di grandezza...

ma ci sono alcuni svantaggi

1) calcoli costosi

2) se ogni predittore è scomposto uno per uno e il suo contenuto sarà valutato separatamente dal contenuto di altri predittori, allora sarà impossibile valutare la correlazione tra i predittori, deve essere risolto in qualche modo

Questo è un modo per provare. In realtà c'è un metodo. Si fa un grafico a punti dell'uscita-predicatore. Idealmente ci sarà una buona dipendenza. Ma se su qualche segmento (di solito nelle code) la dipendenza è sfumata, queste osservazioni sono escluse.
 
Alexey Burnakov:
Puoi provare in questo modo. In generale, c'è un metodo. Si fa un grafico a punti di output-predicatore. Idealmente, ci sarà una buona dipendenza. Ma se la dipendenza è sfumata su qualche segmento (di solito nelle code), queste osservazioni sono escluse.

come si chiama questo metodo?

ce n'è uno nel rc?

come risolvere il problema n.2?

Mi piacerebbe discuterne, potrebbe essere davvero molto efficace.
 
mytarmailS:

come si chiama questo metodo?

ce n'è uno nel rc?

come risolvere il problema n.2?

vorrebbe una discussione, potrebbe essere davvero molto efficace
2. Si risolve così. La variabile è portata ad una forma discreta. Supponiamo che ci siano 50 livelli. Creiamo 49 nuove variabili e vi codifichiamo i livelli. Poi applichiamo per esempio la regressione lineare e guardiamo l'importanza.
 
Alexey Burnakov:

A proposito, qualcuno è interessato a questo o no, non lo capisco. Avete bisogno di un robot addestrato che superi la validazione in 5 anni con un profitto?

Tale

Sono tornato dalle vacanze, posso preparare i file e postarli, e chi ne ha bisogno li migliorerà da solo.

Mi interessa sapere come hai creato il robot punto per punto, se non è difficile...

1) ha selezionato le caratteristiche secondo il suo metodo

2) Hai fatto il modello

e questo è tutto?

 
mytarmailS:

Mi interessa sapere come hai creato il robot punto per punto, se non è difficile...

1) Selezionate le caratteristiche secondo il vostro metodo

2) Hai costruito il modello

e questo è tutto?

Questo è uno schema generale che funziona sempre.

Ho eliminato le caratteristiche attraverso l'importanza dopo l'esecuzione di GBM. E provo diversi numeri di selezioni. La macchina è addestrata tramite GBM e ho provato diverse funzioni di fitness. Viene utilizzata la convalida incrociata. Anche i suoi parametri variano. E ci sono altre sfumature.

In generale, ho ottenuto un risultato che dimostra che più complesso non è sempre meglio. Su EURUSD il modello usa solo 5 predittori e solo due falli di crossvalidazione.

 
Molto interessante la rete neuralehttp://gekkoquant.com/2016/05/08/evolving-neural-networks-through-augmenting-topologies-part-3-of-4/ pensi che possa essere fatta per commerciare da sola e imparare dai suoi errori? E se sì, come, siete invitati a discutere
Evolving Neural Networks through Augmenting Topologies – Part 3 of 4
  • 2016.05.09
  • GekkoQuant
  • gekkoquant.com
This part of the NEAT tutorial will show how to use the RNeat package (not yet on CRAN) to solve the classic pole balance problem. The simulation requires the implementation of 5 functions: processInitialStateFunc – This specifies the initial state of the system, for the pole balance problem the state is the cart location, cart velocity, cart...
 
mytarmailS:
Molto interessante la rete neuralehttp://gekkoquant.com/2016/05/08/evolving-neural-networks-through-augmenting-topologies-part-3-of-4/ pensi che possa essere fatta per commerciare da sola e imparare dai suoi stessi errori? E se sì, come farlo, invito a discuterne.

Se lo sviluppatore dice che la rete può sostituire un algoritmo di apprendimento per rinforzo, questo è promettente.

La sperimentazione è necessaria. Ma l'argomento è interessante.

 
Vladimir Perervenko:

Se lo sviluppatore dice che la rete può sostituire un algoritmo di apprendimento per rinforzo, questo è promettente.

La sperimentazione è necessaria. Ma è un argomento interessante.

Sono d'accordo, è interessante... Ma non c'è quasi nulla di chiaro per me, a partire dall'ideologia fino al codice stesso, c'è troppa roba e molti operatori che non conosco nemmeno.

Se qualcuno potesse spiegare tutto, almeno con esempi elementari, come usarlo nel trading, sarebbe un buon esperimento per persone inesperte come me