I trader che sono desiderosi di provare un'idea di trading in un mercato live spesso commettono l'errore di affidarsi interamente ai risultati del backtest per determinare se il sistema sarà redditizio. Mentre il backtesting può fornire agli operatori informazioni preziose, spesso è fuorviante ed è solo una parte del processo di valutazione.
I test fuori campione e i test delle prestazioni in avanti forniscono ulteriori conferme circa l'efficacia di un sistema e possono mostrare i colori reali di un sistema prima che il denaro reale sia in linea. Una buona correlazione tra i risultati dei test di backtesting, out-of-sample e forward è essenziale per determinare la fattibilità di un sistema di trading.
Nozioni di base sul backtest
Il backtesting si riferisce all'applicazione di un sistema di trading ai dati storici per verificare come un sistema si sarebbe comportato durante il periodo di tempo specificato. Molte delle piattaforme di trading odierne supportano il backtesting. I trader possono testare le idee con pochi tasti e ottenere informazioni sull'efficacia di un'idea senza rischiare fondi in un conto di trading. Il backtesting può valutare idee semplici, come il crossover medio mobile su dati storici o sistemi più complessi con una varietà di input e trigger.
Finché un'idea può essere quantificata, può essere backtestata. Alcuni trader e investitori possono ricorrere all'esperienza di un programmatore qualificato per sviluppare l'idea in una forma verificabile. In genere, ciò comporta un programmatore che codifica l'idea nel linguaggio proprietario ospitato dalla piattaforma di trading. Il programmatore può incorporare variabili di input definite dall'utente che consentono al trader di "modificare" il sistema.
Un esempio di ciò potrebbe essere rappresentato dal semplice sistema crossover a media mobile sopra indicato: il trader sarebbe in grado di inserire (o modificare) le lunghezze delle due medie mobili utilizzate nel sistema. Il trader potrebbe eseguire il backtest per determinare quali lunghezze delle medie mobili avrebbero avuto il rendimento migliore sui dati storici.
Studi di ottimizzazione
Molte piattaforme di trading consentono anche studi di ottimizzazione. Ciò comporta l'inserimento di un intervallo per l'input specificato e la possibilità per il computer di "fare i calcoli" per capire quale input avrebbe funzionato meglio. Un'ottimizzazione multi-variabile può fare la matematica per due o più variabili per determinare quali combinazioni avrebbero ottenuto il miglior risultato.
Ad esempio, i trader possono dire al programma quali input vorrebbero aggiungere alla loro strategia; questi sarebbero quindi ottimizzati per i loro pesi ideali dati dati storici testati.
Il backtesting può essere entusiasmante in quanto un sistema non redditizio può spesso essere magicamente trasformato in una macchina per fare soldi con alcune ottimizzazioni. Sfortunatamente, modificare un sistema per raggiungere il massimo livello di redditività passata spesso porta a un sistema che avrà scarsi risultati nel trading reale. Questa ottimizzazione eccessiva crea sistemi che sembrano buoni solo sulla carta.
L'adattamento alla curva è l'uso dell'analitica di ottimizzazione per creare il maggior numero di operazioni vincenti al massimo profitto sui dati storici utilizzati nel periodo di prova. Sebbene appaia impressionante nei risultati del backtest, l'adattamento alla curva porta a sistemi inaffidabili poiché i risultati sono essenzialmente progettati su misura per quel particolare dato e periodo di tempo.
Il backtest e l'ottimizzazione offrono molti vantaggi a un trader, ma questo è solo una parte del processo di valutazione di un potenziale sistema di trading. Il prossimo passo di un trader è applicare il sistema a dati storici che non sono stati utilizzati nella fase iniziale di backtest.
Dati in campione e dati fuori campione
Quando si verifica un'idea su dati storici, è utile riservare un periodo di tempo di dati storici a scopo di test. I dati storici iniziali su cui l'idea viene testata e ottimizzata vengono definiti dati nel campione. Il set di dati che è stato prenotato è noto come dati fuori campione. Questa configurazione è una parte importante del processo di valutazione perché fornisce un modo per testare l'idea su dati che non sono stati un componente nel modello di ottimizzazione.
Di conseguenza, l'idea non sarà stata influenzata in alcun modo dai dati fuori campione e i trader saranno in grado di determinare in che modo il sistema potrebbe funzionare su nuovi dati, vale a dire nel trading nella vita reale.
Prima di iniziare qualsiasi backtesting o ottimizzazione, gli operatori possono mettere da parte una percentuale dei dati storici da riservare ai test fuori campione. Un metodo consiste nel dividere i dati storici in terzi e separare un terzo per l'utilizzo nei test fuori campione. Solo i dati del campione devono essere utilizzati per i test iniziali e per qualsiasi ottimizzazione.
La figura seguente mostra una linea temporale in cui un terzo dei dati storici è riservato per i test fuori campione e i due terzi vengono utilizzati per i test all'interno del campione. Sebbene la figura seguente rappresenti i dati fuori campione all'inizio del test, le procedure tipiche avrebbero la porzione fuori campione immediatamente precedente la prestazione diretta.

Una linea temporale che rappresenta la lunghezza relativa dei dati all'interno e all'esterno del campione utilizzati nel processo di backtest. Immagine di Julie Bang © Investopedia 2020
La correlazione si riferisce alle somiglianze tra le prestazioni e le tendenze generali dei due set di dati. Le metriche di correlazione possono essere utilizzate nella valutazione dei report sulle prestazioni della strategia creati durante il periodo di test (una funzionalità fornita dalla maggior parte delle piattaforme di trading). Più forte è la correlazione tra i due, migliore è la probabilità che un sistema si esibisca bene nei test delle prestazioni e nel trading dal vivo.
La figura seguente illustra due diversi sistemi che sono stati testati e ottimizzati su dati all'interno del campione, quindi applicati a dati fuori dal campione. Il grafico a sinistra mostra un sistema chiaramente adattato alla curva per funzionare bene sui dati del campione e fallire completamente sui dati del campione. Il grafico a destra mostra un sistema che ha funzionato bene su dati sia dentro che fuori dal campione.

Due curve azionarie. I dati commerciali prima di ogni freccia gialla rappresentano i test nel campione. I trade generati tra le frecce gialle e rosse indicano test fuori campione. Le negoziazioni dopo le frecce rosse provengono dalle fasi di test delle prestazioni in avanti.
Una volta che un sistema di trading è stato sviluppato utilizzando dati inclusi nel campione, è pronto per essere applicato ai dati fuori campione. I trader possono valutare e confrontare i risultati delle prestazioni tra i dati all'interno e all'esterno del campione.
Se c'è poca correlazione tra i test in-sample e out-of-sample, come il grafico a sinistra nella figura sopra, è probabile che il sistema sia stato ottimizzato eccessivamente e non funzionerà bene nel trading dal vivo. Se esiste una forte correlazione nelle prestazioni, come mostrato nella tabella a destra, la fase successiva della valutazione prevede un ulteriore tipo di test fuori campione noto come test delle prestazioni in avanti.
Nozioni di base sui test delle prestazioni forward
I test delle prestazioni a termine, noti anche come negoziazione cartacea, forniscono agli operatori un'altra serie di dati fuori campione su cui valutare un sistema. I test delle prestazioni a termine sono una simulazione del trading reale e comportano il rispetto della logica del sistema in un mercato live. Si chiama anche trading di carta poiché tutte le operazioni vengono eseguite solo su carta; vale a dire, le entrate e le uscite commerciali sono documentate insieme a eventuali profitti o perdite per il sistema, ma non vengono eseguite operazioni reali.
Un aspetto importante dei test delle prestazioni in avanti è seguire esattamente la logica del sistema; in caso contrario, diventa difficile, se non impossibile, valutare accuratamente questa fase del processo. I commercianti dovrebbero essere onesti in merito a qualsiasi entrata e uscita dal commercio ed evitare comportamenti come la raccolta delle ciliegie o non includere un commercio su carta razionalizzando che "non avrei mai preso quel commercio". Se lo scambio si sarebbe verificato seguendo la logica del sistema, dovrebbe essere documentato e valutato.
Molti broker offrono un conto di trading simulato in cui è possibile collocare le negoziazioni e calcolare i profitti e le perdite corrispondenti. L'uso di un conto di trading simulato può creare un'atmosfera semi-realistica su cui praticare il trading e valutare ulteriormente il sistema.
La figura sopra mostra anche i risultati per i test delle prestazioni in avanti su due sistemi. Ancora una volta, il sistema rappresentato nel grafico a sinistra non riesce a fare ben oltre il test iniziale sui dati nel campione. Il sistema mostrato nella tabella a destra, tuttavia, continua a funzionare bene in tutte le fasi, incluso il test delle prestazioni in avanti. Un sistema che mostra risultati positivi con una buona correlazione tra test di performance in-sample, out-of-sample e forward è pronto per essere implementato in un mercato live.
La linea di fondo
Il backtest è uno strumento prezioso disponibile nella maggior parte delle piattaforme di trading. La suddivisione dei dati storici in più set per fornire test in-campione e fuori-campione può fornire agli operatori un mezzo pratico ed efficiente per valutare un'idea e un sistema di trading. Poiché la maggior parte dei trader utilizza tecniche di ottimizzazione nel backtest, è importante quindi valutare il sistema su dati puliti per determinarne la redditività.
Continuare i test fuori campione con i test delle prestazioni in avanti fornisce un altro livello di sicurezza prima di immettere un sistema sul mercato che rischia denaro reale. Risultati positivi e buona correlazione tra backtesting in-sample e out-of-sample e test di performance in avanti aumentano le probabilità che un sistema si esibisca bene nel trading reale.
