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

 
mytarmailS:

1. perché state normalizzando manualmente? c'è scale()

2. perché la correlazione -1 e 1 è buona? solo se 1 è buono -1 è molto cattivo, se ho capito bene l'idea, -1 è la correlazione inversa

3. Avete provato a monitorare l'errore di un modello addestrato in una finestra scorrevole, e se non vi soddisfa, riaddestrate il modello e vedete cosa succede?

4. E l'idea globale del perché tutto funziona così male, il mercato non è stazionario, dobbiamo elaborare qualche altro concetto di formazione delle caratteristiche, forse passare completamente al paradigma delle regole logiche, penso che dovremmo allontanarci dai numeri quasi completamente, o studiare l'analisi dello spettro)))))

1) Non sono mai riuscito a scalare(), scala e centra in mezzo al nulla. Idealmente sarebbe meglio usare il pacchetto caret per la pre-elaborazione, scala/centra tutto bene, ma usare un altro pacchetto sarebbe troppo ingombrante per un esempio così semplice

2) la correlazione vicina allo zero significa che non c'è correlazione, questo è il caso peggiore. Il profitto sul test in questo caso non dice nulla sul potenziale profitto sui nuovi dati.
-1 è quando un'alta accuratezza nell'addestramento darà costantemente cattivi risultati sui nuovi dati. Ma allo stesso tempo, un risultato basso nell'allenamento significherà un risultato migliore sui nuovi dati :) Questo può accadere se il modello viene facilmente adattato ai dati e riaddestrato, e con un basso risultato nell'addestramento semplicemente non ha abbastanza tempo per memorizzare i dati e in qualche modo miracolosamente scambia in positivo. Per esempio, l'accuratezza sui dati di allenamento può variare da 0,9 a 1 e in questo caso 0,9 sarà "bassa" e l'accuratezza sui nuovi dati varierà da 0,5 a 0,6 dove 0,6 sarà "alta". Cioè, il modello con un risultato peggiore non viene riqualificato, e ha una migliore logica di generalizzazione, e di conseguenza anche il risultato sui nuovi dati è migliore.
Anche se tutto questo è bello a parole, ma in realtà non ho mai visto una correlazione negativa stabile. È più comodo e più facile andare verso il +1.

3) Mentre capirò che il modello non mi soddisfa - passerà del tempo, durante il quale perderà così tanto che un modello normale non funzionerà allora. Si possono scambiare nuovi modelli prima su un conto demo - ma potrebbe essere obsoleto nel momento in cui il modello diventa redditizio e inizio a scambiarlo su un conto reale. Non l'ho provato. Farei meglio a controllare prima che l'intero algoritmo di apprendimento funzioni e dia modelli costantemente redditizi e impostare qualcosa di cui mi fido per fare trading sul conto reale.
Se l'algoritmo di apprendimento è abbastanza buono - è meglio aggiornare un vecchio modello funzionante con nuovi dati che crearne di nuovi ogni volta da zero.

4) l'ingegneria delle caratteristiche è buona. Io per esempio uso gli indicatori di mt5 piuttosto che il prezzo nudo.

 
Dr.Trader:
E con quale precisione il vostro buon modello prevede il colore di una candela in trailing su nuovi dati in condizioni reali? Fai trading sul grafico giornaliero, giusto?
 
mytarmailS:
E con quale precisione il vostro buon modello prevede il colore di una traccia di candela su nuovi dati in condizioni reali? Fai trading sul grafico giornaliero, giusto?

Ho H1, il target è il colore della prossima candela. L'accuratezza delle previsioni è solo del 55%-60%, ma è sufficiente. Anche in una tendenza, il prezzo non sale sempre, ma rimbalza costantemente su e giù sulle barre successive, quindi questi rimbalzi rovinano notevolmente la precisione. La cosa principale è che il modello stesso non fluttua e, una volta entrato nel commercio, vi rimane fino alla fine del trend.

 
Dr.Trader:

La cosa principale è che il modello non si muove da solo, e una volta che è entrato nel commercio, vi rimane fino alla fine del trend. La cosa principale è che il modello stesso non deve vacillare e una volta entrato nel commercio, deve rimanerci fino alla fine del trend.

C'è un modo per smussare l'obiettivo?
 
mytarmailS:

Quella sensazione quando cominci a pensare di capire il mercato...

Quella sensazione quando arriva un'altra scocciatura (( :)
 

video molto interessante.... sulla selezione delle caratteristiche, sugli algoritmi e anche un po' sui mercati

https://www.youtube.com/watch?v=R3CMqrrIWOk

 
mytarmailS:

video molto interessante.... sulla selezione delle caratteristiche, sugli algoritmi e anche un po' sui mercati

https://www.youtube.com/watch?v=R3CMqrrIWOk

È davvero interessante. È un peccato che non ci sia molto sui mercati in particolare, qualcosa come "Se inizio a prevedere i prezzi del petrolio, probabilmente verrò ucciso" :) (la mia citazione è imprecisa, l'ho scritta a memoria).

La prima mezz'ora di video - qui Alexey ne ha scritto nel thread. Anche il codice R era allegato. Non riesco a trovarlo ora, devo sfogliare le prime decine di pagine, inoltre c'era un link al suo articolo su hbr.
Per me questo metodo di selezione dei predittori per il forex purtroppo non ha aiutato, tutti i miei predittori erano troppo poco informativi, penso che questo algoritmo sia adatto a dati più stazionari. Oppure abbiamo bisogno di altri nuovi predittori.

 

Signori, qualcuno può per favore darmi un esempio di una rete neurale che lavora su input con array come m1[1000,1000] m2[1000,1000] ecc. Mi scuso per essere stupido, semmai.

Non ho ancora lavorato con la neuronica, voglio fare pratica. Non capisco bene come si impostano i parametri, te ne sarei molto grato.

forse qualcuno ha considerato il metodo del predictor corrector

 
Top2n:

sull'input con array, per esempio m1[1000,1000] m2[1000,1000] ecc.

Volete alimentare due matrici, ognuna con 1000 esempi di allenamento, e 1000 ingressi per la rete? Non funzionerebbe, dovresti combinarli in uno solo. O intendi qualcos'altro?
 
Dr.Trader:
Volete alimentare due matrici con 1000 esempi di allenamento ciascuna e 1000 ingressi per la rete? Non funzionerà, dovranno essere fusi in uno solo. O intendi qualcos'altro?

Ogni array[][] è un insieme di singole informazioni di qualità, cioè per ogni ingresso, un array[][] separato. Voglio alimentare un sacco di array, sono pronto per ora 4, ho intenzione di crearne altri, ogni array descrive lo stato del prezzo, si scopre da diverse angolazioni, è così che è.

Ogni array contiene 1000 righe e 1000 colonne, quindi ne ho uno tridimensionale, quindi la dimensione K è la nuova bidimensionale.