Limitazioni della pratica del backtesting

Il backtesting ha limitazioni legate ai costi dei dati e all'incertezza dei mercati futuri.

Limitazioni della pratica del backtesting

La pratica del backtesting in termini semplici

La pratica del backtesting consiste nel valutare un’idea di trading (ad esempio, un’entrata e uscita basata su regole) eseguendola su dati storici dei prezzi. L’obiettivo è stimare quali risultati avrebbe prodotto l’idea in passato se fossero state seguite le stesse regole.

Un backtest include tipicamente: (1) dati storici, (2) una regola o un modello che genera azioni a partire da quei dati e (3) un metodo per calcolare risultati come profitti e perdite, drawdown e frequenza di vittoria/sconfitta. Questi calcoli si basano su ipotesi riguardo a ciò che è accaduto all’interno di ogni periodo temporale (ad esempio, come si sono mossi i prezzi tra i punti dati registrati) e sull’esecuzione degli ordini (ad esempio, commissioni, spread e se gli ordini sono stati eseguiti).

Perché il backtesting può essere meno utile di quanto sembri

Una limitazione fondamentale è che il backtest è una simulazione del passato, non un’osservazione del futuro. Anche quando i risultati storici appaiono forti, le relazioni apprese dal passato potrebbero non ripetersi in nuove condizioni di mercato. Le limitazioni descritte di seguito spiegano i motivi comuni di fallimento.

1) Lacune nei dati storici e nella microstruttura di mercato

La maggior parte dei backtest utilizza barre o tick di prezzo registrati, ma il trading reale comporta dettagli maggiori rispetto a quelli catturati da molti dataset. Se i dati storici sono incompleti, aggiustati in modo da alterare il significato del prezzo o privi di informazioni necessarie per modellare gli eseguiti degli ordini, il backtest potrebbe discostarsi da ciò che accadrebbe nel trading reale.

Inoltre, la corrispondenza tra i prezzi registrati e gli eseguiti possibili è incerta. Ad esempio, se una regola presuppone un eseguito a un livello specifico di prezzo, ma nel mercato reale il prezzo potrebbe aver superato quel livello prima che l’ordine fosse eseguito, la simulazione diventa ottimistica.

2) Costi, qualità dell’esecuzione e slippage

Anche se la logica della strategia è corretta, i risultati dipendono fortemente dalle ipotesi sui costi di transazione e sull’esecuzione. I backtest a volte utilizzano modelli di costo semplificati (ad esempio, spread costanti o nessun slippage) o presuppongono un’esecuzione perfetta degli ordini. Nella pratica, gli spread si allargano, la liquidità cambia e lo slippage può variare in base alla volatilità e all’orario della giornata.

Poiché piccole differenze di costo possono accumularsi su molte operazioni, un backtest che ignora o sottostima questi effetti può esagerare le prestazioni.

3) Overfitting e data-snooping

Il backtesting può involontariamente “adattarsi” al rumore di un particolare dataset. Questo accade quando vengono provati e selezionati molti parametri perché hanno migliorato i risultati passati. Più si cerca una combinazione che sembra buona sugli stessi dati, maggiore è la probabilità che il vantaggio apparente sia specifico di quel periodo piuttosto che una proprietà generale del mercato.

Un problema correlato è il data-snooping: testare ripetutamente molte varianti finché una sembra performare bene. Senza una rigorosa separazione tra periodi di training e di testing, risultati passati positivi potrebbero non riflettere un meccanismo ripetibile.

4) Mercati non stazionari e condizioni mutevoli

I mercati non sono sistemi stabili. I regimi di volatilità cambiano, la partecipazione si sposta e la liquidità può variare. Una regola che ha funzionato in un certo contesto potrebbe comportarsi diversamente se spread, volatilità o correlazioni cambiano.

Anche in assenza di eventi normativi o strutturali, le proprietà statistiche delle serie di prezzo possono evolvere. Ciò significa che le ipotesi implicitamente “incorporate” nel periodo testato potrebbero non essere più valide.

5) Definizione ambigua di ciò che viene effettivamente testato

I backtest possono essere difficili da confrontare perché gli input e le regole differiscono. Per ogni esempio, dovresti essere in grado di specificare:

  • Quale frequenza di dati è stata utilizzata (ad esempio, barre o tick).
  • Come sono stati calcolati indicatori o caratteristiche e se hanno utilizzato solo informazioni disponibili al momento.
  • Come sono state decise entrate e uscite e come sono stati modellati gli eseguiti degli ordini.

Se uno di questi dettagli non è chiaro, il backtest potrebbe non testare l’idea prevista, ma piuttosto un artefatto dell’implementazione scelta.

Verifiche che possono migliorare l’affidabilità

Non puoi fare in modo che un backtest “provi” che una strategia funzionerà, ma puoi verificare se i risultati sono probabilmente robusti.

Un approccio pratico di verifica è definire esplicitamente le ipotesi e testarne la sensibilità. Ad esempio, variare i parametri di costo entro intervalli ragionevoli o utilizzare diversi periodi storici con condizioni di mercato differenti. Inoltre, utilizzare test fuori campione: valutare le regole su dati non impiegati nella selezione dei parametri.

Il trading su forex e CFD comporta rischi significativi. Le informazioni di FoxiForex sono educative e non costituiscono consulenza finanziaria personale. I contenuti sponsorizzati sono chiaramente indicati.