Backtesting di una strategia forex (passo per passo)
Prima di rischiare denaro vero su qualsiasi strategia di trading, devi scoprire se funziona davvero. È proprio quello che fa il backtesting. Applichi le regole della tua strategia ai dati storici dei prezzi e ottieni un report completo delle prestazioni (win rate, drawdown, profit factor) in pochi minuti invece che in mesi. Non è una garanzia di risultati futuri, ma è molto meglio che buttarsi alla cieca.
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.
Cos’è il backtesting
Il backtesting consiste nel testare una strategia di trading sui dati di mercato passati per vedere se avrebbe guadagnato o perso denaro. Definisci le regole di ingresso, le regole di uscita e la gestione del rischio (risk management), poi lasci che un software scorra mesi o anni di candele storiche e generi automaticamente ogni trade. Il risultato è un report dettagliato che mostra se la tua strategia ha un vantaggio (edge) oppure no.
Perché il backtesting è importante
- Ti dice se la tua idea ha qualche valore prima di rischiare denaro vero.
- Mostra il win rate, la vincita/perdita media e il drawdown massimo della strategia, in pochi minuti invece che in mesi di trading reale.
- Ti dà fiducia. Se la tua strategia ha superato centinaia di trade storici, è meno probabile che tu vada nel panico durante una serie di perdite.
- Fa emergere i difetti. Potresti scoprire che il tuo stop loss è troppo stretto, che il segnale di ingresso scatta troppo di rado o che la strategia funziona solo nei mercati in trend.
- Ti fa risparmiare denaro. Una strategia sbagliata non ti costa nulla sui dati storici. Su un conto reale ti costa tutto.
Tre modi per fare backtesting
1. Strumenti dedicati al backtesting (senza programmare)
Il modo più semplice per iniziare. Questi strumenti ti permettono di riprodurre il mercato, piazzare trade sui dati storici e ottenere un report completo delle prestazioni, senza bisogno di programmare.
- Forex Tester Online: lo strumento più affermato. Fino a 23 anni di dati tick-by-tick. Backtesting manuale, semi-automatico e completamente automatico. Diario di trading integrato e un Exit Optimizer che trova automaticamente lo stop loss e il take profit migliori per la tua strategia. Funziona nel browser, su qualsiasi dispositivo. A pagamento (circa 149 $ all’anno).
- FX Replay: replay del mercato nel browser, focalizzato sul forex. Interfaccia pulita con volume profile, strumenti per le sessioni e indicatori in stile ICT. Popolare tra i trader di price action. Disponibile un piano gratuito.
- TradeZella: backtesting abbinato a un diario di trading completo. Ogni trade del backtest viene registrato automaticamente. Oltre 11 anni di dati su forex, futures, azioni e criptovalute. Più di 50 report di analisi. Si integra anche con oltre 400 broker per analizzare i trade reali. A pagamento, con prova gratuita.
2. Backtesting automatico sulla tua piattaforma di trading
Se hai programmato la tua strategia (o ne hai scaricata una gratuita), la piattaforma di trading può applicarla ai dati storici e generare automaticamente un report completo. Ogni piattaforma ha il proprio motore di backtesting; clicca per leggere la guida completa:
- Backtesting su MetaTrader 4: lo Strategy Tester con gli Expert Advisors. Premi Ctrl+R per aprirlo, seleziona il tuo EA, scegli un intervallo di date e avvia. Semplice e molto diffuso, ma usa un solo thread e dipende dalla qualità dei dati.
- Backtesting su MetaTrader 5: stesso procedimento di MT4, ma con ottimizzazione multi-thread (molto più veloce), dati tick reali del tuo broker e forward testing integrato per controllare l’overfitting.
- Backtesting su TradingView: scrivi la strategia in Pine Script (circa 10-15 righe per una strategia semplice), aggiungila al grafico e ottieni subito i risultati. È il linguaggio di scripting più facile da imparare. Offre anche Bar Replay per il replay visivo.
- Backtesting su cTrader: cBots (C#) con dati tick reali come impostazione predefinita. È la simulazione più realistica tra tutte le piattaforme, ma richiede esperienza di programmazione.
3. Backtesting manuale
Il metodo tradizionale: scorri i grafici storici una candela alla volta e annoti ogni trade in un foglio di calcolo. È lento, ma ti obbliga a guardare ogni setup e ti fa prendere confidenza con la price action. Su MT4 e MT5 premi F12 per avanzare di una candela. Su TradingView usi la funzione Bar Replay. Strumenti dedicati come Forex Tester Online e FX Replay sono pensati proprio per questo modo di lavorare.
Quale metodo fa per te
- Nessuna esperienza di programmazione: inizia con uno strumento dedicato come Forex Tester Online, FX Replay o TradeZella.
- Disposto a imparare un po' di scripting: il Pine Script di TradingView è il punto di partenza più semplice.
- Usi già MetaTrader: usa lo Strategy Tester integrato. Online trovi migliaia di EA gratuiti. Per il backtesting MT5 è nettamente migliore di MT4.
- Esperienza di programmazione: cTrader (C#), MT5 (MQL5) o framework avanzati come QuantConnect o Backtrader (Python).
Esempio di backtest: incrocio di EMA su EUR/USD
Ecco come appare un tipico risultato di backtest. L’esempio usa una semplice strategia di incrocio di EMA.
- Strategia: compra quando la EMA 20 incrocia al rialzo la EMA 50. Vendi quando la incrocia al ribasso.
- Coppia: EUR/USD, timeframe H1
- Periodo: gennaio - giugno 2024 (6 mesi)
- Stop loss: 30 pip. Take profit: 60 pip (rapporto rischio/rendimento 1:2)
Risultati:
- Trade totali: 48 | Vincenti: 21 (43,8%) | Perdenti: 27
- Vincita media: +58 pip | Perdita media: -29 pip
- Profit factor: 1,50 | Drawdown massimo: 145 pip (5 perdite consecutive)
- Risultato netto: +435 pip
Un win rate sotto il 50%, ma comunque in profitto perché il rapporto 1:2 compensa. A questo punto testeresti un periodo più lungo e condizioni di mercato diverse prima di impegnare denaro vero.
Questo è un esempio inventato per mostrare come appaiono i risultati di un backtest. I tuoi risultati saranno diversi.
Cosa monitorare nel tuo backtest
Ogni strumento di backtesting genera queste metriche. Ecco cosa significano.
- Trade totali. Almeno 100 per risultati affidabili. Meno di 50 non sono significativi.
- Win rate. Un 40-60% è normale per le strategie profittevoli. Un win rate alto con vincite minuscole e perdite grandi è una trappola.
- Profit factor. Profitto lordo ÷ perdita lorda. Sopra 1,0 = profittevole. Sopra 1,5 = buono. Sopra 2,0 = eccellente.
- Drawdown massimo. Il calo più ampio dal picco al minimo. Se non riusciresti a sopportarlo con denaro vero, la strategia non fa per te.
- Rapporto rischio/rendimento. Rendimento medio ÷ rischio medio. L’ideale è 1:1,5 o meglio.
- Equity curve. Una crescita costante = strategia sana. Piatta con un picco alla fine = sospetta: il profitto potrebbe venire da uno o due trade fortunati.
- Perdite consecutive. La serie di perdite più lunga. Riusciresti a continuare a operare senza infrangere le tue regole?
Errori comuni nel backtesting
- Overfitting. Troppe regole per adattarsi alla perfezione ai dati passati. Sullo storico sembra incredibile, sui dati nuovi fallisce. Più di cinque o sei condizioni sono un segnale d’allarme. Approfondisci in bias comuni.
- Non considerare i costi. Spread e commissioni erodono i profitti. Usa spread variabili se il tuo strumento lo consente: gli spread fissi non sono realistici.
- Dati di bassa qualità. Soprattutto su MT4: controlla la percentuale di qualità della modellazione (modelling quality). Sotto il 90% i risultati non sono affidabili. Usa dati tick reali ogni volta che puoi.
- Troppo pochi trade. 20-30 trade possono sembrare profittevoli per pura fortuna. Punta a più di 100 trade in condizioni di mercato diverse.
- Una sola condizione di mercato. Testa la strategia in fasi di trend, di range e di alta volatilità.
- Curve fitting durante l’ottimizzazione. Scegliere i parametri “migliori” tra migliaia di combinazioni senza convalidarli. Verifica sempre con il forward testing.
Dopo il backtesting: cosa viene dopo
Un buon backtest è il primo passo. Il passo successivo è il forward testing: far girare la strategia sui dati di mercato in tempo reale, su un conto demo oppure con posizioni minime. Così confermi se i risultati del backtest reggono anche fuori dai dati storici.
Se il backtest mostra che la strategia perde denaro, è comunque un’informazione preziosa. Modifica le regole, ripeti il test o prova un approccio diverso. Ogni trader di successo ha scartato molte strategie prima di trovare quelle che funzionano.
