L'apprendimento automatico nel trading: teoria, modelli, pratica e algo-trading - pagina 3170
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Questa è l'immagine vista da quasi tutti gli utenti del tester. Mi interessa la spiegazione.
In questa immagine, la significatività statistica è piuttosto elevata: più di 3000 posizioni non sovrapposte.
Presumo che questo sia l'effetto dei cambiamenti di mercato all'interno di Sample stesso. Ad esempio, il campione ha avuto un vero e proprio pattern all'inizio e poi niente. Ma l'adattamento è avvenuto per l'intero campione.
Dovremmo evitare in qualche modo tali rotture all'interno del campione.
Può verificarsi anche l'effetto opposto: a sinistra OOS - in basso, a destra - in alto. In altre parole, nella parte iniziale del campione non è stato trovato alcun modello, ma solo un adattamento.
Suppongo che si tratti di sovrallenamento o di non stazionarietà. A meno che, ovviamente, non ci siano problemi con i dati grezzi o con l'algoritmo stesso.
Di solito cerco di "spostare" un po' il problema, cambiando leggermente tutti i parametri possibili (e i metaparametri disponibili) e vedendo come cambia il risultato. A volte diventa un po' più chiaro.
Forum sul trading, sui sistemi di trading automatizzati e sulla verifica delle strategie di trading.
L'apprendimento automatico nel trading: teoria, modelli, pratica e algo-trading
fxsaber, 2023.08.16 11:38 AM
Questo è il tipo di assurdità che accade. A sinistra OOS passa, a destra - non. E il lato destro letteralmente "si tuffa" immediatamente.
Riesci a vedere che l'OOS passa a sinistra?
Riuscite a vedere l'OOS che passa sulla sinistra?
Duplicare completamente l'esperimento, ma con dati sintetici.
======================================
L' OOS a sinistra è anch'esso un adattamento, ma di un tipo del secondo ordine
Immaginate di avere solo 1000 varianti di TC, in generale.
i passi 1 e 2
1) Si inizia a ottimizzare/ricercare un buon TS, questo è il treno di dati (adattamento/ricerca/ottimizzazione).
Supponiamo di aver trovato 300 varianti in cui il TC rende...
2) Ora state cercando un TC tra queste 300 varianti che superi l'OOS nei dati di test. Avete trovato diciamo 10 TC che guadagnano sia sulla traccia che sul test ( OOS ).
Quindi qual è il punto 2?
È la stessa continuazione del fitting, solo che la vostra ricerca(fitting/ricerca/ottimizzazione) è diventata un po' più profonda o più complessa, perché ora non avete una condizione di ottimizzazione (passare la traccia), ma due (passare il test + passare la traccia).
Questa è l'immagine vista da quasi tutti gli utenti del tester. Sono interessato alla spiegazione.
In questa immagine, la significatività statistica è piuttosto elevata: più di 3000 posizioni non sovrapposte.
Presumo che questo sia l'effetto dei cambiamenti di mercato all'interno di Sample stesso. Ad esempio, il campione ha avuto un vero e proprio pattern all'inizio e poi niente. Ma l'adattamento è avvenuto per l'intero campione.
Dovremmo evitare in qualche modo tali rotture all'interno del campione.
Può verificarsi anche l'effetto opposto: a sinistra OOS - in basso, a destra - in alto. In altre parole, nella parte iniziale del campione non è stato trovato alcun modello, ma solo un adattamento.
L'OOS deve essere sempre a DESTRA.
Se l'OOS è a SINISTRA, non c'è modo di garantire che il CT non sia sovrallenato e non stia guardando avanti. Queste sono le prime questioni importanti da affrontare quando si testa un TC PRIMA di qualsiasi altra cosa.
Quale avete? Non fa differenza! Non importa se si tratta di uno dei due o di entrambi. È necessario eseguire il test correttamente e basta - OOS a destra.
È meglio dimenticare il tester e formare i file per i test come segue:
Abbiamo due file.
Il primo file è diviso casualmente per campione in tre parti: formazione, test e validazione. Eseguite uno studio su un campione (casuale) di addestramento, poi verificate un campione casuale di test e di convalida: sono tutti pezzi DIVERSI del primo file. Confrontate i risultati. Se sono approssimativamente uguali, controllate il secondo file di "sequenza naturale". Se anche in questo caso sono approssimativamente uguali, otteniamo la conclusione principale: la nostra CT NON è sovrallenata e NON guarda avanti. Solo a partire da questa conclusione ha senso parlare di tutto il resto: precisione, redditività e altre cose, che sono tutte secondarie.
Noto che in realtà non ci sono altri modi per verificare la capacità di guardare avanti e di riqualificarsi.
Questo è il genere di cose che accade. A sinistra passa OOS, a destra no. E sul lato destro, si "tuffa" immediatamente.
Succede quasi sempre.
Cioè, letteralmente, si immerge immediatamente in modo significativo. La natura dell'immersione non è chiara. Penso che dovrebbe essere qualcosa di vicino a SB, ma vedo troppo spesso un'immagine del genere.
Sembra che se si esegue un TC invertito dopo l'ottimizzazione, non si riesca nemmeno a drenare.
Il P-hacking (o data-dredging) è una pratica statistica in cui un ricercatore analizza i dati fino a trovare un risultato statisticamente significativo. Può modificare i parametri dell'analisi, selezionare solo alcuni dati o effettuare confronti multipli per trovare relazioni o differenze significative nei dati. Questo può portare a falsi positivi e a distorcere le conclusioni scientifiche. Il P-hacking è una forma di disonestà scientifica e può portare a raccomandazioni e decisioni errate basate su false premesse.
Riuscite a vedere l'OOS che passa sulla sinistra?
Se il periodo di formazione viene ridotto, l'inversione di tendenza del grafico avverrà altrettanto rapidamente?
Non so molto sulle strategie a tick, ma uno dei fattori di questo comportamento è la mancanza di dati comparabili durante l'addestramento, per esempio - l'addestramento era per lo più in trend negativo su alcuni TF.
Non so quale metodo di formazione stiate utilizzando, ma se si tratta di sistemi ad albero o di filtri che limitano l'intervallo di un indicatore condizionale (funzione), vale la pena di stimare il numero di esempi che rientrano in ciascuno di tali intervalli.
Una situazione possibile è la deriva dei dati e lo spostamento della distribuzione di probabilità dei risultati per il filtro/lista.
Ad esempio, quando seleziono segmenti quantistici su un campione per l'addestramento e poi stimo la loro distribuzione (percentuale di risposte corrette ed errate all'obiettivo 0||1) su altri due campioni, il soddisfacimento del criterio di stabilità su 3 campioni si trova nell'intervallo 25%-30% - è chiaro che in questo caso il modello ha più possibilità di scegliere un predittore instabile, che smetterà di funzionare su uno dei siti.
Alla fine, tutto si riduce all'analisi di semplici regolarità, cioè alla ricerca di motivi per considerarle tali, piuttosto che all'osservazione casuale della coda di una cometa in un telescopio.
Riuscite a vedere l'OOS che passa sulla sinistra?
Per quanto tempo il sistema rimane redditizio?
Ho riscontrato un comportamento simile del sistema, quando sull'OOS a destra c'è una brusca prugna, non credo che sia direttamente collegata a una brusca inversione di 180 gradi dei pattern di mercato trovati (indicherebbe ragioni di natura mistica, applicazione di pratiche voodoo e in generale qualsiasi cosa piuttosto che problemi reali come la riqualificazione o l'aggiustamento, perché è almeno strano, quando una brusca prugna si verifica sempre dopo la fine della formazione). Di solito è dovuto ad alcuni errori nel codice che causano falsi positivi (o falsi negativi) come ha detto Max sopra, la cui correzione porta a un comportamento casuale sulla destra dell'OOS nel caso peggiore (sovrallenamento) o a un graduale affievolimento della redditività nel caso migliore (affievolimento dei modelli trovati e/o loro graduale cambiamento).
Per quanto tempo il sistema rimane redditizio?
Ho riscontrato un comportamento simile del sistema, quando in OOS sul lato destro c'è un brusco crollo, non credo che sia direttamente collegato a una brusca inversione di 180 gradi dei pattern di mercato trovati (indicherebbe ragioni di natura mistica, l'applicazione di pratiche voodoo e in generale qualsiasi cosa piuttosto che problemi reali come la riqualificazione o l'aggiustamento, perché è almeno strano, quando un brusco crollo avviene sempre dopo la fine della formazione). Di solito è dovuto ad alcuni errori nel codice che causano falsi positivi (o falsi negativi) come ha detto Max sopra, la cui correzione porta a un comportamento casuale sulla destra dell'OOS nel caso peggiore (sovrallenamento) o a un graduale affievolimento della redditività nel caso migliore (affievolimento dei modelli trovati e/o loro graduale cambiamento).
E se il TS ha molti parametri o è molto ben adattato, i cali sono sempre bruschi. Perché ha lavorato "sul sottile". Un numero elevato di parametri porta a errori crescenti, che si sommano. Se anche solo si sgrossa la TS e si fanno meno parametri, non è così bella nel tester, ma crolla più dolcemente.
Possiamo fare un'analogia con il poker a martingala. C'è un gran numero di posizioni fallite. Sostituitelo con un gran numero di parametri falliti o con qualcos'altro. Il risultato è lo stesso.Ho aggiunto la visualizzazione dei grafici sui sottocampioni del test e dell'esame e ho tagliato il treno - rimuovendo il pezzo iniziale in modo che le immagini fossero compatibili.
In effetti, si tratta di sezioni temporalmente sequenziali di treno->test->esame.
Dopo aver osservato la gif, risulta chiaro che i campioni del test e dell'esame hanno ridotto l'ampiezza dell'oscillazione piuttosto che ottenere una tendenza in qualsiasi direzione.
Tuttavia, se si osserva con attenzione, si può notare che ad alcune iterazioni c'è un miglioramento su questi campioni, cioè si può supporre che queste siano le regole (sotto forma di segmenti quantici) che mostrano stabilità su campioni diversi. Si può anche notare che le diverse sezioni cambiano in modo diverso da un'iterazione all'altra, vale a dire che il miglioramento nel test non ha una correlazione diretta con il miglioramento nell'esame.
Come ho scritto sopra, ciò si spiega con la variazione della polarizzazione della probabilità di appartenere a una classe di un singolo segmento quantistico.
Gli stessi segmenti quantici, come segnale per saltare il segnale target, cioè per portarlo a zero, o in altre parole per dividere il campione in due parti, sono selezionati in base alla stima del loro costo. In altre parole, viene stimato il costo della riduzione dei segnali errati. A ogni iterazione viene eseguito il ricalcolo e la variante con il prezzo più basso viene rimossa.
Ecco come cambia il prezzo in base a uno dei metodi di calcolo. Di seguito è riportata una gif in cui ogni punto è un segmento quantico (l'asse x è un numero di sequenza).
Il risultato cambierà in modo significativo sui campioni di prova/esame se il prezzo viene scelto in modo casuale alla prima iterazione?
Tra le iterazioni 4 e 5, possiamo notare come il sottocampione d'esame perda drasticamente il numero di risposte corrette dell'obiettivo, il che porta immediatamente a una divergenza (il delta aumenta) con il campione d'esame.