Risposta

Qual è il legame tra il campione e il fuori campione?

6 risposte

jerrycgc

Abbonato, bbp_partecipante, cliente, comunità, 0 risposte.

Visita il profilo

5 anni fa #237775

È importante se cambio la proporzione o meno?

La strategia è costruita su IN SAMPLE o IS+OOS?

0

Daniele

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

Visita il profilo

5 anni fa #237777

Ciao Jerry, le strategie sono costruite su IN SAMPLE. Quindi l'IS dovrebbe essere maggiore dell'OOS.

DP

0

scagnozzi

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

Visita il profilo

5 anni fa #237781

Non sono d'accordo con questa semplice formula - IS dovrebbe essere maggiore di OOS. a mio parere è meglio costruire strategie su una piccola quantità di dati, fare delle scelte attraverso l'intero comportamento dei dati (alta volatilità, bassa volatilità, chop) e generare solo su pochi mesi (anni) e rendere tutto il resto come OOS.

In questo modo si otterrà un maggior numero di fili diversi, che possono essere pronti per la maggior parte degli stati di un mercato.

Volete diventare un algotrader redditizio? Abbiamo iniziato a utilizzare il software StrateQuant all'inizio del 2014. Ora abbiamo un grande know-how per la costruzione di EA per ogni possibile tipo di mercato. Condividiamo questo know-how, le applicazioni, gli strumenti e anche tutte le strategie finali con i trader reali. Se volete unirvi a noi, compilate il seguente modulo MODULO.

0

Ilya

Cliente, bbp_partecipante, comunità, 105 risposte.

Visita il profilo

5 anni fa #237800

Sono d'accordo con hankeys: più piccolo è il vostro IS, meno overfit è la strategia e più strategie potete generare in un tempo più breve. Filtrare in base a dati grandi, generare su dati piccoli.

 

 

0

Daniele

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

Visita il profilo

5 anni fa #237807

Non sono d'accordo con questa semplice formula - IS dovrebbe essere più grande di OOS. secondo me è meglio costruire strategie su una piccola quantità di dati, fare delle scelte attraverso l'intero comportamento dei dati (alta volatilità, bassa volatilità, chop) e generare solo su pochi mesi (anni) e rendere tutto il resto come OOS. in questo modo si otterranno più strategie diverse, che possono essere pronte per la maggior parte degli stati di un mercato.

Sono d'accordo con hankeys: più piccolo è il vostro IS, meno overfit è la strategia e più strategie potete generare in un tempo più breve. Filtrare in base a dati grandi, generare su dati piccoli.

Grazie a entrambi, questa è una buona osservazione. Tuttavia, com'è il comportamento di SQX se cerchiamo strategie utilizzando il metodo di costruzione casuale? SQX non fa differenza tra IS e OOS?

DP

0

jerrycgc

Abbonato, bbp_partecipante, cliente, comunità, 0 risposte.

Visita il profilo

5 anni fa #237814

Grazie ragazzi

Ora so che è scritto nella "guida dell'utente": In Sample - viene utilizzato durante l'evoluzione genetica; Out of Sample - questa parte dei dati viene utilizzata per la verifica.

Quando imposto IS a 0 non avviene alcuna evoluzione, la fitness rimane a 0,06. Credo che l'evoluzione consista nel migliorare il valore di fitness della strategia.

Non sono sicuro che sia teoricamente corretto generare strategie con piccoli IS e grandi OOS.

Penso che non faccia differenza che l'overfitting avvenga su IS o su OOS.

Il backtesting non riguarda l'overfitting? La storia si ripeterà in questo genere di cose?

 

0

Ilya

Cliente, bbp_partecipante, comunità, 105 risposte.

Visita il profilo

5 anni fa #237815

Vi darò la mia opinione sulle cose:

- In primo luogo, l'evoluzione genetica consiste nel migliorare il livello di fitness di una strategia, cercando di modificare leggermente i suoi parametri a ogni esecuzione, per vedere se è migliorata o meno.

- La generazione della strategia ("addestramento del modello") avviene sul In campione periodo, indipendentemente dal fatto che si utilizzi l'evoluzione genetica o casuale.

- Ora, l'utilizzo di periodi fuori campione ha senso in entrambi i tipi di generazione; vi spiegherò perché.

Evoluzione genetica

Questa è la più ovvia: una volta che si "ricicla" la stessa strategia con regolazioni e permutazioni fini fino a quando non soddisfa i propri filtri (o il minimo di fitness), questa strategia è molto probabilmente overfit su quell'insieme di dati. Pertanto, ha senso eseguire la strategia una volta "fuori dagli schemi" su un insieme di dati precedentemente sconosciuti, per assicurarsi che funzioni bene senza essere perfettamente adattata. Questo può essere fatto utilizzando il cursore OOS durante il processo di costruzione.

- In sostanza, qui una singola strategia può eseguire 200 volte sui dati IS fino a quando non soddisfano le vostre esigenze, poi solo 1 volta sui dati OOS per assicurarsi che soddisfino i requisiti di prestazione, in modo da poter vedere il vantaggio di quel periodo OOS e quanto si riducono le possibilità di overfitting.

Evoluzione casuale

Qui, a differenza di genetica evo, una singola strategia viene eseguita solo una volta sui dati IS e poi una volta sui dati OS e poi vengono controllati i filtri. A occhio nudo, quindi, sembra che non ci sia alcuna differenza tra IS e OOS, dal momento che prima di approdare nella vostra banca dati, la strategia analizza l'intero periodo combinato.

MA, in primo luogo, non dimenticate che se una strategia non soddisfa le vostre esigenze di IS, non potrà essere testata sull'OOS (a meno che i vostri filtri non riguardino solo l'intero set di dati, e allora è vero quanto detto sopra, in pratica significa che l'intero set di dati è IS, che lo si divida o meno).

In questo caso, poiché in Random gen otteniamo una percentuale più bassa di strategie da passare alla banca dati (dal momento che ci limitiamo a inserire un mix di parametri a caso e a vedere se funziona), si tratta di una sorta di overfitting, anche se non lo ricicliamo come in genetic evo, dal momento che cambiamo semplicemente le strategie in hyper-drive, fino a quando non si "adatta bene" al nostro set di dati. Quindi, ciò che è sensato fare è usare un insieme inedito di dati per OOSche non fa parte del processo di generazione, per esempio gli ultimi 6 mesi o un anno, che sarà rivelato solo alla strategia nel retester. In questo modo abbiamo una maggiore sicurezza che la nostra strategia creata a caso non sia "accidentalmente" caduta perfettamente sul nostro set di dati dell'edificio.

 

E questa è solo la punta dell'iceberg per evitare l'overfitting: i test di robustezza e i walk-forward sono i veri MVP per evitarlo. Ma i periodi di OOS sono, per me, una parte essenziale del processo di costruzione e di retesting e riservo sempre un periodo di OOS almeno per la costruzione e un altro più recente, totalmente inedito, da eseguire sul retester.

Salute

 

 

 

0

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