Backtesting su MetaTrader 4 (passo dopo passo)
MetaTrader 4 ha uno Strategy Tester integrato (il tester delle strategie) che ti permette di far girare in automatico qualsiasi Expert Advisor (EA) sui dati storici dei prezzi. Ottieni l’elenco completo dei trade, la curva dell’equity e un report sulle prestazioni, senza rischiare un solo centesimo. MT4 permette anche il backtesting manuale con il metodo F12, candela per candela.
Avvertenza sul rischio: Questo contenuto ha solo scopo educativo e non costituisce una consulenza finanziaria. Il trading sul forex comporta rischi e puoi perdere denaro.
Aprire lo Strategy Tester
- Vai su View → Strategy Tester oppure premi Ctrl+R. Il pannello dello Strategy Tester compare nella parte bassa dello schermo.
Configurare il backtest
- Expert Advisor: seleziona il tuo EA dal menu a tendina. Se non ne hai ancora installato uno, copia il file dell’EA nella cartella
MQL4/Expertsdi MT4 e riavvia la piattaforma. Se non programmi i tuoi EA, online ne trovi migliaia gratuiti. - Symbol: la coppia di valute che vuoi testare (per esempio EURUSD).
- Period: il timeframe (per esempio H1, M15, D1).
- Model: il metodo di modellazione. “Every tick” è il più preciso: simula ogni movimento di prezzo all’interno di ogni candela. “Open prices only” è molto più veloce, ma è affidabile solo per le strategie che operano alla chiusura della candela. “Control points” è una via di mezzo, ma si usa raramente.
- Use date: spunta questa casella e imposta la data di inizio e di fine. Usa almeno 6 mesi di dati, meglio ancora 1 anno o più.
- Spread: scegli “Current” oppure inserisci un valore fisso in punti. Per risultati realistici, usa uno spread vicino a quello tipico del tuo broker su questa coppia.
Expert properties (proprietà dell’EA)
- Fai clic sul pulsante Expert properties per aprire la finestra delle impostazioni.
- Scheda Testing: imposta il deposito iniziale (per esempio 10.000 $) e la leva (per esempio 1:100).
- Scheda Inputs: contiene tutti i parametri regolabili dell’EA: ampiezza dello stop loss, take profit, periodi degli indicatori, dimensione del lotto e così via. Modificali in base a quello che vuoi testare.
- Fai clic su OK e poi su Start per avviare il backtest.
Leggere i risultati
Quando il backtest finisce, in basso compaiono tre schede:
- Scheda Results: l’elenco di tutti i trade, con orario di ingresso, orario di uscita, direzione, dimensione del lotto, profitto/perdita e saldo progressivo. Scorrila per verificare che i trade abbiano senso rispetto alle regole della tua strategia.
- Scheda Graph: la curva dell’equity. Una linea che sale in modo regolare è un buon segno. I crolli improvvisi rivelano periodi di drawdown pericolosi. Una linea piatta con un picco alla fine è sospetta: il profitto potrebbe dipendere da uno o due trade fortunati.
- Scheda Report: le statistiche complessive, tra cui numero totale di trade, profit factor, expected payoff, drawdown massimo (in denaro e in percentuale), percentuale di trade vincenti, trade migliore e peggiore e vincita/perdita media. Leggi cosa monitorare nel backtest per capire il significato di ogni metrica.
Qualità dei dati
L’accuratezza del backtest dipende interamente dalla qualità dei dati storici. Dati scadenti producono risultati fuorvianti.
- Dopo un backtest, controlla la percentuale di modelling quality (qualità della modellazione) nella scheda Report. Deve essere almeno del 90%. Se è più bassa, i tuoi dati hanno buchi o candele mancanti.
- Per migliorare la qualità dei dati: vai su Tools → History Center, seleziona la coppia e scarica i dati disponibili. In questo modo ottieni i dati di base forniti da MetaQuotes.
- Per i risultati migliori, usa un software per i dati tick (per esempio Tick Data Suite o TickStory) e scarica i dati reali tick per tick. Così arrivi a una qualità di modellazione del 99% e tieni conto degli spread variabili: molto più realistico dei tick generati di default da MT4.
- Senza buoni dati tick, MT4 genera tick sintetici a partire dalle candele M1. Questo va bene per le strategie sui timeframe più alti (H1, H4, D1), ma non è affidabile per le strategie di scalping su M1 o M5.
Ottimizzazione
L’ottimizzazione ti permette di testare centinaia o migliaia di combinazioni di parametri per trovare le impostazioni migliori per il tuo EA.
- Nello Strategy Tester, spunta la casella “Optimization” prima di fare clic su Start.
- In Expert properties → Inputs, imposta un intervallo per ogni parametro da ottimizzare: valore iniziale, passo e valore finale. Per esempio, stop loss da 20 a 50 con passo 5.
- MT4 testa ogni combinazione e mostra i risultati nella scheda Optimization Results, ordinati per profitto.
- Attenzione: non scegliere semplicemente la combinazione più redditizia. Questo è curve fitting: i parametri “migliori” spesso sono stati solo fortunati sui dati storici. Cerca intervalli di parametri in cui più valori vicini tra loro sono tutti in profitto. È il segno di una strategia robusta.
- Limite di velocità: l’ottimizzatore di MT4 è single-thread, cioè usa un solo core della CPU. Le ottimizzazioni più grandi possono richiedere ore. Se la velocità conta, MetaTrader 5 è molto più veloce grazie all’ottimizzazione multi-thread.
Visual mode (modalità visuale)
- Spunta “Visual mode” nello Strategy Tester per guardare l’EA operare su un grafico a velocità accelerata. Vedi ogni ingresso e ogni uscita nel momento in cui avvengono.
- È utile per capire come si comporta la tua strategia e per individuare problemi evidenti (per esempio l’EA che apre trade durante le notizie o in orari strani).
- Disattiva la modalità visuale quando vuoi i risultati definitivi: rallenta molto il backtest.
Backtesting manuale (metodo F12)
Se non hai un EA e vuoi testare una strategia discrezionale, puoi far avanzare il grafico a mano.
- Apri un grafico sulla tua coppia e sul tuo timeframe.
- Disattiva l'Auto Scroll (scorrimento automatico): fai clic destro sul grafico e togli la spunta. Altrimenti il grafico continua a saltare all’ultima candela.
- Torna indietro fino alla data di inizio con la barra di scorrimento oppure premendo Home.
- Premi F12 per avanzare di una candela alla volta. Vedi solo quello che è successo fino a quel momento, non quello che verrà dopo.
- Quando le tue regole di ingresso sono soddisfatte, registra il trade in un foglio di calcolo (prezzo di ingresso, stop loss, take profit, data, direzione).
- Continua a premere F12 finché il trade non raggiunge lo stop o il target. Registra il risultato.
- Ripeti fino alla fine del periodo di test.
Questo metodo è lento, ma ti fa acquisire una profonda familiarità con la price action. Per un backtesting manuale più veloce, valuta uno strumento dedicato come Forex Tester Online o FX Replay: trovi i dettagli nella guida introduttiva al backtesting.
I limiti del backtesting su MT4
- Single-thread. L’ottimizzazione usa un solo core della CPU: è lenta quando testi molti parametri.
- Tick generati. Di default MT4 crea tick sintetici a partire dai dati M1. Sono meno precisi dei dati tick reali, soprattutto per le strategie veloci.
- Nessun forward testing integrato. Non puoi dividere i dati in un periodo di backtest e uno di validazione in un’unica esecuzione. Devi farlo a mano oppure usare MT5.
- Solo 9 timeframe. Non puoi testare su intervalli personalizzati come i grafici a 2 ore o a 8 ore.
- Non più sviluppata attivamente. MT4 riceve aggiornamenti di sicurezza ma nessuna nuova funzione. MetaQuotes punta tutto su MT5.
Se questi limiti per te sono importanti, MetaTrader 5 risolve la maggior parte dei problemi. Se vuoi il modo più semplice per scrivere script, prova TradingView.