Risposta

Un metodo di prova in avanti simulato

15 risposte

coensio

Cliente, bbp_partecipante, comunità, 106 risposte.

Visita il profilo

5 anni fa #238863

Voglio quindi proporre un metodo di validazione chiamato 'test di avanzamento simulato'. (Non si tratta di WF o WFM, WF/WFM è un argomento diverso, inoltre non è un test OOS come quello utilizzato durante la generazione della strategia).

Il test di avanzamento simulato è fondamentalmente un test simile a una "camminata in avanti" del vostro "flusso di lavoro/metodo di progettazione della strategia totale".

Negli ultimi mesi ho cercato di sviluppare un flusso di lavoro completamente automatizzato utilizzando il modulo "progetti personalizzati" di SQ-X e ho ottenuto risultati molto interessanti (che pubblicherò in un altro topic). La mia piccola scoperta si è basata sull'osservazione che la maggior parte dei trader, e persino i trader esperti che tengono corsi online, partono dal presupposto di avere ragione sul metodo di convalida della propria strategia in base alla loro esperienza e ai risultati ottenuti in passato. Non c'è nulla di sbagliato in questo presupposto, ma può essere un errore per i nuovi trader o per le persone che stanno cercando di progettare i propri metodi di progettazione delle strategie.

Quello che si vede in questo forum e in tutti gli altri luoghi è quanto segue:

1. Tutti i trader hanno le loro idee o i loro metodi per generare strategie e li utilizzano per generare i loro nuovi sistemi.

2. Nel 90% dei casi i nuovi trader generano ed eseguono i loro sistemi su conti demo (o piccoli conti live) per vedere se le loro strategie sono redditizie o meno.

3. Il risultato è una metodologia "genera e spera".

A mio parere, l'approccio corretto dovrebbe essere il seguente:

1. All'inizio si sviluppa o si impara un nuovo flusso di lavoro per la progettazione della strategia (un nuovo metodo di progettazione del sistema che comprende la generazione/test/validazione della strategia e la selezione della stessa).

2. Per verificare se il vostro metodo funziona, tornate indietro nel tempo e fate finta di vivere nel passato, ad esempio nel 2014. Questo è il vostro punto di riferimento.

3. Quindi sviluppate una quantità sufficiente (significativa) di strategie utilizzando il vostro flusso di lavoro con dati 2014 è vietato per evitare qualsiasi tipo di "Data Mining Bias".

4. Quindi si esegue il test TUTTI Le strategie che hanno superato il flusso di lavoro e la selezione delle strategie su un periodo di previsione simulato (il vostro futuro simulato) >2014 e verificate quante delle strategie selezionate hanno funzionato per voi. Lo fate senza imbrogliare o ingannare voi stessi, quindi utilizzate TUTTE le strategie che hanno superato con successo il vostro flusso di lavoro. Traete le vostre conclusioni in base a diversi criteri di accettazione/rifiuto che sono importanti per voi, ad es: Max DD, Net Profit, Red/DD, Stagnation ecc.... e scrivete la percentuale di efficacia del vostro flusso di lavoro, ad esempio: 65% delle strategie selezionate sono state redditizie (o non hanno superato il Max DD previsto) nel futuro simulato.

5. Ripetete l'intero processo selezionando un diverso punto di riferimento nel passato, ad esempio il 2016. E si ricomincia da capo generando, testando e selezionando nuove strategie. Quindi si testano TUTTE le strategie selezionate in un periodo simulato >2016.

È possibile ripetere questo processo molte volte, facendo "camminare in avanti" l'intero flusso di lavoro utilizzando i dati storici e verificando se il metodo di generazione delle strategie produce davvero strategie solide in un periodo di previsione simulato.

Un esempio di fasce orarie utilizzate in un tipico flusso di lavoro:

- Punto di riferimento (nel passato) = 2014.12.31 (è vietato utilizzare dati > 2015.01.01 fino a quando non avrete generato 30 strategie che abbiano superato il vostro flusso di lavoro e il vostro metodo di selezione per il trading live; questo può includere i metodi di costruzione del portafoglio)

- Il tuo primo IS/OSS per la generazione di strategie è ad es: IS: 2008.01.01...2011.06.01 e il vostro primo OOS è 2011.06.02...2014.12.31. 

- Il vostro secondo OOS2 per il controllo del cure-fitting è ad esempio: 2003.01.01...2007.12.31

- Tutti gli altri test di convalida (spread, operazioni saltate, MC, cross market ecc.) sono stati effettuati utilizzando dati <=2014.12.31

- Selezionate 30 strategie e testatele TUTTE sui dati >2015.01.01

Una volta che sarete sicuri del vostro flusso di lavoro e dei vostri risultati, potrete tornare al presente e generare/convalidare e selezionare nuove strategie e sentirvi sicuri che i sistemi selezionati hanno una significativa possibilità di essere redditizi nel prossimo futuro.

Volevo solo condividerlo perché questo approccio ha portato al mio primo piccolo passo avanti con il mio flusso di lavoro automatizzato 100%.

Conclusione: smettete di ingannare voi stessi, smettete di generare strategie basate su metodi non testati e smettete di sperare che funzionino bene in futuro...

Ogni commento è ben accetto 🙂

Gr

Chris

 

 

 

 

 

 

 

 

 

 

 

È un'affermazione falsa.

0

Ilya

Cliente, bbp_partecipante, comunità, 105 risposte.

Visita il profilo

5 anni fa #238864

Ciao Chris, grazie per gli approfondimenti, come ti ho già detto di persona, è un approccio interessante (e sensato).

Domanda: Esegui il test di forward simulato su tutte le strategie che generi e fai live-trading SOLO dopo che le strategie hanno superato questo test, o lo hai già fatto un numero significativo di volte con il tuo flusso di lavoro, fino a quando sei riuscito a regolare il tuo flusso di lavoro ad uno stadio soddisfacente (ad esempio 70% di strategie finali passano SFT), e da quel momento in poi hai semplicemente usato il tuo flusso di lavoro su tutti i dati fino ad oggi, e ti senti sicuro della sua redditività?

 

Saluti,

Ilya

0

Enric

Cliente, bbp_partecipante, comunità, sq-ultimate, 114 risposte.

Visita il profilo

5 anni fa #238865

Sì. Sembra un approccio interessante. Per favore, correggetemi se sbaglio; ho capito che lavorate in due fasi:

Fase 1: IS + OOS. Mi colpisce il fatto che usiate IS 3,5 anni e OOS 9,5 anni divisi in due parti. Wow! Sono molti. Ho letto da guru 'fidati' consigli di 50 IS + 50 OOS. Ho letto da altre persone 'fidate' che non si parla affatto di OOS, ma solo di IS e di forti test di robustezza. Bene, ti vedo con 75% OOS. In ogni caso, sei riuscito a trovare 30 buone strategie con i tuoi criteri. Ora passate alla fase 2

Fase 2: OOS per 4 anni; dal 2015 a oggi.

Se ho capito bene. Quante di queste 30 strategie sopravvivono alla seconda fase? Se posso chiedere

0

Ilya

Cliente, bbp_partecipante, comunità, 105 risposte.

Visita il profilo

5 anni fa #238866

Enric, solo un'osservazione, quando si usa l'OOS durante la generazione, si tratta essenzialmente di un IS, per il semplice fatto che scorriamo milioni (o decine di milioni o centinaia di milioni nel mio caso) di strategie, per trovare quelle che hanno un OOS redditizio, facendo atterrare la strategia nella banca dati. Quindi, nell'esempio, si tratta di 7 anni di IS e 9 di OOS. Non è comunque una combinazione comune 🙂

 

Ilya

0

coensio

Cliente, bbp_partecipante, comunità, 106 risposte.

Visita il profilo

5 anni fa #238868

Ciao Chris, grazie per gli approfondimenti, come ti ho già detto di persona, è un approccio interessante (e sensato). Domanda: Fai il test di forward simulato su tutte le strategie che generi e fai live-trading SOLO dopo che le strategie hanno superato questo test, o lo hai già fatto un numero significativo di volte con il tuo flusso di lavoro, fino a quando sei riuscito a regolare il tuo flusso di lavoro a uno stadio soddisfacente (ad esempio 70% di strategie finali passano SFT), e da quel momento in poi hai semplicemente usato il tuo flusso di lavoro su tutti i dati fino ad oggi, e ti senti sicuro della sua redditività? Saluti, Ilya

Utilizzo SFT solo a livello di "flusso di lavoro", quindi ogni volta che seleziono un nuovo punto di riferimento per testare il mio flusso di lavoro, ad esempio: 2014, 2015, 2016 o oggi, genero diverse nuove strategie da zero utilizzando esattamente lo stesso flusso di lavoro/metodo. Se vedo che la maggior parte delle strategie generate con un determinato metodo/flusso di lavoro sono state redditizie nel periodo di riferimento simulato (indipendentemente dal punto di riferimento selezionato), allora so che posso fidarmi del mio metodo e questo mi dà la certezza che le strategie generate oggi hanno la possibilità di essere redditizie in futuro. L'obiettivo di SFT è quindi quello di testare il vostro metodo, non le vostre strategie.

È un'affermazione falsa.

0

coensio

Cliente, bbp_partecipante, comunità, 106 risposte.

Visita il profilo

5 anni fa #238869

Sì. Sembra un approccio interessante. Per favore, correggetemi se sbaglio; ho capito che lavorate in due fasi: Fase 1: IS + OOS. Mi sembra che usiate IS 3,5 anni e OOS 9,5 anni divisi in due parti. Wow! È molto. Ho letto da guru 'fidati' consigli di 50 IS + 50 OOS. Ho letto da altre persone "fidate" che non si parla affatto di OOS, ma solo di IS e di forti test di robustezza. Bene, ti vedo con 75% OOS. In ogni caso, sei riuscito a trovare 30 buone strategie con i tuoi criteri. Ora passa alla fase 2 Fase 2: OOS 4 anni; dal 2015 a oggi. Se ho capito bene. Quante di queste 30 strategie sopravvivono alla seconda fase? Se posso chiedere.

Nota Step1: il rapporto IS/OOS 50/50 è solo durante la fase di generazione della strategia nel builder. Sì, ho seguito gli insegnamenti standard dei guru di SQ. Ma si noti anche che a causa di molte iterazioni utilizzando gli stessi blocchi di costruzione e la stessa impostazione di generazione della strategia, il primo OOS diventa IS. Ecco perché dovrebbe esserci sempre un secondo periodo di OOS per convalidare le strategie generate dal costruttore. A mio parere, questo è uno dei test più efficaci e, in base alla mia esperienza, vedo che il 95% delle strategie generate fallisce in questa fase.

Nota Fase 2: non etichettate questo periodo come OOS (so che è OOS, ma confonde solo le persone), è una sorta di futuro simulato, un forward simulato è un nome molto migliore. Prendendo come esempio il mio flusso di lavoro automatizzato, e supponendo che non ci siano bug che influenzano i miei risultati e che non abbia commesso errori stupidi, ora ottengo un'efficacia di 100% nei primi due anni del periodo di previsione simulato. Ciò significa che il 100% delle strategie che superano il mio flusso di lavoro sono redditizie in questo futuro simulato. Dopo 2 anni si assiste a un forte calo dell'efficacia delle strategie. Questo significa anche che ogni 2 anni devo generare nuove strategie. Ma voglio lasciare la discussione sul mio flusso di lavoro automatizzato per dopo...

 

 

 

È un'affermazione falsa.

0

Enric

Cliente, bbp_partecipante, comunità, sq-ultimate, 114 risposte.

Visita il profilo

5 anni fa #238871

Sì. Come hai detto tu, una volta che il periodo di OOS fa parte del processo di costruzione, diventa IS. Questo è il principale argomento contro l'uso di OOS; meglio usare solo IS perché alla fine è lo stesso. Sono curioso di conoscere il comportamento delle strategie durante il periodo di "simulazione in avanti", come Coesio chiede di chiamarlo. In particolare non sono convinto di questo approccio, dopo tutto mi sembra che l'OOS cresca sempre di più, quindi l'effetto sarà quello di sostituire l'algoritmo genetico con quello casuale, ma è anche un metodo di adattamento delle curve, no?

0

coensio

Cliente, bbp_partecipante, comunità, 106 risposte.

Visita il profilo

5 anni fa #238876

dopo tutto ciò mi sembra che l'OOS stia crescendo sempre di più

Vedo che siete ancora confusi su un aspetto importante. In SFT, il periodo di forward simulato, che voi chiamate "OOS" aggiuntivo, è al di fuori della finestra temporale di selezione della strategia. Si tratta di una simulazione delle prestazioni della strategia reale e NON viene utilizzata per selezionare/testare le strategie, ma per dimostrare che il flusso di lavoro è in grado di creare sistemi di trading redditizi. Non ha nulla a che fare con il test/selezione delle strategie, quindi non può essere considerato un OOS aggiuntivo.

È un'affermazione falsa.

0

Enric

Cliente, bbp_partecipante, comunità, sq-ultimate, 114 risposte.

Visita il profilo

5 anni fa #238885

Ok, credo di aver capito. Per me si tratta di dati fuori campione (=OOS), ma è solo una questione di definizione, non è un grosso problema.

0

coensio

Cliente, bbp_partecipante, comunità, 106 risposte.

Visita il profilo

5 anni fa #238886

Ma solo se si chiamano i dati del 2050 anche dati OOS, allora sì, nella vostra definizione sono anche OOS 😉

È un'affermazione falsa.

0

coensio

Cliente, bbp_partecipante, comunità, 106 risposte.

Visita il profilo

5 anni fa #238888

Ho fatto una piccola panoramica per renderla più chiara:

Le strategie vengono generate, testate e selezionate utilizzando i periodi A e B, mentre i risultati vengono testati utilizzando il periodo C. (Il periodo C non è "OOS", poiché non viene utilizzato per la generazione delle strategie e per la selezione dei risultati). selezione). Dopo il periodo C il processo riparte da zero, si generano e si selezionano nuove strategie utilizzando le nuove A e le nuove B e si testano durante i nuovi periodi C...ecc...ecc....

Test in avanti simulato

È un'affermazione falsa.

0

Enric

Cliente, bbp_partecipante, comunità, sq-ultimate, 114 risposte.

Visita il profilo

5 anni fa #238929

Ciao coesio. Prima di tutto grazie per la tua generosità nel condividere. Senza dubbio si tratta di un approccio valido e vale sicuramente la pena di provarlo.

0

coensio

Cliente, bbp_partecipante, comunità, 106 risposte.

Visita il profilo

5 anni fa #238957

Ciao coesio. Prima di tutto grazie per la tua generosità nel condividere. Senza dubbio si tratta di un approccio valido e vale sicuramente la pena provarlo.

Peccato che nessuno condivida questo genere di cose qui e da nessun'altra parte...

In ogni caso... date un'occhiata a questo topic in cui ho messo in pratica tutto ciò... vediamo quali saranno i risultati:

https://strategyquant.com/forum/topic/100-automated-and-100-accurate-sq-workflow-test-case/

 

È un'affermazione falsa.

0

SteveChou

Customer, bbp_participant, community, sq-ultimate, 40 replies.

Visita il profilo

3 anni fa #268932

Grazie Chris.

Si tratta di un'idea potente, che utilizzo anche per costruire e testare le mie strategie.

0

Pietro

Abbonato, bbp_partecipante, cliente, comunità, sq-ultimate, 7 risposte.

Visita il profilo

2 anni fa #274084

Mi sono appena imbattuto in questo thread. visto che è stato 2 anni fa, mi chiedevo se poteste aggiornarci sui risultati in diretta.

0

coensio

Cliente, bbp_partecipante, comunità, 106 risposte.

Visita il profilo

2 anni fa #274086

Sta andando abbastanza bene, tuttavia 2 anni di algo-trading, equivalgono (dal mio punto di vista) solo a 150 operazioni 🙂 = appena sufficienti per vedere questo risultato come statisticamente significativo...

I miei test in questo periodo mi hanno generato profitti intorno a >+150%... finora.

Alcuni direbbero che questo è molto interessante.

Tuttavia, il mondo sta cambiando così velocemente che il guadagno di 150% non sembra affatto impressionante ;)...ecco perché l'algo-trading è la mia priorità più bassa al momento.

Sto pensando di pubblicare il mio lavoro, compreso il mio flusso di lavoro, a un numero limitato di persone.

Potete sempre contattarmi se siete interessati.

Probabilmente sapete dove trovarmi...

Gr

Chris

È un'affermazione falsa.

0

Stai visualizzando 15 risposte - da 1 a 15 (di 15 totali)