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

 

Immagino che tutti i problemi dell'uso di MO nel trading siano risolti e che si possa passare alle immagini?

È un peccato. Il filo sembra essersi asciugato.

 
Vladimir Perervenko:

Immagino che tutti i problemi dell'uso di MO nel trading siano risolti e che si possa passare alle immagini?

È un peccato. Il ramo sembra essersi seccato.

Avete letto tutte le 452 pagine? )
 
Yuriy Asaulenko:
Avete davvero letto tutte le 452 pagine? )

Sapete una cosa?

L'ho letto.

 
Vladimir Gribachev:

Sapete una cosa?

L'ho sicuramente letto.


Io solo selettivamente).

Ma l'argomento è già così grande che è quasi impossibile trovarci qualcosa di specifico. Ci ho provato, l'ho trovato su 300 pagine. Ma ci vuole troppo tempo).

 
Vladimir Perervenko:

Suppongo che tutti i problemi dell'uso di MO nel trading siano stati risolti e che si possa passare alle immagini?

Più i vecchi problemi sono risolti, più i nuovi sono irrisolti.

Qualche tempo fa ho iniziato ad imparare a prevedere non la direzione in cui il prezzo andrà (2 classi su e giù), ma a prevedere la quantità di aumento del prezzo per barra (regressione). È più complicato, ma tali risultati sono molto più chiari.

Se si può ottenere la classificazione con una precisione del 60% e un bel grafico, è molto più difficile ottenere un R^2 positivo nella regressione. Sembra impossibile raggiungere R^2 = 1 sulla base dei dati disponibili nel terminale.
Ma mentre la classificazione di solito dà buoni risultati sul backtest e scarsi sul fronttest, la regressione con una corretta crossvalidazione fa apparire male anche il backtest, il che di per sé indica scarsi risultati sui nuovi dati, non false aspettative.

Aggiungendo diversi metodi di crossvalidazione provati, e provando diversi modelli - si scopre che anche un modello stabile ben addestrato non è possibile, non ci sono abbastanza dati. Probabilmente può essere risolto solo con abbonamenti a pagamento per predittori di alta qualità.

Per quanto mi riguarda finora ho preso la seguente direzione - per prevedere l'aumento del prezzo su M5, addestrare il modello su ogni nuova barra, limitare il commercio per tempo a non più di un paio d'ore al giorno, e il tempo stesso del commercio dovrebbe essere selezionato in qualche modo, per esempio ho visto molti Expert Advisors nel mercato che lavorano solo un paio d'ore a mezzanotte quando i grandi scambi non stanno lavorando. Usare timeframe inferiori a M5 o lavorare in tick sembra essere impossibile, perché lo spread divorerà tutti i profitti. Se funziona, sarà fantastico.

 

Anche il Forex, secondo le mie osservazioni, è molto artificiale. I prezzi a volte si comportano completamente contro i modelli trovati in precedenza, o viceversa, ci sono modelli che si ripetono da anni e il prezzo si comporta o secondo loro, o contro di loro, per essere a zero in media.
Se non avessi visto il mio profitto personale usando i Market Advisors, avrei rinunciato a studiare il MO al Forex molto tempo fa. Ma visto che ci sono esempi di successo, c'è qualcosa per cui lottare.

 
Ildottor Trader:

Anche il Forex, secondo le mie osservazioni, è molto artificiale. I prezzi a volte si comportano completamente contro i modelli trovati in precedenza, o viceversa, ci sono modelli che si ripetono da anni e il prezzo si comporta o secondo loro, o contro di loro, per essere a zero in media.
Se non avessi visto il mio profitto personale usando i Market Advisors, avrei rinunciato a studiare il MO al Forex molto tempo fa. Ma in questo caso ha successo, quindi c'è qualcosa per cui lottare.

Non solo, ma recentemente ho scaricato due storie da diversi grandi DC ben noti. Due grandi differenze. Non posso commerciare su uno di essi, fa paura persino guardarlo). E il secondo è abbastanza normale, almeno la storia è normale. Che cosa c'era on-line, non lo sappiamo).
 

Esperimento. Che ne dici di prendere diversi gbpusd, usdchf, usdrub e altri simboli popolari e usarli per prevedere l'eurusd.

Qui ci sono due tabelle in atache, train.csv e test.csv, in essi l'obiettivo è la crescita di eurusd m5 per la prossima barra, e i predittori sono audusdOpen[0]-audusdOpen[1], audusdOpen[2]-audusdOpen[3], audusdOpen[3]-audusdOpen[4], eurusdOpen[0]-eurusdOpen[1], eurusdOpen[1]-eurusdOpen[2], ecc. Ci sono 12 simboli in totale, gli incrementi delle precedenti 3 barre della storia sono presi da ciascuno di essi. In generale, tutto è chiaro dal nome delle colonne.
La tabella di allenamento ha 10000 righe, cioè circa 7 settimane.

Ho provato ad addestrare un modello e ho ottenuto r^2 = 0.0006164161 sui dati di allenamento, e se arrotondiamo target e risultati alle classi -1 e 1, la precisione è 0.5052. Questo è molto brutto. Ma non è realistico prendere decine di barre per ogni esempio di allenamento e decine di personaggi stessi, il mio modello su queste centinaia di colonne richiederà settimane di allenamento.
Sul testbed, i risultati di convalida del modello sono in calo, r^2 = -0,003390913 e precisione 0,4907. Casuale era, casuale è, e lo è ancora.

Ma è tutto noioso e inconcludente.
È stato interessante quando ho guardato quali pesi il modello ha dato ad ogni predittore (più alto è il peso, meglio è):


Conclusione: cercare di prevedere la direzione di eurusd sulla prossima barra m5 è meglio usare audusd, usdrub, usdsgd in primo luogo

File:
 
Ildottor Trader:

Conclusione: cercare di prevedere la direzione di eurusd sulla prossima barra m5 è meglio usare audusd, usdrub, usdsgd in primo luogo

aggiungere 10-30 colonne più casuali per interesse

 

Ad essere onesti, questo approccio (prevedere il movimento qui e ora) è un fiasco per me. Provate a prevedere i livelli a cui il prezzo arriverà in un certo periodo di tempo, per esempio un giorno, i risultati saranno molto migliori.

Motivazione: