Un Backtesting profittevole può differire molto dal live se dati, esecuzione o selezione dei parametri sono irrealistici. In MT4 e MT5 il nome della modalità e una percentuale di qualità non sostituiscono la verifica. Qui separiamo dati, costi, cronologia e risultati, mantenendo i limiti di ogni simulazione.

Che cosa distingue i due tester

Entrambi eseguono un Expert Advisor sulla storia. MT5 supporta più simboli e distribuisce passaggi d’ottimizzazione fra agenti; un singolo run non utilizza automaticamente tutti i core. Anche MT4 dispone di ottimizzatore genetico, ma il tester standard non effettua operazioni su simboli diversi da quello testato. Sommare report separati non ricostruisce capitale condiviso di portafoglio.

Conserva build, EA compilato, input, specifiche e ipotesi del conto. I dati scaricati dall’History Center MT4 possono differire dallo storico del server del broker. Durata e nome del timeframe non determinano idoneità. MT4: conto, cronologia e primi controlli e MT5: funzioni utili, netting e costo di migrazione aiutano a distinguere ambiente e funzioni, senza affidabilità o rendimento garantiti.

Molti tick non significano molti minuti coperti

Dataset inventato con tre minuti della stessa durata, tutti dotati di barra M1: dieci tick reali nel primo, dieci nel secondo, nessuno nel terzo. Nel terzo il generatore crea ottanta record assegnati per l’esempio, non letti da un report. Totale cento record. La copertura di minuti con tick reali è 2/3, circa 66,67 %; la quota dei record reali è 20/100 = 20 %. Sono due nostre misure con denominatori diversi, non la definizione di Modelling Quality.

Minuti e record hanno denominatori diversi

Minuti e record hanno denominatori diversiTre minuti fittizi con barre M1: dieci tick reali, dieci reali, ottanta generati. Barre dei conteggi su scala lineare sei pixel per record. Due minuti su tre contengono tick reali, 66,67 percento; venti record su cento sono reali, 20 percento. Nessun risultato del tester reale o qualità predittiva misurati.Copertura nel tempo ≠ quota dei recordTre minuti inventati, tutti con barra M1Minuto 1 · reali10Minuto 2 · reali10Minuto 3 · generati80020406080Minuti con tick reali: 2/3 ≈ 66,67 %Record reali: (10+10)/100 = 20 %
Aggiungere record generati nel terzo minuto cambia il secondo denominatore, non il numero di minuti con tick reali.

Scorri orizzontalmente o ingrandisci il diagramma per leggere i dettagli.

Modalità e qualità dello storico

MT4 offre Open prices only, Control points ed Every tick, basati su barre e percorsi generati; Control points è una stima preliminare grossolana. MT5 aggiunge tick registrati dal broker e modalità 1 minute OHLC. Stop intrabar possono contare anche con segnali giornalieri; una regola adatta all’apertura può consentire semplificazioni solo dopo averne verificato i limiti.

MT5 può riempire con tick generati un minuto dotato di barra ma senza tick reali. Lo Spread Bid–Ask dei tick reali può variare nel minuto; i generati usano quello assegnato alla barra M1. Esamina modalità, copertura dei timeframe inferiori e diario. La qualità di modellazione MT4 riguarda dati generati, non percentuale di previsioni corrette o profitti futuri. Nessun punteggio elevato controlla automaticamente selezione, oneri o fill live.

Importare tick esterni in MT4 richiede un processo compatibile, eventualmente file di test generati o software aggiuntivo: barre HST da sole non garantiscono modellazione su veri tick. Identifica strumento e date, quindi provenienza, lacune e sostituzioni. In MT5 conserva la copertura dei tick reali e i punti in cui entrano dati generati.

Spread, commissioni, finanziamento e ritardi

Controlla le impostazioni del prodotto e conto effettivi. MT4 standard aggiunge lo spread selezionato alla storia Bid; il default usa lo spread corrente all’avvio del test, non l’intero percorso storico. Con quotazione EUR/USD a cinque decimali, dodici point da 0,00001 equivalgono a 1,2 pip da 0,0001. Non chiamare dodici point dodici pip.

MT5 consente Commissione di trading del conto o personalizzate: verifica ingresso, uscita o entrambe e riconcilia un trade chiuso. Il calcolo del profitto in pip omette commissioni, swap e controllo del margine: non è il netto monetario completo. L’emulazione del ritardo è uno scenario, non ricostruisce tutta la liquidità o ogni fill live. Conserva ipotesi e verifica condizioni meno favorevoli senza usare 7 USD o penalità in pip come parametri universali di ogni broker.

Informazione futura, indice sbagliato e selezione

Look-ahead significa usare informazione indisponibile al momento della decisione. Il riferimento alla barra corrente con shift zero evolve nella simulazione. Alle 10:15 è disponibile il massimo già raggiunto dalla barra H1 iniziata alle 10:00, non il massimo finale dell’ora. Una regola sulla barra completata deve attendere; sostituire ogni zero con uno cambierebbe anche corretti rilevamenti di nuova barra e regole sul prezzo corrente. Controlla timestamp, numero copiato e direzione dell’indicizzazione.

CopyRates riuscito con quattro chiusure dalla più vecchia alla corrente: 100, 101, 102, 103. In array dinamico as_series = false, rates[1].close vale 101 e l’ultima completata è rates[2].close = 102. Con as_series = true, rates[1].close vale 102. La regola «ultima completata > 101,5» è vera, ma leggere erroneamente rates[1] nell’array normale la rifiuta. È identificazione di una barra vecchia, non prova di futuro informativo. Non usare quattro elementi se il conteggio restituito è inferiore.

Overfitting può derivare da ricerche ripetute che selezionano rumore favorevole; alto Percentuale di operazioni vincenti, profit factor o basso Drawdown non lo provano da soli. Survivorship bias esclude strumenti o conti esistenti nel passato e poi scomparsi: ricostruisci l’universo disponibile a ogni data, senza inventare un’inflazione universale del 30–50 % dei risultati.

Leggere saldo, equity e valutazione successiva

Leggi insieme netto, numero dei trade, drawdown e costi, conservando report e log. Modello PLN originario: conto 10.000, guadagni chiusi 500 portano il saldo 10.500; perdita aperta 700 lascia equity 9.800, prima di altri oneri o movimenti. Il saldo da solo nasconde l’esposizione. Soglie di profit factor o Sharpe non certificano una strategia.

Controesempio EUR distinto. Saldo iniziale 2.000 EUR, nessun flusso, guadagno chiuso 80, perdita aperta 130, altri oneri zero: saldo 2.080 ma equity 1.950. Il report delle sole chiusure mostra +4 % sul capitale iniziale; la valutazione complessiva è −2,5 %. Se il margine assegnato è 300, il libero semplificato è 1.650. Non chiamare margine o saldo profitto disponibile certo e non sommare due volte la perdita già inclusa nell’equity.

Saldo positivo ed equity negativa rispetto all’inizioConto EUR fittizio:2.000 iniziali, chiuso +80, aperto −130, nessun flusso o altro onere, margine 300.ESEMPIO DI CALCOLOSaldo2.080 EUREquity1.950 EURLibero semplificato1.650 EUR
Saldo positivo ed equity negativa rispetto all’inizio. Conto EUR fittizio:2.000 iniziali, chiuso +80, aperto −130, nessun flusso o altro onere, margine 300.

Le chiusure non descrivono da sole l’esposizione aperta.

Saldo
2.080 EUR – Guadagno chiuso +4 % sul capitale iniziale.
Equity
1.950 EUR – Valutazione complessiva −2,5 %.
Libero semplificato
1.650 EUR – Equity meno 300 di margine; non profitto.

Walk-forward significa selezioni successive congelate, valutate su periodi successivi. Confronta rendimenti annualizzati coerenti e la sequenza cronologica fuori campione. WFE da sola non prova robustezza o overfitting; rendimento in-sample zero o negativo ne complica l’interpretazione. Walk-forward: finestre, gap e limiti della valutazione sviluppa la procedura. Anche un test fuori campione resta simulazione, con dati ed esecuzione assunti, non futuro live verificato.

Limiti della piattaforma e altri strumenti

Il tester valuta regole codificate nel suo modello. Un giudizio discrezionale richiede criteri registrati e protocollo di replay per un confronto utile; non è automaticamente impossibile da verificare. Cambia strumento se non può rappresentare input o meccanismo richiesto, leggendo documentazione e condizioni dei dati correnti. Forex Tester e Strategy Tester: compatibilità e dati disponibili confronta il replay; Backtest di una strategia: regole, costi e dati verificabili tratta il metodo indipendentemente dalla piattaforma.

TimeGMT nel tester verifica un filtro UTC?

Nel tester MT5 TimeGMT coincide con TimeTradeServer simulato. Confrontarli nello stesso run non ricostruisce gli offset storici del broker. Identifica gli assi temporali e prova conversioni su input espliciti: sottrarre sempre due ore non documenta i cambiamenti del server. Europe/Rome è un altro fuso, da determinare sulla data; lingua italiana non ne impone l’uso per una serie del broker.

Un istante, letture diverse

Il filtro usa la scala temporale dichiarata

Il filtro usa la scala temporale dichiarataIstante fittizio 12:00 UTC, offset assegnato +2, lettura server 14:00. Filtro UTC dalle 12 incluse alle 13 escluse: ammette l’istante. Trattare 14 come UTC lo rifiuterebbe. Offset solo dell’esempio, non calendario del broker.Un istante non cambia con l’etichetta12:00 UTC14:00 serverIstante da valutareOffset assegnato +2Finestra UTC: [12:00, 13:00)Dentro: 12:00 · fuori: 13:00 esatte
L’uguaglianza delle funzioni nel tester non costituisce una tabella storica degli offset del broker.

Scorri orizzontalmente o ingrandisci il diagramma per leggere i dettagli.

Il modello ammette 12:00 UTC incluse e 13:00 escluse. L’istante 12:00 è dentro, e con offset assegnato UTC +2 si legge 14:00. Trattare quel 14 come UTC lo rifiuta erroneamente. Il +2 vale solo per il caso: verifica separatamente fine esatta, cambio data e ogni transizione del calendario documentato. Due orologi uguali nella simulazione non dimostrano filtro identico in live.

Controllare l’export prima del prossimo run

Prepara colonne timestamp,open,high,low,close con fuso esplicito. In Backtest: controllare lacune, duplicati e conflitti CSV imposta prima e ultima apertura attesa e intervallo. L’esempio sintetico M1 dalle 08:00 alle 08:11 comprende dodici righe ma otto timestamp validi distinti: quattro posizioni vuote, due righe ripetute e un gruppo OHLC in conflitto. Salva il report e indaga le lacune rispetto alle sessioni del prodotto. OHLC completi non provano tick registrati completi; il controllore non inserisce prezzi né valida l’esecuzione del tester.

Una sequenza pratica di controllo

  1. Scegli dati documentati per prodotto e date. MT4: barre, generazione e preparazione FXT esterna eventuale. MT5: tick reali e sostituzioni. Archivia provider, fuso, lacune e modalità.
  2. Configura costi e ritardi disponibili per l’ambiente effettivo, poi stressa condizioni meno favorevoli. Evita tariffe e penalità universali inventate.
  3. Puoi scegliere quattro anni di selezione e il successivo di test congelato se adatto; confronta annualizzati coerenti e campione, regimi e costi. WFE< 0,5 non diagnostica da sola overfitting; conserva una valutazione finale intatta.
  4. Verifica disponibilità di ogni prezzo e indicatore. Passa a una barra completata solo quando richiesto dalla regola; confronta timestamp e trade. Una variazione del 30 % nel risultato non prova da sola look-ahead.

Un calendario reale per distinguere atteso e mancante

La copia BCE 2016–2025 dello studio del progetto contiene 2.560 pubblicazioni EUR/USD e 49 giorni feriali senza pubblicazione riconciliati con le chiusure TARGET. Dati, calcoli e verifica sono quelli dell’edizione originale, non una raccolta nuova italiana. Esamina calendario, grafico e codice dello studio italiano: un riferimento al giorno non contiene percorso tick o spread eseguibile.