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

 
Dr.Trader:

Vtreat è meglio. Valuta tutto statisticamente, quanto è buono/cattivo il predittore nel complesso per predire la variabile obiettivo, senza aggiustare per un particolare modello di predizione. Si raccomanda di usare predittori con un punteggio massimo di 1/(numero di predittori). Per esempio, se ci sono 200 predittori, potete prendere da loro solo quelli che hanno una valutazione inferiore a 1/200. È possibile stimare i predittori e se tutte le stime sono superiori alla soglia - invece di tentare senza successo di insegnare il modello e prevedere nuovi dati è meglio iniziare a cercare altri predittori.

Ci sono un paio di svantaggi - il pacchetto lavora con i predittori uno per uno, e non tiene conto della loro interazione. Inoltre non mi piace che anche se ci sono predittori completamente identici, o altamente correlati - vtreat non rimuove quelli ripetitivi, a volte questo è molto fastidioso.

In realtà i predittori correlati sono il male.

Forse il pacchetto richiede una pre-elaborazione dei predittori in generale, per esempio scalatura, centratura, rimozione di ..... correlati come in caret

Forse sì?

 
SanSanych Fomenko:

In realtà i predittori correlati sono il male.

Forse il pacchetto ha bisogno di pre-elaborazione dei predittori in generale, per esempio scalatura, centratura, rimozione di ..... correlati come in caret

Forse sì?

A proposito, nessuno ha cancellato il data mining. C'è un articolo fantastico su questo argomento da parte del nostro collega qui sul sito. Purtroppo l'autore non partecipa a questo thread.
 
Dr.Trader:

Bel toolkit che hai sviluppato per valutare l'euristica, solido. Avete dimostrato che il metodo di formazione del modello (comitato) che avete sviluppato non è adatto al forex, ma poi?


Non hai ancora messo un punto sul metodo. È intrigante se non altro perché 1/3 dei migliori modelli in addestramento e test passano attraverso altri 5 anni di convalida con un plus. Se solo tutti avessero delle perdite.

Inoltre, c'è un altro pensiero riguardo al mio grafico. Se un modello è così buono che il 95% dei suoi valori si trova sopra lo 0 sulla convalida, allora si può dimenticare la relazione convalida/test e prendere qualsiasi modello allenato.

Questo è il punto di cercare modelli potenti (con buoni effetti di generalizzazione).

 
Leggo sempre argomenti del genere (non solo su questo forum) dove si cerca di costruire teorie di trading complesse.
Algoritmi genetici, reti neurali, formule contorte che solo l'autore capisce, ecc.

E vedo sempre che tali sistemi non funzionano sul mercato. Il monitoraggio va a zero o a meno.
Ma nel prossimo thread qualcuno guadagna usando un Expert Advisor su due slittamenti. E guadagnano bene.

La domanda è: tutto questo ha un senso?
Perché nella mia esperienza, più il sistema è semplice e chiaro, più è redditizio.
 
SanSanych Fomenko:

.... Ma solo dopo che il rumore è stato eliminato. E il fatto che non ci sia rumore è determinato dall'invarianza approssimativa delle prestazioni del modello su diversi campioni. Non è il valore assoluto dell'errore di predizione, ma il fatto dell'uguaglianza approssimativa degli indicatori di prestazione che (l'uguaglianza) può essere interpretato come una prova dell'assenza di sovrallenamento del modello.

Voglio anche risponderti.

Qui state guardando l'uguaglianza degli indicatori. Lei lo chiama mancanza di sovrallenamento. Ma avete mai provato a stimare la reale mancanza di sovrallenamento testando il vostro modello selezionato con un altro campione - quello ritardato? L'uguaglianza su una parte dei dati non degenererebbe in un modello adatto a quei dati, e il modello si svuoterebbe in futuro? Seguo uno schema simile nella mia ricerca.

 
Leggi di elasticnet. È un metodo e un pacchetto. Regolarizzazione ibrida per modelli lineari. La correlazione dei predittori è appena gestita lì.
 
Qualcuno addestra i propri modelli separatamente per i bye e i selfie?
 
Alexey Burnakov:

Voglio rispondere anche a te.

Qui state guardando l'uguaglianza degli indicatori. Lei lo chiama mancanza di sovrallenamento. Avete provato a valutare la reale mancanza di sovrallenamento testando il vostro modello selezionato con un altro grande campione - un campione ritardato? L'uguaglianza su una parte dei dati non degenererebbe in un modello adatto a quei dati, e il modello si svuoterebbe in futuro? Seguo questo schema nella mia ricerca.

Ho un mio algoritmo per setacciare il rumore.

Se applicato, su predittori selezionati allena il modello, poi su qualsiasi campione la performance di questo modello è circa uguale. I miei pensieri sugli intervalli di confidenza vengono da qui, per sbarazzarsi delle parole "approssimativamente uguali".

Dirò di più.

La pratica sembra diversa.

Si deve lavorare alla finestra. Quindi per lavorare nella finestra inizio a selezionare i predittori dal mio set di predittori preselezionato da rfe da caret. Per una particolare finestra ottengo un sottoinsieme che riduce l'errore del 5-7%. Lo faccio una volta alla settimana su H1. Questo sottoinsieme viene cambiato il prossimo fine settimana. Vivo così dall'anno scorso.

Ma sbarazzarsi del rumore in anticipo è un must. Se non lo faccio vedrò meraviglie.

 
Non credo che abbia senso costruire due modelli con risultati opposti:
Chi addestra i suoi modelli separatamente per comprare e vendere?

Prevedo solo 2 classi - "comprare" e "vendere", il che significa che avrò sempre qualche trade aperto. Io lavoro con un solo modello, non vedo il senso di fare due modelli che danno risultati opposti.

Ma vorrei cambiare gradualmente in 3 classi - "comprare"/"chiudere tutto e non commerciare"/"vendere". Questo darebbe l'opportunità di fare trading con una strategia più complessa. Ho provato un paio di volte, ma ho avuto problemi con l'addestramento di modelli a tre classi, specialmente se il modello è regressivo seguito dall'arrotondamento del risultato alle classi.
Penso che valga la pena provare a creare due modelli con le classi originali 1/0/-1 trasformate in 1/0/0 per il primo modello(solo acquisto), e 0/0/1 per il secondo modello (solo vendita). Questo porterebbe a classi sbilanciate in ogni modello (il numero di esempi con una classe è molto più alto dell'altro), ma ho trovato buone metriche per valutare i modelli che funzionano in tali condizioni - F-score e kappa. Non ho ancora fatto nulla in questa direzione, ma un tale piano sembra abbastanza possibile.

 
SanSanych Fomenko:

In realtà i predittori correlati sono il male.

Forse il pacchetto ha bisogno di pre-elaborazione dei predittori in generale, per esempio scalatura, centratura, rimozione di ..... correlati come in caret

Forse sì?

No, vtreat non analizza affatto le interazioni tra predittori, purtroppo. Li studia rigorosamente uno alla volta. Non è un pacchetto grafico:(
Non credo che il ridimensionamento o la centratura farebbero alcuna differenza. E se si abilita l'opzione y-aware - il pacchetto scalerà e centrerà i dati stessi.

Interessante articolo di Vladimir, grazie per il link. L'analisi dell'interazione tra predittori è proprio in tema.