Generare strategie di trading dal caso al candidato
Chi sente per la prima volta che le strategie di trading si possono generare automaticamente e che in poche ore nascono migliaia di candidati diventa diffidente. All'inizio sembra un generatore casuale con un'interfaccia grafica carina. In realtà all'inizio di un simile processo c'è il caso, ma è solo il primo di diversi passaggi. Alla fine di questo articolo saprai come si svolge davvero un processo del genere in StrategyQuant X, perché alla fine di migliaia di strategie ne restano solo una manciata, e cosa possono dirti queste superstiti e cosa no.
Come il software costruisce davvero nuove strategie
Il Builder in StrategyQuant X conosce due modi per costruire nuove strategie: la generazione casuale e l'evoluzione genetica. Nessuno dei due è per principio migliore, scegli la modalità prima che parta un processo.
Con una strategia appena generata il Builder combina pattern di prezzo, indicatori tecnici, tipi di ordine e componenti correlati in regole di ingresso e di uscita. Il risultato all'inizio è solo una strategia composta in modo valido, non automaticamente una strategia sensata.
Quanto è grande lo spazio delle combinazioni possibili lo mostra un numero tratto dalla documentazione del produttore: se si sommano tutte le regole e tutte le sequenze, si ottengono teoricamente bilioni di strategie possibili diverse, e secondo il produttore il software può generare e testare migliaia di nuove strategie all'ora. È un ordine di grandezza, non un conteggio esatto per un determinato processo, e non dice nulla su quante di esse alla fine siano utilizzabili.

Perché il semplice numero non dice nulla sulla qualità
Non ogni strategia generata casualmente è stata positiva nel backtest, ma tra le migliaia che nascono ogni ora, secondo la documentazione del produttore, ce ne sono molte che nel test hanno vinto più di quanto abbiano perso. Quante siano davvero dipende dai componenti scelti e dalle impostazioni della sessione, non esiste una quota fissa. E anche se una strategia ha ottenuto buoni risultati nel backtest, questo dice per il momento solo qualcosa sul passato, non sul futuro.
Proprio per questo il puro numero non è un criterio di qualità. Che un software produca migliaia di candidati nell'arco di un'ora non dice nulla su quanti di essi alla fine siano validi. L'ordine di grandezza della sezione precedente è una misura della varietà dello spazio di ricerca, non della qualità di ciò che alla fine ne esce.
Il primo filtro: regole di scarto automatiche
Poiché la generazione casuale può produrre anche assurdità, per esempio regole che si escludono a vicenda o che non hanno senso economico, nel Builder esistono regole di scarto automatiche. A seconda dell'impostazione, una grande parte, secondo la documentazione persino la maggioranza, delle strategie generate può essere scartata già in questa fase, prima ancora che avvenga una valutazione in base agli indicatori del backtest.
Queste regole non sono un effetto collaterale che conviene disattivare. Sono il primo di diversi filtri che trasformano una quantità enorme e disordinata in qualcosa di gestibile.
Come si svolge in pratica una sessione di strategie
Un tipico svolgimento, che la documentazione descrive come modello, è questo: importare o scaricare i dati di prezzo, configurare il Builder, avviare la sessione, esaminare le strategie generate e poi retestare, ottimizzare o migliorare ulteriormente i candidati rimasti. È un modello, non una prescrizione rigida, i singoli passaggi si possono adattare al proprio modo di procedere.

Un esempio dalla documentazione lo mostra su EURUSD, senza regole di trading predefinite: prima scegli la modalità build, poi imposti i dati di prezzo e la suddivisione in in-sample e out-of-sample, dopodiché selezioni i componenti con cui il builder può lavorare e avvii la generazione. I risultati migliori finiscono automaticamente nel database dell'esecuzione. L'esempio vale per questa esatta configurazione, altri mercati o timeframe non richiedono necessariamente le stesse impostazioni.
Il secondo filtro: verifica robusta, e un caso normale che ridimensiona le aspettative
Chi ha superato le regole di scarto non ha certo finito. La documentazione del produttore cita un esempio che ne sorprende molti: può succedere senza problemi che di 1.000 strategie che hanno avuto un risultato positivo nel primo backtest, una sola superi i controlli di robustezza più severi e sia quindi anche solo un candidato per il trading live. È un esempio dell'ordine di grandezza, non una quota fissa valida per ogni esecuzione, e non dice nulla sul fatto che questa singola strategia sia davvero adatta al trading live.
Per la maggior parte di chi lavora per la prima volta con la generazione automatica, questo sa di delusione. Ma è il caso normale, non un segnale che qualcosa sia andato storto. Il secondo filtro esiste proprio per questo.

Cosa non promette un backtest positivo
Un backtest che sembra positivo è un'affermazione sul passato, non sul futuro. Le strategie ottimizzate per un determinato contesto di mercato di norma ottengono risultati peggiori non appena le condizioni cambiano. Questo spiega perché una strategia che ha funzionato bene a lungo all'improvviso comincia a perdere denaro, anche se al codice in sé non è cambiato nulla. Questo comportamento non si può prevedere o impedire del tutto, fa parte della natura dei regimi di mercato.
Un secondo punto riguarda l'analisi what-if: i miglioramenti che vedi lì per uno scenario possono dipendere dal caso o andare diversamente nel trading reale, perché i trade si influenzano a vicenda. Per questo il produttore consiglia di retestare una strategia dopo ogni modifica con le impostazioni adottate, prima di farci affidamento.
Perché da QANTERIS insegniamo proprio questo processo
Un motivo per cui molti principianti falliscono con strategie costruite da soli è che non conoscono la differenza tra generazione grezza e candidati verificati. Il materiale didattico su StrategyQuant X che tratta proprio questo tema descrive perché la maggior parte delle strategie costruite dai principianti fallisce, come si possono generare e testare automaticamente migliaia di idee di trading e come da queste si possano costruire strategie più robuste. È questo il motivo per cui da QANTERIS mostriamo questo procedimento passo per passo, invece di spiegare solo l'interfaccia.
Cosa mostra questo metodo, e cosa non mostra
La generazione automatica e i suoi filtri ti mostrano come una strategia si è comportata sui dati storici usati per il test. Non ti mostrano se funzionerà allo stesso modo in condizioni di mercato future e sconosciute. Non è una debolezza del software, è un limite di ogni metodo che si basa su dati di prezzo passati, che sia generato automaticamente o scritto a mano.
Quello che resta alla fine: un processo che da una quantità enorme di strategie possibili filtra in più passaggi un piccolo numero di candidati, ogni passaggio con un compito proprio, ma senza che questo dica qualcosa sui risultati futuri.
Questo articolo ha scopo formativo e non è una consulenza sugli investimenti. I risultati passati, compresi quelli dei backtest, non garantiscono risultati futuri. Fare trading su strumenti finanziari comporta rischi e puoi perdere denaro.
Questo articolo ha scopo educativo e non è una consulenza finanziaria. I risultati passati non garantiscono risultati futuri.
Tu come fai? Raccontalo nella community. Gratis, nella tua lingua.
Iscriviti gratis