Il Problema dell'Ottimizzazione: Perché Il 90% Porta all'Overfitting
La funzione di ottimizzazione del Strategy Tester MT5 è potente e pericolosa allo stesso tempo. Se esegui un'ottimizzazione su 1.000 combinazioni di parametri, statisticamente troverai combinazioni che hanno funzionato bene nello storico per pura fortuna — anche se il sistema non ha edge reale. Questo è l'overfitting: parametri "ottimizzati" che si adattano al rumore del passato invece di catturare pattern strutturali del mercato.
Il segnale di overfitting più classico nel grafico 3D dell'ottimizzatore MT5: un picco isolato di performance circondato da valori bassi. Questo picco significa che esiste esattamente una combinazione di parametri che ha funzionato in quel periodo storico specifico. Cambia il periodo, il picco si sposta. In live, il sistema performa come la media del grafico 3D (mediocre), non come il picco (eccellente).
Oracle v78 non è ottimizzato per trovare il picco — è ottimizzato per trovare il plateau: una regione ampia del grafico 3D dove molte combinazioni di parametri danno performance simili e stabili. Un plateau significa robustezza: il sistema funziona in un range ampio di parametri, quindi è meno sensibile a variazioni di mercato e periodi non visti in ottimizzazione.
Cos'è la Plateau Rule di Oracle
La Plateau Rule è il criterio di selezione dei parametri usato in Oracle v78: tra tutte le combinazioni ottimizzate, si sceglie quella che si trova al centro di un plateau (regione dove ±20% della variazione del parametro causa <5% di variazione nella performance), non quella con il picco assoluto. Su 65.587 trade, i parametri selezionati con questa regola hanno un WFT Efficiency di 0,78 — contro lo 0,41 medio di sistemi selezionati per picco assoluto.
Strategy Tester MT5: Modalità Ottimizzazione Completa vs Genetica
Il Strategy Tester MT5 (F6) ha due modalità di ottimizzazione: Completa e Genetica. La scelta tra le due dipende dal numero di combinazioni da testare e dalla disponibilità di tempo e risorse computazionali.
Ottimizzazione Completa: testa esaustivamente ogni combinazione possibile di parametri. Se hai 3 parametri con 10 valori ciascuno, testa 10×10×10 = 1.000 combinazioni. Garantisce di trovare il vero ottimo globale nello spazio definito. Limite: cresce esponenzialmente con il numero di parametri. 5 parametri da 20 valori = 3,2 milioni di combinazioni — impraticabile senza Cloud Optimization.
Ottimizzazione Genetica: usa algoritmi evolutivi per esplorare lo spazio dei parametri in modo intelligente senza testare ogni combinazione. Parte da una popolazione casuale di combinazioni, seleziona quelle con performance migliore, le "incrocia" per generare nuove combinazioni, itera. Non garantisce il trovare l'ottimo globale ma converge verso ottimi locali in una frazione del tempo dell'ottimizzazione completa. Oracle usa l'algoritmo genetico per le ottimizzazioni periodiche (ogni 6 mesi) dove si testano 15+ parametri simultaneamente.
Impostazione Corretta dei Range di Parametri
La qualità dell'ottimizzazione dipende dall'impostazione dei range dei parametri quanto dall'algoritmo. Range troppo stretti perdono l'ottimo reale. Range troppo ampi aumentano esponenzialmente il numero di combinazioni e il rischio di overfitting. Per Oracle, uso la regola empirica: range iniziale = valore default ± 50%, step = 10% del range. Poi, dopo la prima ottimizzazione, stringo il range attorno al plateau identificato e ri-ottimizzi con step più piccoli.
Esempio per il parametro ATR_Coefficient di Oracle (valore default 1.5, range 0.8–2.5, step 0.1): prima ottimizzazione testa 17 valori da 0.8 a 2.4 con step 0.1. Il grafico 3D mostra plateau da 1.2 a 1.8 — tutti questi valori danno performance simile. Seconda ottimizzazione nel range 1.2–1.8 con step 0.05: valore scelto = 1.5 (centro del plateau). Questo è il processo Oracle applicato ad ogni versione di release.
Formula: Walk-Forward Test (WFT) e WFT Efficiency Oracle
Walk-Forward Test — struttura Oracle v78:
Periodo totale: 2009–2026 (19 anni, ~4.250 barre H4 per anno)
Finestra IS (In-Sample): 3 anni = ~12.750 barre H4
Finestra OOS (Out-of-Sample): 1 anno = ~4.250 barre H4
Step di avanzamento: 1 anno (rolling window)
Iterazioni: 19 anni / 1 anno step = ~14 iterazioni WFT
Per ogni iterazione:
1. Ottimizza parametri sulla finestra IS di 3 anni
2. Seleziona parametri con plateau rule
3. Applica parametri selezionati sulla finestra OOS di 1 anno
4. Registra performance IS e OOS
WFT Efficiency = Media(Performance_OOS) / Media(Performance_IS)
Oracle v78 risultati:
Media EV IS = +0.876R (su 14 iterazioni)
Media EV OOS = +0,684R (su 14 iterazioni)
WFT Efficiency = 0.684 / 0.876 = 0.781 ≈ 0.78
Interpretazione:
<0.50: Overfitting severo — sistema inutilizzabile in live
0.50–0.65: Overfitting moderato — rischio elevato
0.65–0.80: Robusto — accettabile per trading live ✓ Oracle
>0.80: Eccellente — raro su sistemi reali
WFT Efficiency 0,78 significa che Oracle "consegna" il 78% della sua performance storica su periodi mai visti in ottimizzazione. Su 14 iterazioni WFT dal 2009 al 2026 (ogni anno un nuovo test OOS), Oracle ha mantenuto EV positivo in 12 su 14 iterazioni — le 2 iterazioni negative corrispondono a 2008–2009 (crisi finanziaria, regime anomalo) e 2020 (COVID shock).
Come Leggere il Grafico 3D dei Risultati di Ottimizzazione
Il grafico 3D del Strategy Tester MT5 mostra la performance (asse Z, tipicamente Profit Factor o EV) in funzione di due parametri ottimizzati (assi X e Y). Interpretarlo correttamente è il 50% del processo di ottimizzazione — l'altra metà è scegliere i parametri giusti da ottimizzare.
Pattern da cercare (Plateau): una regione elevata e ampia, a forma di altopiano, dove molte combinazioni di parametri danno performance simile. Visivamente: un "tavolo" largo nel grafico 3D. Questo è il segnale di robustezza. I parametri nel centro del plateau sono la scelta corretta secondo la Plateau Rule Oracle.
Pattern da evitare (Picco Isolato): un singolo spike alto circondato da performance basse. Visivamente: un "dente" nel grafico 3D. Questo è il segnale di overfitting. Quella singola combinazione di parametri ha funzionato per caso nel periodo storico testato. In live performerà come la media del grafico, non come il picco.
Pattern intermedio (Cresta): una regione elevata ma stretta, a forma di "cresta di montagna". Meglio del picco isolato ma peggio del plateau. Se la cresta è lunga (un parametro può variare ampiamente senza perdere performance), è accettabile. Se è sia stretta che alta, è probabilmente overfitting su una delle due dimensioni.
Walk-Forward Optimization Step-by-Step con Oracle v78
Ecco la procedura esatta che uso per ogni nuova versione di Oracle. Oracle v78 è la versione 77 — ogni versione maggiore ha un nuovo ciclo WFT completo.
⚡ Oracle v78 — Performance Verificate 2009–2026
Tabella Oracle: 3 Parametri Ottimizzati — Range, Plateau e Valore Scelto
| Parametro Oracle | Descrizione | Range Testato | Step Ottimizzazione | Plateau Identificato | Valore Scelto v77 | Variazione EV ±10% |
|---|---|---|---|---|---|---|
| ATR_Coefficient | Moltiplicatore ATR per SL distance | 0.8 – 2.5 | 0.1 | 1.2 – 1.8 (+8% vs fuori plateau) | 1.5 (centro) | <3% variazione EV |
| HurstMinThreshold | Hurst minimo per segnale trend | 0.52 – 0.72 | 0.02 | 0.54 – 0.64 (+12% vs fuori) | 0.58 (centro) | <4% variazione EV |
| GARCH_Alpha | Peso volatilità recente in GARCH | 0.05 – 0.35 | 0.02 | 0.12 – 0.22 (plateau più stretto) | 0.18 (centro) | 5–7% variazione EV |
| SessionFilterStart | Inizio blocco sessione GMT | 15 – 19 ore | 1 ora | 16 – 18 (+9,2pp WR) | 17 (FIX-SESSION) | <2% variazione WR |
| RR_Ratio | Rapporto TP/SL | 2.0 – 4.5 | 0.25 | 2.75 – 3.50 (EV massimo) | 3.0 (centro) | <5% variazione EV |
Cloud Optimization MT5: Quando e Come Usarla
L'ottimizzazione con molti parametri richiede ore o giorni su un singolo PC/VPS. MT5 offre la Cloud Optimization: distribuisce il calcolo su centinaia di agenti remoti (computer MetaQuotes e di altri utenti MT5 che mettono a disposizione potenza computazionale) riducendo i tempi da giorni a ore. Il costo: crediti MQL5.community (circa $0.001 per agente-ora, una sessione di ottimizzazione complessa può costare $5–30).
Per Oracle l'ho usata per le ottimizzazioni complete di release major (ogni versione intera, es. da v75 a v76). Le ottimizzazioni periodiche di fine-tuning (aggiustamenti semestrali dei parametri) le eseguo localmente su VPS Windows Server 2022 con 4 vCPU in parallel optimization — più lento ma senza costo per sessione e senza dover caricare i file .mq5 su server cloud esterni.
Parallel Optimization su VPS Locale
MT5 supporta l'ottimizzazione parallela su CPU multi-core: in Strategy Tester, tab Optimization, seleziona "Open agents" — puoi configurare N agenti locali dove N <= numero di thread CPU disponibili. Su VPS con 4 vCPU: 4 agenti paralleli = ottimizzazione ~4 volte più veloce del singolo thread. Non quanto la Cloud con 100+ agenti, ma senza latenza di rete e senza costo per sessione. Per Oracle le sessioni WFT semestrali su VPS 4 vCPU richiedono 18–36 ore per tutte le 14 iterazioni — eseguibili nel weekend senza impatto sull'operatività live.
Errori Comuni nell'Ottimizzazione EA e Come Evitarli
Dopo 78 versioni di Oracle e 19 anni di ottimizzazioni, ho un catalogo preciso degli errori che rendono inutile l'ottimizzazione. Eccoli con il fix.
Errore 1 — Ottimizzare sulla metrica sbagliata: molti ottimizzano sul Profit Totale invece che sull'Expected Payoff (EV). Il Profit Totale dipende dal numero di trade — un sistema che fa 1.000 trade piccoli può avere profit totale alto con EV negativo. Usa sempre "Expected Payoff" come metrica di ottimizzazione in MT5 Strategy Tester.
Errore 2 — Periodo di backtest troppo corto: ottimizzare su 6 mesi e testare OOS su 2 mesi. Con 60–100 trade IS, stai ottimizzando sul rumore. Oracle usa 3 anni IS minimo (1.500+ trade per periodo). Meno di 300 trade IS, l'ottimizzazione è statistica.
Errore 3 — Scegliere il picco assoluto invece del plateau: il picco assoluto nel grafico 3D è quello che salta all'occhio. È quasi sempre overfitting. Forza te stesso a guardare la stabilità attorno al picco prima di accettarlo.
Errore 4 — Non verificare il WFT: il 90% dei trader che ottimizzano in MT5 non fa mai il WFT. Si accontentano di un buon backtest IS. Il WFT richiede lavoro aggiuntivo ma è l'unico modo per validare che la performance IS non sia overfitting. Oracle non va in live senza WFT Efficiency >0.65.
"L'ottimizzazione senza Walk-Forward Test è cosmesi. Puoi avere una equity curve perfetta nell'ottimizzatore MT5 e un sistema che perde denaro in live dal primo giorno. Il WFT Efficiency 0,78 di Oracle non è un numero di marketing — è la misura di quanto il sistema resiste al test del tempo su periodi mai visti."— Manuel Trotta, Fondatore MTInvestments · P.IVA 14349331000
Oracle v78: WFT Efficiency 0,78 su 65.587 Trade Reali
Non stai comprando ottimismo da MT5 Strategy Tester. Stai comprando 19 anni di WFT validato su dati tick reali. Si parte dal Manuale a €27; lo strumento completo è €4.997 (o €241,81/mese ×24).