Cose che i principianti devono sapere sui test storici degli EA

Scopri le basi del backtesting degli EA e le limitazioni comuni per la verifica.

Cose che i principianti devono sapere sui test storici degli EA

Cos’è il backtesting degli EA (e cosa non è)

Il backtesting degli EA è il processo di applicare le regole di un sistema di trading basato su regole (spesso chiamato Expert Advisor, o EA) a dati storici dei prezzi per verificare come sarebbe andato. Il risultato non è una prova di performance futura. È invece una testimonianza di come le regole hanno reagito ai dati passati sotto specifiche ipotesi di simulazione.

Il backtesting è anche diverso dal paper trading o dal trading reale. Nel backtesting, controlli tu gli input (dati storici e scelte di modellizzazione). Nei mercati reali, gli input possono differire: gli spread si allargano, si verificano ritardi nell’esecuzione e la liquidità cambia.

Come funziona il backtesting degli EA nella pratica

La maggior parte dei backtest segue lo stesso flusso base:

  1. Definire le regole della strategia.
    Un EA ha tipicamente logica di ingresso/uscita, logica di dimensionamento della posizione e regole di gestione del rischio o del denaro. Queste regole determinano quali ordini sarebbero stati attivati.

  2. Scegliere i dati storici.
    I “prezzi storici” utilizzati nel test influenzano l’esito. Se il dataset presenta lacune, qualità diverse dei tick o formazione delle barre differente da quella attesa dall’EA, i risultati possono essere fuorvianti.

  3. Modellare i dettagli di esecuzione.
    Un backtest richiede spesso ipotesi su spread, commissioni, slippage, riempimento degli ordini e su se stop e target vengono colpiti esattamente quando il prezzo appare. Piccole variazioni qui possono alterare redditività e drawdown.

  4. Eseguire la simulazione.
    Il motore avanza nel tempo applicando le regole dell’EA. Se l’EA utilizza indicatori, questi vengono calcolati usando solo le informazioni disponibili fino a ciascun momento simulato.

  5. Valutare le metriche di performance.
    Metriche comuni includono rendimento netto, drawdown, win rate e distribuzione dei trade. Interpretare queste metriche richiede comprensione del periodo temporale, dei costi inclusi e se l’EA è stato ottimizzato.

Evidenze ed esempi: da dove possono venire risultati “buoni”

Un esempio realistico aiuta a chiarire le trappole tipiche:

  • Supponiamo che un EA appaia forte in un mese di dati storici perché l’andamento del mercato corrispondeva alla sua logica. Se tale logica dipende da un momentum costante, le stesse regole possono performare male in regimi laterali o volatili.

  • Supponiamo che il backtest ignori o sottovaluti i costi di transazione. Nel trading reale, gli spread e le commissioni riducono i rendimenti, e lo slippage modifica i prezzi di ingresso/uscita. Un backtest che non include costi realistici può esagerare i risultati.

  • Supponiamo che i parametri dell’EA siano stati ripetutamente aggiustati per massimizzare i risultati su un singolo dataset. Questo può creare una soluzione overfittata: “apprende” anomalie del passato invece del comportamento generale del mercato.

Limitazioni materiali e modalità di fallimento

I principianti dovrebbero considerare i risultati del backtesting come condizionati dalle ipotesi. Le limitazioni includono:

  1. Cambiamento del regime di mercato
    Le relazioni che si sono manifestate in passato spesso non persistono. Anche se le regole della strategia rimangono le stesse, il comportamento del mercato può cambiare.

  2. Differenza nell’esecuzione
    Le ipotesi del backtesting su riempimento ordini, slippage e attivazione di stop/target possono differire dall’esecuzione reale.

  3. Qualità e campionamento dei dati
    I dati storici potrebbero non replicare esattamente la sequenza di tick o barre attesa dall’EA. Questo può alterare i valori degli indicatori e il timing dei segnali.

  4. Overfitting
    Se l’ottimizzazione dei parametri, la scelta degli indicatori o dei filtri viene ripetuta su un singolo periodo, la strategia può diventare fragile.

  5. Survivorship e selection bias (quando applicabile)
    Se il test utilizza finestre temporali selezionate (ad esempio, solo periodi “di successo”), i risultati possono essere distorti.

Come verificare autonomamente i fatti rilevanti

Un punto di controllo pratico è verificare che il backtest risponda a una domanda verificabile sotto ipotesi esplicite.

Considera questi passaggi di verifica:

  • Ripeti il test utilizzando input coerenti.
    Verifica se lo stesso dataset storico e le stesse impostazioni dell’EA producono gli stessi risultati.

  • Usa più periodi non sovrapposti.
    Testare su anni diversi (o almeno condizioni di mercato diverse) aiuta a capire se i risultati dipendono da un singolo regime.

  • Includi costi ed esecuzione realistici.
    Se il backtest non modella costi come commissioni e spread (e non include ipotesi di slippage quando rilevante), considera i risultati incompleti.

  • Fai test di stress sulle sensibilità.
    Se piccole variazioni ai parametri o alla modellizzazione dell’esecuzione cambiano drasticamente l’esito, ciò indica fragilità.

  • Confronta logica di training e validazione.
    Se i parametri sono stati ottimizzati su un periodo, validali su un periodo separato non usato per l’ottimizzazione.

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.