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

 
mytarmailS:

Sono stato io a mostrarti questo pacchetto, ricordi, quando ti ho chiesto di fare uno script per mt4, c'era un neurone dal pacchetto nnfor, e l'obiettivo era PIP- Perceptually Important Points (repr_pip) da TSrepr :)


Vladimir, ho qualche domanda, se posso...

1) Dimmi quale errore massimo sei riuscito a raggiungere sulla classificazione della direzione a zigzag su EURUSD? E hai usato noisefilter mentre lo facevi?

2) La "discretizzazione" dei predittori, che avete descritto nei vostri articoli, peggiora la qualità dell'apprendimento



3) Voglio provare a fare una specie di meta-apprendimento, al livello più basso, il succo dell'idea è il seguente:

n1. addestrare un previsore sui dati

n2. tiriamo fuori tutte le regole che Forest ha generato e le presentiamo come nuovi predittori; ogni regola è un predittore quindi abbiamo 500-1000 regole. I predittori sembrano "scarsi", ma cosa si può fare?

P.3 Addestrare un nuovo modello sulle regole predittive...

L'idea è quella di

1) aumentare il numero di predittori

2) ottenere regole più complesse e profonde, cioè regole più gerarchicamente complesse

3) La foresta mostra la predizione come somma di tutte le regole (alberi), penso che se consideriamo non la somma di tutte le regole ma le regole separatamente allora possiamo separare meglio le etichette di classe, forse trovare alcune combinazioni uniche di regole ecc.

La domanda è: quello che ho appena scritto non è il solito gradient boosting?

4) E anche, dove ottenere quegli indicatori spettrali che usate satl, fatl ecc.

1. Mi ricordo questa storia del pacco. Pacchetto promettente.

2 Il miglior risultato con l'ensemble ELM è Acc=0,8+-0,1. Può essere fatto non solo connoisefilter. La precisione non è l'indicatore di qualità più importante per il TC. Per i nostri scopi è più importante avere la massima ricompensa media per barra su un particolare intervallo di tempo.

3. La discretizzazione rimuove il problema degli outlier e rende la relazione dei predittori con l'obiettivo più lineare. Ma non ho ancora ricevuto un miglioramento significativo nella qualità della classificazione. Continuerò a scavare in questa direzione. Sono emerse molte nuove tecniche.

4. Non capisco perché ti sei impantanato in una semplice foresta. L'area è ora arata su e giù. Ci sono dozzine di nuove opzioni RF. L'ultimo esotico e ancora grezzo è gensemble. Una foresta nei cui nodi può essere annidato qualsiasi modello, non solo un albero decisionale.

Provate le soluzioni off-the-shelf, non c'è bisogno di reinventare la ruota, meglio imparare a cavalcare bene quelle già pronte.

Sono in procinto di implementare un pacchetto di integrazione Python con MT5, peccato che abbiano interrotto l'integrazione con R.

Buona fortuna

 
È un argomento interessante. Anche se non sono un matematico e lontano dall'apprendimento automatico, posso capire qual è il problema. E so come risolverlo. Non puoi creare un sistema di autoformazione se non sai quando il mercato inizierà a muoversi, se inizierà affatto, e se inizierà quando finirà, e se potrai guadagnare su questo movimento. Devi creare un modello funzionante, cioè devi già avere un sistema redditizio. E poi, partendo da esso, impostare l'algoritmo per confrontare e migliorare il sistema. Ho seguito questa strada e ho creato un semplice algoritmo, anche se per il trading manuale. Vedi l'argomento di interesse Come aumentare il tuo conto di 1000 volte.https://www.mql5.com/ru/forum/330313
Как увеличить счет в 1000 раз.
Как увеличить счет в 1000 раз.
  • 2020.01.12
  • www.mql5.com
Как увеличить счет в 1000 раз. Мне удалось пройти почти половину пути к этой цели. Результат счет за четыре месяца удалось увеличить в 28 раз...
 
Vladimir Perervenko:

2. il miglior risultato con l'insieme ELM è Acc=0.8+-0.1. l'elaborazione dei campioni di rumore è obbligatoria. Può essere fatto non solo connoisefilter.

Guarda, ecco i risultati di xgboost

zigzag, classificazione, orologio eura, senza rimuovere campioni di rumore, predittori (pca e indicatori), nessuna preparazione dei dati, basta ammucchiare tutto e andare

errore su OOS

[1] "Final Accuracy = 77.16%"

Quindi anche gli alberi non sono male, e se si toglie il rumore ...

Vladimir Perervenko:

La precisione non è il fattore di qualità più importante per la ST. Per i nostri scopi è più importante avere la massima ricompensa media per barra su un certo intervallo di tempo.

E come può essere espresso come variabile obiettivo?


Vladimir Perervenko:

3. La discretizzazione rimuove il problema degli outlier, rende la relazione dei predittori con l'obiettivo più lineare. Ma non ho ancora ottenuto un miglioramento significativo nella qualità della classificazione. Continuo a scavare in questa direzione. Sono apparse molte nuove tecniche.

L'importante è non peggiorare la situazione, personalmente ho bisogno della discretizzazione per la trasformazione in dati categorici, preferibilmente senza perdita di informazioni. Di nuovo, tutto questo è necessario per creare delle regole.

Vladimir Perervenko:

4. Non capisco perché ti impantani in una semplice foresta.

Sono piuttosto impantanato nelle regole decisive in generale... Lei è interessato ai modelli di ricerca, lo capisco, ma io sono interessato al processo stesso ed è lì che serve l'interpretabilità.

L'"apprendimento standard" che tu e (il 99,9% degli altri) fate ha un difetto in relazione al mercato.

Con "apprendimento standard" intendo che i dati sono rappresentati come una matrice (una riga è un set di allenamento con un'etichetta di classe), e questo modello non vede altro che la riga della matrice.

Se immaginiamo che il mercato sia un modello event-driven, e sono sicuro che lo sia, allora modelliamo una situazione.


se l'evento 1allora l'evento 2 allora l'evento 3 allora Y == 1

Come vedi questa regola )))) (questa è un'altra risposta sul perché mi sono impantanato nelle regole)

E se l'evento 1 è accaduto una settimana fa e l'evento 2 è accaduto ieri?

Che cosa succede se l'evento 1 può accadere una settimana fa e 5 minuti fa quelli non regolarmente, e così con ogni evento, la cosa principale che gli eventi si verificano e nel giusto ordine.

Nessun AMO troverà mai queste regolarità quando i dati sono in forma di matrice con dati tracciati usando il metodo della finestra scorrevole.

Quindi è questo che sto dicendo, eh ... Come si possono cercare modelli che si verificano in un lasso di tempo non regolare?

Ecco il mio tentativo di trovare qualcosa che dovrebbe cercare di rispondere a queste domande


alla ricerca di regole associative - il pacchetto arules.

Potete trovare tali regole con cui Y è associato e non importa in quale sequenza queste regole si presentino

ricerca di sequenze di regole associative arules seqence

Si possono trovare tali regole a cui Y è associato, ma tenendo conto della sequenza di queste regole.

Analisi profonda e clustering delle sequenzeTraMineR

Generazione di regole genetiche SDEFSR

L'essenza del pacchetto non è prevedere Y ma spiegarlo, un algoritmo che cerca di spiegare quali eventi dovrebbero accadere nella matrice di apprendimento perché Y appaia


Tutti questi approcci in teoria dovrebbero aumentare notevolmente il potenziale delle nostre attuali capacità di previsione.

E come potete vedere tutti si basano su regole logiche)

 
MrBobr1:
Argomento interessante. Anche se non sono un matematico e lontano dall'apprendimento automatico, capisco qual è il problema. E so come risolvere il problema. È impossibile creare un sistema di autoapprendimento se non sappiamo quando il mercato comincia a muoversi, se comincia affatto, e se comincia quando finisce e se è possibile trarre profitto da questo movimento. Dobbiamo creare un modello funzionante, cioè un sistema redditizio. E poi, partendo da esso, impostare l'algoritmo per confrontare e migliorare il sistema. Ho seguito questa strada e ho creato un semplice algoritmo, anche se per il trading manuale. Vedi l'argomento di interesse Come aumentare il tuo conto di 1000 volte.https://www. mql5.com/ru/forum/330313

Ho guardato metà di questo thread, ma non ho ancora capito il succo del discorso)

 
mytarmailS:

Ho guardato metà di questo thread e ancora non capisco qual è il punto)

il punto è che una singola corsa ha una probabilità diversa da quella di un insieme e può essere qualsiasi cosa.

 
mytarmailS:

Ho guardato a metà di questo thread, ma non ho ancora capito il succo del discorso).

È semplice. Non bisogna cercare di capire tutto il mercato. E non fidatevi del robot per cercare questi modelli in tutto il mercato. Prendete solo una piccola parte del mercato. E confida che il robot cerchi i modelli solo in parti simili del mercato. O trovare questi modelli da soli. Ci sono situazioni nel mercato in cui la probabilità di guadagnare è molto più alta di quella di perdere. E ci sono situazioni in cui è meglio restare fuori dal mercato. E ci sono molte di queste situazioni. Quindi, prendi solo questa parte del mercato e ignora tutti gli altri movimenti, e crea un algoritmo di trading.

 
mytarmailS:

Ho guardato metà di questo thread e ancora non capisco qual è il punto).

È come leggere mezzo libro e non capire nulla. Alcune persone sono riuscite ad aumentare i loro conti di centinaia di volte, mentre io ci sono riuscito decine di volte, e un autore ha scritto nel ramo che è riuscito ad aumentare i suoi conti di 1000 volte. Quindi, ci sono delle regolarità nel mercato, ed è con queste regolarità che dobbiamo lavorare.https://www.mql5.com/ru/forum/330313


Как увеличить счет в 1000 раз.
Как увеличить счет в 1000 раз.
  • 2020.01.12
  • www.mql5.com
Как увеличить счет в 1000 раз. Мне удалось пройти почти половину пути к этой цели. Результат счет за четыре месяца удалось увеличить в 28 раз...
 
MrBobr1:

È semplice. Non devi cercare di capire tutto il mercato. E non fidatevi di un robot per cercare questi modelli in tutto il mercato. Prendete solo una piccola parte del mercato. E confida che il robot cerchi i modelli solo in parti simili del mercato. O trovare questi modelli da soli. Ci sono situazioni nel mercato in cui la probabilità di guadagnare è molto più alta di quella di perdere. E ci sono situazioni in cui è meglio restare fuori dal mercato. E ci sono molte di queste situazioni. Quindi, prendi solo questa parte del mercato e ignora tutti gli altri movimenti e crea un algoritmo di trading.

È quello che facciamo qui, ma a un livello diverso...

Ecco un algoritmo... un solving tree o desing tree.

Che cos'è?

Questa è una regola logica che può essere considerata come una marcatura di una parte del mercato, o si può immaginare che questo sia un micro sistema di trading per questa parte del mercato. Poi andiamo ancora oltre e aggiungiamo molte di queste regole(micro-sistemi), a volte migliaia in uno, sarà un algoritmo Forest

 
MrBobr1:

È semplice. Non devi cercare di capire tutto il mercato. E non fidatevi di un robot per cercare questi modelli in tutto il mercato. Prendete solo una piccola parte del mercato. E confida che il robot cerchi i modelli solo in parti simili del mercato. O trovare questi modelli da soli. Ci sono situazioni nel mercato in cui la probabilità di guadagnare è molto più alta di quella di perdere. E ci sono situazioni in cui è meglio restare fuori dal mercato. E ci sono molte di queste situazioni. Quindi, prendi solo questa parte del mercato e ignora tutti gli altri movimenti e crea un algoritmo di trading.

No, non lo farà.
 
MrBobr1:

È come leggere mezzo libro e non capire nulla. Alcune persone sono riuscite a centuplicare i loro conti, e io li ho ripetutamente decuplicati, e un autore ha scritto in un thread che è riuscito ad aumentare i suoi conti di mille volte. Quindi, ci sono delle regolarità nel mercato e bisogna lavorare con queste regolarità.https://www.mql5.com/ru/forum/330313

L'ho cercato e non l'ho capito, perché non ho visto nessun algoritmo chiaro di azioni, e non ne ho visto neanche uno non chiaro, non ne ho visto affatto, solo immagini e post con il 1000% di share.