Cos’è un Esempio Pratico di Forward Testing?
Risposta diretta
Un esempio pratico di forward testing è uno scenario completamente dettagliato in cui si applicano delle regole a dati successivi, mai utilizzati nella loro definizione. Il requisito fondamentale è che ogni ipotesi utilizzata nei calcoli sia esplicitata. Questo permette di riprodurre autonomamente i passaggi, verificare i calcoli e capire se il risultato dipende da cambiamenti del mercato o dalle ipotesi scelte.
Cosa significa forward testing (meccanismo)
Il forward testing valuta un approccio di trading utilizzando periodi temporali successivi ai dati impiegati per progettarlo o adattarlo. Nella pratica, spesso si confrontano:
- Backtesting: prestazioni su dati storici (spesso utilizzati per ottimizzare le scelte).
- Forward testing: prestazioni su un periodo successivo, non utilizzato per l’ottimizzazione.
Un “esempio pratico” include tipicamente i seguenti elementi:
- Regole (logica decisionale): condizioni chiare e verificabili per entrare e uscire.
- Divisione temporale: quali date/periodi sono usati per sviluppare le regole e quali sono riservati al forward testing.
- Dati del periodo forward: prezzi/osservazioni per la finestra temporale successiva.
- Ipotesi sul modello di esecuzione: come si suppone che vengano eseguiti gli ordini (es. utilizzando una specifica convenzione di prezzo).
- Costi: commissioni, spread o altre frizioni modellate in modo coerente.
Il forward testing è concettualmente solido, ma i dettagli variano perché l’esecuzione reale differisce dalle ipotesi semplificate.
Un esempio pratico con ipotesi esplicite
Di seguito è riportato un esempio numerico semplificato. Non ha lo scopo di prevedere risultati reali; illustra il meccanismo.
Configurazione
- Obiettivo: valutare una regola che crea al massimo una posizione alla volta.
- Regola (esempio): Apri una posizione long quando è presente un segnale; esci dopo un tempo fisso di detenzione di 2 barre di prezzo.
- Periodo forward: 5 barre consecutive etichettate da 1 a 5.
Ipotesi (specificare tutto)
- Nessun vincolo di leva modellato (solo P&L in contante).
- Dimensione della posizione: equivalente a 1.000 dollari per operazione.
- Convenzione del prezzo del contratto: il profitto è calcolato in base alla variazione percentuale di una singola serie di “prezzi”.
- Prezzi di entrata e uscita: si ipotizza di ottenere esecuzione al close quotato della barra, sia per l’ingresso che per l’uscita.
- Costi: si ipotizza un costo fisso di 2 dollari per operazione (comprende spread e commissioni in un unico valore).
- Cronologia dei segnali: la regola si attiva solo alla barra 1.
Dati del test forward (prezzi)
Si assumono i seguenti valori di prezzo nel periodo forward:
- Close barra 1: 100
- Close barra 3 (uscita, perché il tempo di detenzione è di 2 barre): 104
- I close delle barre 2, 4 e 5 sono irrilevanti perché la regola si attiva una sola volta.
Calcoli
- Numero di operazioni: 1 operazione (attivazione alla barra 1).
- Rendimento lordo (percentuale): (104 − 100) / 100 = 0,04 = 4%
- Profitto lordo: 4% di 1.000 dollari = 40 dollari
- Profitto netto dopo costi: 40 − 2 = 38 dollari
Registrazione del risultato
Un record minimo di forward testing per questo scenario includerebbe:
- Date del periodo (la divisione tra finestra di sviluppo e finestra forward)
- Definizione della regola
- Mappatura di entrata/uscita da barre a prezzi
- Dimensione della posizione
- Ipotesi sui costi
- P&L netto e eventuali misure di rischio calcolate (con formule)
La parte “pratica” consiste nel fatto che è possibile rieseguire gli stessi calcoli se si accettano le ipotesi.
Limitazioni e modi comuni di fallimento
Il forward testing riduce un rischio specifico — valutare su dati già usati per l’ottimizzazione — ma non garantisce affidabilità.
Le limitazioni principali e i modi di fallimento includono:
- Divergenza dalle ipotesi: l’esecuzione al “close” in un modello raramente corrisponde a quella reale. Slippage, variazioni dello spread e latenza possono alterare i risultati.
- Cambiamento di regime di mercato: la finestra forward può riflettere volatilità o correlazioni diverse rispetto ai periodi precedenti, portando a risultati opposti.
- Overfitting tramite ripetuti tentativi: se si modificano ripetutamente le regole dopo aver osservato i risultati forward, si introduce informazione dalla finestra forward stessa.
- Sensibilità ai costi: piccole variazioni nei costi ipotizzati possono invertire la redditività, specialmente quando il margine è ridotto.
- Effetti del campione ridotto: periodi forward brevi o poche operazioni rendono i risultati rumorosi; una singola operazione può dominare.
Nessuno di questi problemi può essere risolto solo con il forward testing; richiedono una definizione accurata delle ipotesi e una verifica coerente.
Come verificare in modo indipendente il forward testing
La verifica indipendente significa poter riprodurre la stessa logica e calcoli a partire dagli input descritti. Una checklist pratica (ancora non consigliata) è:
- Confermare la divisione temporale: i dati di sviluppo devono essere esclusi dalla finestra forward. 2. Verificare che le regole siano non ambigue (cosa attiva e cosa chiude). 3.