Punti chiave:
- Il walk-forward testing verifica se una strategia di trading regge su dati che non ha mai visto, non solo sullo storico su cui è stata “tarata”.
- Divide i dati in una finestra in-sample per l’ottimizzazione e una finestra out-of-sample per la verifica, poi fa scorrere le finestre nel tempo.
- Il suo obiettivo principale è far emergere l’overfitting (strategia “troppo cucita” sul passato) prima di mettere a rischio capitale reale.
- La walk-forward efficiency sintetizza i risultati in un solo numero e misura quanto il vantaggio visto in-sample resiste in condizioni simili al mercato reale.
Molti trader lo imparano sulla propria pelle: una strategia che sembra impeccabile sui dati passati può crollare appena va in reale. Il motivo è semplice: se un sistema viene ottimizzato in modo eccessivo sullo storico, finisce per “imparare” il rumore casuale (movimenti non ripetibili) invece di un comportamento di mercato stabile.
Il walk-forward testing nasce per intercettare presto questo problema. Ottimizza le regole su una porzione di dati e poi le testa su una porzione successiva, che il modello non ha mai usato.
Questa guida spiega, passo dopo passo, una strategia di walk-forward testing, per validare le idee con più sicurezza prima di impegnare capitale.
Walk-Forward Testing: spiegazione semplice

Il walk-forward testing è un metodo di verifica che imita come una strategia si adatta nel tempo. Invece di ottimizzare una sola volta su tutto lo storico, si ottimizza “a blocchi”. Ogni blocco viene poi testato su dati nuovi, non usati nella fase di ottimizzazione.
Dati in-sample e out-of-sample
Ogni test walk-forward usa due blocchi di dati. I dati in-sample sono la parte usata per trovare le impostazioni migliori. I dati out-of-sample vengono tenuti da parte e servono solo a verificare quelle impostazioni. È come un esame.
- I dati in-sample sono le prove su cui ti alleni.
- I dati out-of-sample sono l’esame vero, senza “sbirciare”.
- Se una strategia brilla solo in-sample, spesso ha solo memorizzato lo storico.
Buoni risultati in-sample da soli contano poco. È la performance out-of-sample a indicare se il vantaggio è credibile.
Come “scorre” la finestra di ottimizzazione
Walk-forward descrive il movimento del test: si ottimizza su una finestra iniziale dello storico, poi si avanza e si testa sul blocco successivo. Quindi si sposta in avanti l’intera finestra e si ripete.
Questo processo genera una sequenza di risultati out-of-sample collegati tra loro. Ne esce un quadro più realistico di come le regole avrebbero retto mentre il mercato cambiava, invece di un “colpo di fortuna” su un solo periodo.
Il problema che risolve: overfitting (curve fitting)
Lo scopo del walk-forward testing è far emergere l’overfitting (detto anche curve fitting): quando una strategia viene regolata in modo così preciso sui prezzi passati da catturare rumore casuale e non un modello ripetibile. I segnali tipici sono chiari.
- Decine di parametri “micro-regolati”
- Backtest con rendimenti eccezionali e quasi nessuna operazione in perdita
- Risultati che peggiorano appena arriva nuovo storico
Una strategia “curve-fittata” sembra brillante in laboratorio e fallisce sul mercato. Il walk-forward obbliga le regole a dimostrare valore su dati su cui non sono state ottimizzate.
Come funziona il Walk-Forward Testing, passo per passo
Il metodo si capisce come un ciclo ripetuto. Ogni ciclo ha quattro fasi. Capito un ciclo, hai capito tutto: si rifà lo stesso schema più avanti nel tempo.
1. Divisione dei dati tra ottimizzazione e test
Per prima cosa, dividi i dati storici in segmenti. Ogni segmento include una parte più ampia per l’ottimizzazione e una più piccola per il test.
- Circa 70%-80% della finestra per l’ottimizzazione in-sample
- Il restante 20%-30% per il test out-of-sample
Per esempio: ottimizzi su 12 mesi e poi testi sui 3 mesi successivi. Il rapporto dipende dalla strategia e dalla quantità di dati disponibile.
2. Ottimizzazione dei parametri nella finestra in-sample
Poi esegui l’ottimizzazione dei parametri solo sul blocco in-sample. Il software prova combinazioni di impostazioni (per esempio la durata di una media mobile o la distanza dello stop) e seleziona quelle con i risultati migliori.
L’obiettivo non è il rendimento massimo possibile, ma parametri sensati e stabili. Meglio intervalli robusti che impostazioni estreme vincenti solo in un periodo ristretto.
3. Verifica sui dati out-of-sample (mai visti)
Applica le impostazioni scelte al blocco out-of-sample. Qui non si ricalibra nulla: si fa girare la strategia come se fosse in reale.
Questo è il punto centrale. Se la strategia continua a funzionare su dati mai usati, hai un’indicazione concreta di vantaggio. Se peggiora molto, il risultato in-sample era probabilmente un’illusione.
4. Scorrimento della finestra e ripetizione
Infine fai scorrere in avanti tutta la finestra e ripeti. Ogni nuovo ciclo ottimizza su nuovi dati in-sample e verifica sul blocco successivo. Esempio semplice con ottimizzazione 12 mesi e test 3 mesi.
| Esecuzione | In-sample (Ottimizzazione) | Out-of-sample (Test) |
| Run 1 | Gen – Dic 2023 | Gen – Mar 2024 |
| Run 2 | Apr 2023 – Mar 2024 | Apr – Giu 2024 |
| Run 3 | Lug 2023 – Giu 2024 | Lug – Set 2024 |
| Run 4 | Ott 2023 – Set 2024 | Ott – Dic 2024 |
Unendo i periodi out-of-sample ottieni una serie continua di risultati su dati “nuovi”.
Analisi walk-forward: anchored e rolling
Ci sono due modi comuni di far scorrere la finestra nel tempo. La scelta dipende da come la strategia reagisce quando cambiano le condizioni di mercato.
1. Walk-forward “anchored” con data di partenza fissa
Nel walk-forward anchored la data di inizio resta fissa. Si sposta in avanti solo la fine della finestra in-sample, quindi il blocco di ottimizzazione cresce. È adatto a strategie che traggono beneficio da molta storia.
- Usa più storico possibile a ogni passaggio.
- Presuppone che anche i dati vecchi siano utili.
- È indicato per strategie lente e “strutturali”.
Il compromesso è che dati molto vecchi possono ridurre il peso delle condizioni più recenti.
2. Walk-forward “rolling” con finestra mobile
Nel walk-forward rolling la finestra ha lunghezza fissa e scorre in avanti. I dati più vecchi escono dalla finestra mentre entrano quelli nuovi.
- Concentra l’ottimizzazione sulle condizioni recenti.
- Si adatta più rapidamente a cambiamenti di volatilità (ampie oscillazioni dei prezzi) e trend.
- È adatto a sistemi di breve periodo e più reattivi.
Poiché “dimentica” la storia lontana, reagisce rapidamente ai cambi di regime (quando il mercato passa da un comportamento a un altro), ma può rendere i risultati più irregolari da un ciclo all’altro.
Come scegliere tra anchored e rolling
Nessuno dei due è sempre migliore. Dipende dall’orizzonte temporale della strategia e da quanto ritieni utili i dati più vecchi.
| Caratteristica | Walk-forward anchored | Walk-forward rolling |
| Data di inizio | Fissa | Avanza |
| Dati usati | Aumentano a ogni ciclo | Lunghezza costante |
| Ideale per | Sistemi di lungo periodo, strutturali | Sistemi di breve periodo, adattivi |
| Rischio principale | Dati vecchi “spengono” il segnale | Perde storia utile |
Walk-forward efficiency e lettura dei risultati

Una volta completati i cicli, serve un criterio per valutarli. La walk-forward efficiency è una delle misure più usate: trasforma molti risultati in un solo numero, utile per confrontare strategie diverse.
Come si calcola la walk-forward efficiency
Confronta la performance out-of-sample con quella in-sample. La formula è semplice:
Walk-forward efficiency = (Rendimento out-of-sample ÷ Rendimento in-sample) × 100
Esempio con rendimenti annualizzati (cioè riportati su base annua per poterli confrontare):
- Rendimento in-sample: 40%
- Rendimento out-of-sample: 24%
Walk-forward efficiency = (24 ÷ 40) × 100 = 60%
Un 60% indica che l’out-of-sample ha mantenuto circa sei decimi del risultato in-sample. Più ci si avvicina a 100%, più il vantaggio sembra reggere.
Unire efficienza, curva dei profitti e drawdown
Un solo numero non basta. La walk-forward efficiency va letta insieme ad altre misure.
- La equity curve (curva del capitale), che idealmente cresce in modo regolare e non con un solo picco.
- Il drawdown massimo (perdita massima dal picco al minimo), per capire quanto può scendere il capitale nel periodo peggiore.
- La costanza dei risultati in ogni ciclo, non solo la media.
Una strategia può avere un’efficienza discreta ma un drawdown troppo severo per essere utilizzabile. Conta più un comportamento stabile che un singolo indicatore.
Come impostare un test walk-forward
Impostare un test walk-forward significa fare scelte sensate prima di avviare la simulazione. Una buona ottimizzazione walk-forward dipende soprattutto da tre decisioni: durata delle finestre, numero di cicli e piattaforma.
1. Scegliere la durata dei periodi in-sample e out-of-sample
La durata deve riflettere la frequenza operativa. Un sistema che trad-a ogni giorno ha bisogno di meno tempo per finestra rispetto a uno che opera poche volte al mese. Punti di partenza ragionevoli:
- Rapporto circa 3:1 o 4:1 tra in-sample e out-of-sample.
- Out-of-sample con abbastanza operazioni da essere significativo, non poche.
- Finestre abbastanza lunghe da includere condizioni di mercato diverse.
2. Decidere quanti cicli walk-forward usare
Più cicli significano più prove out-of-sample, quindi in genere è meglio. L’obiettivo è vedere la strategia in contesti diversi:
- Se i dati lo permettono, usa almeno 8-10 cicli.
- Ogni blocco out-of-sample deve contenere un numero di operazioni rilevante.
- Copri fasi di trend (mercato direzionale) e fasi laterali (range).
3. Eseguire l’ottimizzazione walk-forward in MT5, Python e Amibroker
Non serve costruire tutto a mano. Alcuni strumenti supportano direttamente l’ottimizzazione walk-forward:
- MetaTrader 5 (MT5) include uno Strategy Tester con modalità walk-forward per gli Expert Advisor (robot di trading, cioè programmi che eseguono regole in automatico).
- MetaTrader 4 (MT4) può fare ottimizzazioni a fasi, ma richiede più gestione manuale delle finestre.
- Python permette, tramite librerie, di scrivere cicli walk-forward su misura.
- Amibroker ha una funzione dedicata con scorrimento automatico delle finestre.
Se operi con un broker come VT Markets, puoi testare sistemi di trading algoritmico (strategie eseguite da software) su MT4 e MT5 prima di passare al reale.
Walk-forward testing: confronto con metodi simili
È utile capire dove si colloca il walk-forward rispetto ad altri metodi di verifica. Ogni approccio controlla una strategia in modo diverso.
1. Walk-forward vs backtest standard
Qual è la differenza tra backtest e walk-forward? Un backtest standard spesso ottimizza e valuta sugli stessi dati storici, e così l’overfitting può passare inosservato. Il walk-forward separa sempre ottimizzazione e verifica, usando dati non visti.
- Il backtest chiede: come avrebbero funzionato queste impostazioni in questo storico?
- Il walk-forward chiede: come avrebbero funzionato su dati su cui non sono state tarate?
La seconda domanda è più vicina al trading reale, quindi i risultati walk-forward sono in genere più affidabili.
2. Walk-forward vs cross-validation
La cross-validation è comune nel machine learning (tecniche in cui un modello “impara” dai dati). Divide lo storico in più parti e alterna quale parte resta fuori per il test. La differenza chiave è il tempo.
- La cross-validation spesso mescola i dati, senza rispettare l’ordine temporale.
- Il walk-forward rispetta sempre la sequenza nel tempo.
Nei mercati l’ordine temporale è fondamentale: usare “informazioni del futuro” per testare il passato non è realistico. Per questo il walk-forward è spesso la scelta più sensata.
3. Walk-forward vs un solo test out-of-sample
Un singolo test out-of-sample mette da parte solo un blocco di dati recenti. È meglio di niente, ma verifica un solo periodo. Il walk-forward migliora in tre aspetti:
- Testa molti blocchi out-of-sample.
- Copre più scenari di mercato.
- Riduce la probabilità che un unico periodo “fortunato” gonfi i risultati.
Più finestre out-of-sample significano più prove e meno sorprese.
Affidabilità, limiti ed errori comuni
Il walk-forward è potente, ma non prevede il futuro. Capirne i limiti aiuta a passare dalla simulazione al capitale reale con aspettative corrette.
Cosa può e cosa non può confermare
Può indicare che la logica della strategia ha retto su dati storici non usati prima. È un’informazione utile. Non può garantire profitti futuri.
- I dati storici, anche se “nuovi” per il modello, restano dati del passato.
- Il mercato può entrare in condizioni mai viste nello storico.
- Costi come slippage (esecuzione a un prezzo peggiore del previsto) e spread (differenza tra prezzo denaro e lettera) possono ridurre i risultati teorici.
Un buon risultato walk-forward è un segnale positivo, non una promessa.
Errori comuni nella scelta delle finestre e nella lettura dei risultati
Gli errori più frequenti dipendono da un’impostazione sbagliata o da una lettura “ottimista” dei numeri. Evita questi problemi.
- Finestre troppo corte, con poche operazioni.
- Riotttimizzare dopo aver visto i risultati out-of-sample: annulla il senso del test.
- Ignorare i costi di trading durante il test (spread, commissioni, costi overnight).
- Valutare solo il rendimento medio e ignorare drawdown e costanza.
- Scegliere solo il ciclo che appare migliore.
Un walk-forward ben fatto richiede accettare i risultati anche quando non piacciono.
Domande frequenti (FAQ)
Q1: Che cos’è il walk-forward testing?
È un metodo di verifica: ottimizza una strategia su un blocco di dati storici e poi la testa su un blocco successivo, non usato prima. Ripetendo il processo con finestre che scorrono nel tempo, offre una visione più realistica di come la strategia potrebbe comportarsi in condizioni simili al reale.
Q2: Qual è la differenza tra walk-forward anchored e rolling?
Nell’anchored la data di partenza resta fissa e la finestra di ottimizzazione cresce. Nel rolling la finestra ha lunghezza fissa e scorre, eliminando i dati più vecchi man mano che entrano quelli nuovi. L’anchored è più adatto a sistemi di lungo periodo, il rolling si adatta più in fretta alle condizioni recenti.
Q3: Come scegliere i periodi in-sample e out-of-sample?
Allinea la durata delle finestre alla frequenza con cui la strategia opera. Un punto di partenza comune è un rapporto 3:1 o 4:1 tra in-sample e out-of-sample. Ogni blocco out-of-sample deve includere abbastanza operazioni da essere significativo.
Q4: Qual è la differenza tra walk-forward testing e backtesting?
Nel backtest standard spesso si ottimizza e si valuta sugli stessi dati, quindi l’overfitting può non emergere. Nel walk-forward la verifica avviene sempre su dati non usati per l’ottimizzazione. Questa separazione rende i risultati più vicini a ciò che può accadere nel trading reale.
Esercitati con il walk-forward testing con VT Markets
Una strategia ha senso solo se supera una prova su dati che non ha mai visto: è il motivo per cui esiste il walk-forward testing. Sostituisce la speranza con evidenze e rende un backtest “bello” più credibile prima di usare capitale reale.
I trader che durano testano con disciplina: verificano su dati non visti, rispettano i limiti del metodo e non scambiano un backtest ordinato per una garanzia. Se trasformi questo in abitudine, anche le strategie future ne beneficiano.
Con VT Markets puoi applicare la tua strategia di walk-forward testing su MetaTrader 4 (MT4) e MetaTrader 5 (MT5), con condizioni di mercato reali, esecuzione rapida e strumenti per operare con maggiore controllo.