Backtesting e forwardtesting: l’importanza della correlazione

I trader che desiderano testare un approccio li trading in un mercato reale commettono talvolta l’errore di affidarsi esclusivamente ai risultati del backtesting per decidere se il sistema sarà redditizio o meno. Nonostante il backtesting possa fornire informazioni utili ai trader, spesso porta a conclusioni errate e rappresenta solo una componente del processo di valutazione completo.

Sia i test fuori campione che i test di performance a termine offrono ulteriori garanzie sull’efficienza di un sistema e hanno il potenziale di rivelare la vera natura del sistema prima che venga messo in gioco del denaro reale. Per stabilire se un sistema di trading è valido o meno, è essenziale avere una correlazione coerente tra i risultati del backtesting, dei test fuori campione e dei test di performance a termine.

backtesting
Adobe Stock

Il processo di applicazione di un metodo di trading ai dati storici per verificare come la strategia si sarebbe comportata in un determinato periodo di tempo viene definito backtesting. Il backtesting è una funzione tipicamente supportata dalle piattaforme di trading. Questa funzione consente ai trader di testare le idee e di avere un’idea di quelle potenziali senza mettere a repentaglio la propria liquidità.

È possibile che alcuni trader e investitori cerchino programmatori esperti per costruire concetti in forme che possano essere testate. Gli studi di ottimizzazione, in cui un trader inserisce una serie di dati per determinare quale concetto avrebbe funzionato meglio, e i test di performance previsionale, in cui viene effettuata una simulazione di trading seguendo la logica dell’idea, sono due esempi di ricerca che riguardano situazioni ipotetiche.

Esistono molti broker e piattaforme di trading che forniscono conti simulati, che consentono agli investitori di esercitarsi nell’uso degli strumenti e nella ricerca di situazioni ipotetiche senza mettere a rischio il proprio denaro finanziario.

Per una guida completa alla scelta del broker più sicuro e adatto alle proprie esigenze e strategie, oltre ai parametri vitali da valutare nella scelta, corri a leggere il nostro articolo:
Come scegliere il broker per il trading sullo stock market: guida per il 2023

Quali sono gli elementi essenziali del backtesting

Il backtesting, invece, è il processo di applicazione di un sistema di trading ai dati storici per determinare quanto bene avrebbe fatto il sistema nel periodo di tempo definito. Per quanto riguarda le piattaforme di trading, il backtesting è oggi comunemente supportato. Bastano pochi tasti per consentire ai trader di testare le idee e di valutarne l’efficacia senza mettere a repentaglio i contanti depositati sul conto di trading. D’altra parte, il backtesting può essere utilizzato per esaminare sistemi più sofisticati che hanno un’ampia gamma di input e trigger, così come concetti più semplici, come il comportamento di un crossover della media mobile sui dati storici.

È possibile effettuare un backtest su un concetto, purché sia misurabile. Per trasformare il concetto in una forma che possa essere testata, alcuni trader e investitori potrebbero richiedere l’assistenza di un programmatore competente. A tal fine, un programmatore sarà spesso responsabile della codifica del concetto nel linguaggio proprietario ospitato dalla piattaforma di trading. Attraverso l’incorporazione di variabili di input definite dall’utente, il programmatore è in grado di fornire al trader la possibilità di “modificare” il sistema.

Per illustrare questo punto, si consideri il seguente esempio tratto dal sistema di base di crossover delle medie mobili descritto in precedenza: Le lunghezze delle due medie mobili utilizzate dal sistema possono essere inserite dal trader o modificate. Per valutare quali lunghezze delle medie mobili avrebbero funzionato meglio sui dati storici, il trader potrebbe effettuare un backtest.

Esami di ottimizzazione

È anche possibile condurre studi di ottimizzazione su diverse piattaforme di trading. A tal fine, è necessario inserire un intervallo per l’input fornito e lasciare che il computer “faccia i conti” per determinare quale input avrebbe funzionato meglio. Per identificare quali combinazioni di variabili avrebbero portato al miglior risultato possibile, un’ottimizzazione multivariabile può eseguire i calcoli necessari per due o più variabili.

A titolo di esempio, i trader possono comunicare al computer gli input che desiderano incorporare nella loro strategia. Questi input saranno poi ottimizzati per ottenere i pesi ottimali sulla base dei dati storici che sono stati testati.

Il backtesting può essere un processo affascinante, poiché mostra come un sistema non redditizio possa spesso essere magicamente trasformato in una macchina che genera profitti con poche modifiche. Purtroppo, la modifica di un sistema al fine di raggiungere il massimo grado di redditività possibile nel passato si traduce spesso in un sistema che si comporta male quando viene sottoposto alle reali condizioni di trading. L’eccessiva ottimizzazione porta alla creazione di sistemi che sembrano avere successo solo sulla carta.

Come funziona il processo nel dettaglio

Il processo di utilizzo dell’analisi di ottimizzazione per generare il numero massimo di operazioni redditizie e il numero più elevato di operazioni vincenti sui dati storici utilizzati durante il periodo di test viene definito “curve fitting”. Sebbene il curve fitting sembri essere un metodo eccellente in termini di risultati del backtesting, alla fine si traduce in sistemi instabili a causa del fatto che i risultati sono fondamentalmente adattati ai dati specifici e al periodo di tempo in questione.

Il processo di analisi di un possibile sistema di trading comprende il backtesting e l’ottimizzazione, che offrono entrambi diversi vantaggi al trader. Tuttavia, questa è solo una parte dell’intero processo. Dopo il completamento della prima fase di backtesting, il passo successivo per un trader è quello di applicare il sistema ai dati storici che non sono stati utilizzati durante la fase.

La differenza tra i dati in-sample e out-of-sample

Quando si testa un concetto utilizzando i dati storici, è utile mettere da parte un certo periodo di tempo di dati storici allo scopo di valutare l’idea. Il termine “dati in-sample” si riferisce ai dati storici originali utilizzati all’inizio del processo di test e ottimizzazione dell’idea. Il termine “dati fuori campione” indica la raccolta di dati che sono stati tenuti da parte per essere utilizzati in seguito. Poiché offre un mezzo per mettere alla prova il concetto su dati che non fanno parte del modello di ottimizzazione, questa configurazione è una componente essenziale del processo di valutazione delle prestazioni.

In questo modo, il concetto non sarà stato influenzato in alcun modo dai dati non inclusi nel campione e i trader potranno misurare le prestazioni del sistema su dati nuovi, vale a dire nel trading che si svolge nel mondo reale. I trader hanno la possibilità di accantonare una parte dei dati storici per effettuare test fuori campione prima di iniziare qualsiasi tipo di backtesting o ottimizzazione. Per effettuare i test fuori campione, un approccio consiste nel dividere i dati storici in terzi e separare un terzo dei dati da utilizzare per i test. Si raccomanda di eseguire i primi test e le eventuali ottimizzazioni utilizzando solo i dati del campione interno.

Il termine “correlazione” si riferisce alle somiglianze esistenti tra i due set di dati in termini di performance e tendenze generali. La maggior parte delle piattaforme di trading dispone di una funzione che consente di valutare le relazioni sulle performance delle strategie effettuate durante il periodo di test. In questo processo di valutazione si possono utilizzare le misure di correlazione. Quando c’è una maggiore correlazione tra le due cose, c’è una maggiore probabilità che un sistema si comporti bene sia nel trading dal vivo che nei test di performance.

atr volatilità
Adobe Stock

Per una guida completa alle stock, cosa sono e come si negoziano le azioni sui mercati, quali rischi e opportunità comportano e come possiamo partire con il piede giusto evitando gli errori più frequenti, corri a leggere la nostra guida:
Cosa sono le azioni: guida al trading nello stock market

Le curve di equità sono due

I test in-sample sono rappresentati dai dati di trading, che si trovano prima di ogni freccia gialla.Le operazioni create tra le frecce gialle e rosse sono esempi di test condotti al di fuori del campione. Durante le fasi di test delle prestazioni in avanti, vengono prese in considerazione le transazioni collocate dopo le frecce rosse.
Il sistema di trading è pronto per essere applicato ai dati non inclusi nel campione una volta che è stato costruito utilizzando i dati inclusi nel campione.I dati del campione e del fuori campione possono essere valutati e confrontati dai trader per determinare i risultati delle performance.

Se non c’è correlazione tra i test in-sample e quelli out-of-sample, come si vede nel grafico a sinistra della figura precedente, è molto probabile che il sistema sia stato sovra-ottimizzato e che non avrà un buon rendimento quando verrà introdotto nel trading effettivo.

Inoltre, durante la fase successiva di valutazione, viene eseguito un ulteriore tipo di test fuori campione, noto come test di performance in avanti, nel caso in cui si riscontri un collegamento sostanziale nella performance, come si vede nel grafico a destra.

I fondamenti del Forward Performance Testing

Il forward performance testing, spesso definito paper trading, consente ai trader di accedere a un’ulteriore serie di dati non rappresentativi del mercato da cui valutare un sistema. Per il forward performance testing è necessario seguire la logica del sistema in un mercato reale, che è una simulazione del trading effettivo, comprese le operazioni reali. Il paper trading è un altro nome per questo tipo di trading, poiché tutte le operazioni vengono effettuate esclusivamente sulla carta.Ciò significa che vengono registrate le entrate e le uscite dalle operazioni, nonché gli eventuali profitti o perdite del sistema, ma non vengono effettuate operazioni reali.

Quando si eseguono i test di performance, è essenziale attenersi alla logica del sistema nella sua interezza.In caso contrario, sarà estremamente difficile, se non impossibile, analizzare in modo appropriato questa fase del processo. I trader devono essere sinceri su tutte le entrate e le uscite dalle operazioni e devono evitare di adottare comportamenti come il cherry-picking o l’omissione di un’operazione dal loro documento di trading con la giustificazione che “non avrei mai preso quell’operazione”. Nel caso in cui l’operazione sarebbe stata eseguita secondo la logica del sistema, dovrebbe essere documentata e valutata.

I conti simulati sulle piattaforme

Diversi broker mettono a disposizione un conto di trading simulato, che consente di piazzare le transazioni e di calcolare i profitti e le perdite associati a tali operazioni.Attraverso l’utilizzo di un conto di trading simulato, si può creare un ambiente semi-realistico per esercitarsi nel trading e ottenere un’ulteriore valutazione del sistema.

I risultati dei test di performance su due diversi sistemi sono mostrati anche nella figura precedente.Come si è detto in precedenza, il sistema rappresentato nel grafico a sinistra non ottiene buone prestazioni oltre il primo test sui dati del campione. Il sistema raffigurato nel grafico di destra, invece, continua a ottenere prestazioni eccellenti in tutte le fasi, compreso il test delle prestazioni in avanti.Se un sistema dimostra risultati favorevoli e ha una forte connessione tra i test di performance in-sample, out-of-sample e forward, allora è pronto per essere utilizzato in un mercato reale.

Conclusioni

La maggior parte dei sistemi di trading offre il backtesting come una funzione utile da utilizzare.Per fornire ai trader un metodo pratico ed efficiente per l’analisi di un concetto e di un sistema di trading, è possibile dividere i dati storici in varie serie, in modo da fornire test sia in-sample che out-of-sample. Pertanto, è essenziale analizzare il sistema su dati puliti per identificare se è valido o meno. Questo perché la maggior parte dei trader utilizza strategie di ottimizzazione quando partecipa al backtesting.

Per aggiungere un ulteriore livello di protezione prima di immettere un sistema sul mercato e mettere a rischio denaro reale, si raccomanda di continuare i test fuori campione con test di performance in avanti. La possibilità che un sistema si comporti bene nel trading reale aumenta quando i risultati dei backtesting in-sample e out-of-sample e dei forward performance test sono positivi e c’è un’alta correlazione tra i due tipi di test.

 

*NB: Le riflessioni e le analisi condivise sono da intendere ad esclusivo scopo divulgativo. Quanto esposto non vuole quindi essere un consiglio finanziario o di investimento e non va interpretato come tale. Ricorda sempre che le scelte riguardo i propri capitali di rischio devono essere frutto di ricerche e analisi personali. L’invito è pertanto quello di fare sempre le proprie ricerche in autonomia.