Test di backtesting e di avanzamento: l'importanza della correlazione

How to Create and Backtest Trading Strategies in Thinkorswim (Novembre 2024)

How to Create and Backtest Trading Strategies in Thinkorswim (Novembre 2024)
Test di backtesting e di avanzamento: l'importanza della correlazione
Anonim

I commercianti che desiderano provare un'idea di trading in un mercato dal vivo spesso commettono l'errore di affidarsi interamente ai risultati di backtesting per determinare se il sistema sarà redditizio. Mentre il backtesting può fornire ai commercianti informazioni preziose, spesso è fuorviante e è solo una parte del processo di valutazione. La sperimentazione fuori campione e il test delle prestazioni avanti forniscono ulteriori conferma sull'efficacia di un sistema e possono mostrare i veri colori del sistema, prima che il denaro reale sia sulla linea. Una buona correlazione tra i test di test di backtesting, out-of-sample e forward performance è fondamentale per determinare la redditività di un sistema commerciale. (Offriamo alcuni suggerimenti su questo processo che possono aiutare a perfezionare le tue attuali strategie di trading. Per saperne di più, leggere Backtesting: Interpretare il passato .

Backtesting Basics Backtesting si riferisce all'applicazione di un sistema di trading a dati storici per verificare come un sistema avrebbe eseguito durante il periodo di tempo specificato. Molte delle piattaforme commerciali di oggi supportano backtesting. I commercianti possono testare le idee con alcuni tasti e acquisire un'idea dell'efficacia di un'idea senza rischiare i fondi in un conto di negoziazione. Backtesting può valutare idee semplici, come ad esempio una crossover media mobile che eseguire su dati storici o sistemi più complessi con ingressi e trigger diversi.

Finché un'idea può essere quantificata può essere backtested. Alcuni commercianti e investitori possono richiedere l'esperienza di un programmatore qualificato per sviluppare l'idea in una forma verificabile. Di solito questo implica un programmatore che codifica l'idea nella lingua proprietaria ospitata dalla piattaforma di trading. Il programmatore può incorporare variabili d'ingresso definite dall'utente che consentono al trader di "tweak" il sistema. Un esempio di questo sarebbe nel semplice sistema di crossover medio mobile: il commerciante sarebbe in grado di immettere (o modificare) le lunghezze delle due medie mobili utilizzate nel sistema. Il commerciante potrebbe indovinare per determinare quali lunghezze di medie mobili avrebbero fatto il meglio sui dati storici. (Ulteriori informazioni nel Tutorial di trading elettronico .)

Studi di ottimizzazione
Molte piattaforme di trading consentono anche studi di ottimizzazione. Ciò comporta l'immissione di un intervallo per l'ingresso specificato e lasciare al computer "fare la matematica" per capire quale input avrebbe eseguito il meglio. Una ottimizzazione multi-variabile può fare la matematica per due o più variabili combinate per determinare quali livelli insieme avrebbero raggiunto il miglior risultato. Ad esempio, i commercianti possono dire al programma quali input che vorrebbero aggiungere nella loro strategia; questi sarebbero poi ottimizzati ai loro pesi ideali dato i dati storici testati.

Il backtest può essere emozionante in quanto un sistema non redditizio può spesso essere magicamente trasformato in una macchina per fare soldi con poche ottimizzazioni. Purtroppo, il tweaking di un sistema per ottenere il massimo livello di redditività passata spesso porta ad un sistema che funziona male nel commercio reale. Questa sovradimensionazione crea sistemi che sembrano buoni solo sulla carta.

Il montaggio della curva è l'utilizzo di analisi di ottimizzazione per creare il maggior numero di vincenti con il maggior profitto sui dati storici utilizzati nel periodo di prova. Anche se sembra impressionante nei risultati del backtesting, il montaggio curva porta a sistemi inattendibili poiché i risultati sono essenzialmente progettati su misura solo per quel particolare dato e periodo di tempo.

Il backtesting e l'ottimizzazione forniscono molti vantaggi a un trader, ma questa è solo una parte del processo nella valutazione di un potenziale sistema di trading. Il passo successivo di un operatore è quello di applicare il sistema ai dati storici che non sono stati utilizzati nella fase di backtest iniziale. (La media mobile è facile da calcolare e, una volta disegnata su un grafico, è un potente strumento di visualizzazione trend-visuale. Per maggiori informazioni, leggere Medie Movimento Medie Make Trends Stand Out .

Campione / dati fuori campione
Quando si prova un'idea sui dati storici, è utile riservare un periodo di dati storici a fini di test. I dati storici iniziali su cui viene analizzata e ottimizzata l'idea sono indicati come dati in campione. Il set di dati che è stato riservato è 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 del modello di ottimizzazione. Di conseguenza, l'idea non sarà stata influenzata in alcun modo dai dati fuori dai campioni e i commercianti saranno in grado di determinare in che modo il sistema potrebbe eseguire su nuovi dati; io. e. nel commercio reale.

Prima di avviare qualsiasi backtesting o ottimizzazione, i commercianti possono mettere da parte una percentuale dei dati storici da riservare per i test di tipo "fuori campione". Un metodo consiste nel suddividere i dati storici in terzi e separare un terzo per l'utilizzo nei test di tipo "out-of-sample". Per i test iniziali e per qualsiasi ottimizzazione devono essere utilizzati solo i dati in campione. La Figura 1 mostra una linea temporale in cui un terzo dei dati storici è riservato ai test di tipo "out-of-sample" e due terzi sono utilizzati per il test in campione. Sebbene la Figura 1 illustri i dati fuori campione all'inizio del test, le procedure tipiche avrebbero la parte esterna del campione che immediatamente precede la prestazione in avanti.

Figura 1: Una riga temporale che rappresenta la lunghezza relativa dei dati in campione e quelli fuori campione utilizzati nel processo di backtesting.

Una volta che un sistema di trading è stato sviluppato utilizzando i dati in campione, è pronto per essere applicato ai dati fuori campione. I commercianti possono valutare e confrontare i risultati delle prestazioni tra i dati in campione e quelli fuori campione.

Correlazione si riferisce alle somiglianze tra le prestazioni e le tendenze complessive dei due set di dati.Le metriche di correlazione possono essere utilizzate per valutare i rapporti sulle prestazioni della strategia creati durante il periodo di prova (una funzionalità che fornisce più piattaforme di trading). Maggiore è la correlazione tra i due, maggiore è la probabilità che un sistema esegua bene nei test di prestazione in avanti e nel trading in diretta. La Figura 2 illustra due diversi sistemi che sono stati testati e ottimizzati sui dati in campione, quindi applicati a dati fuori campione. Il grafico a sinistra mostra un sistema chiaramente curvilissimo per funzionare bene sui dati del campione e completamente fallito sui dati fuori campione. Il grafico a destra mostra un sistema che ha eseguito buoni risultati sia sui dati interni che sul campione.

Figura 2: Due curve di equità. I dati commerciali prima di ogni freccia gialla rappresentano il test in campione. I mestieri generati tra le frecce gialle e rosse indicano un test di tipo "out-of-sample". I mestieri dopo le frecce rosse sono dalle fasi di prova delle prestazioni in avanti.

Se esiste una scarsa correlazione tra il test in campione e quello fuori campione, come il grafico a sinistra della Figura 2, è probabile che il sistema sia stato sovradimensionato e non funzionerà bene nel trading in diretta. Se esiste una forte correlazione nelle prestazioni, come si vede nel grafico a destra della Figura 2, la fase successiva della valutazione comporta un ulteriore tipo di test di tipo "out-of-sample" noto come test di prestazione avanzata. (Per ulteriori informazioni sulla previsione, fare riferimento a Previsione finanziaria: il metodo Bayesian .)

Prestazioni di base per il test delle prestazioni Il test di prestazione avanti, noto anche come trading di carta, offre agli operatori un altro set di out dei dati di esempio su cui valutare un sistema. Il test di prestazione avanzata è una simulazione di trading effettivo e comporta la logica del sistema in un mercato dal vivo. Si chiama anche trading di carta, in quanto tutti i mestieri sono eseguiti solo su carta; ovvero le entrate e le uscite commerciali sono documentate insieme a qualsiasi profitto o perdita per il sistema, ma non vengono eseguiti mestieri reali. Un aspetto importante del test di prestazioni in avanti è quello di seguire esattamente la logica del sistema; altrimenti diventa difficile, se non impossibile, valutare con precisione questa fase del processo. I commercianti dovrebbero essere onesti su tutte le entrate commerciali e uscire e evitare comportamenti come le operazioni di raccolta di ciliegie o non includere un commercio su carta razionalizzando che "non avrei mai preso quel commercio". Se il commercio sarebbe avvenuto in seguito alla logica del sistema, dovrebbe essere documentato e valutato.

Molti intermediari offrono un conto di negoziazione simulato dove possono essere collocati i mestieri e il calcolo dei profitti e delle perdite corrispondenti. L'utilizzo di un conto di trading simulato può creare un'atmosfera semi-realistica su cui esercitare la negoziazione e valutare ulteriormente il sistema.

La Figura 2 mostra anche i risultati per il test di prestazioni in avanti su due sistemi. Ancora una volta, il sistema rappresentato nel grafico a sinistra non riesce a fare ben oltre i primi test sui dati in campione. Il sistema visualizzato nel grafico a destra, tuttavia, continua a funzionare bene in tutte le fasi, incluso il test di prestazione in avanti.Un sistema che mostra risultati positivi con buona correlazione tra test in-campione, out-of-sample e test di prestazioni in avanti è pronto per essere implementato in un mercato dal vivo.

La riga inferiore Il backtesting è uno strumento prezioso disponibile nella maggior parte delle piattaforme di trading. La divisione di dati storici in più set per fornire test in campione e fuori del campione può fornire ai commercianti un mezzo pratico ed efficiente per valutare un'idea e un sistema di trading. Poiché la maggior parte dei commercianti utilizza tecniche di ottimizzazione nel backtest, è importante valutare il sistema su dati puliti per determinare la sua vitalità. Continuare il test di out-of-campione con test di prestazioni in avanti fornisce un altro livello di sicurezza prima di mettere un sistema nel mercato rischiando denaro reale. Risultati positivi e una buona correlazione tra il test backtesting in campione e il campione esterno e il test di prestazioni in avanti aumentano la probabilità che un sistema esegua bene nel commercio effettivo. (Per una panoramica completa sull'analisi tecnica, vedere Analisi tecnica: Introduzione .)