Un report di backtest MT5 è un’affermazione su un insieme specifico di operazioni, prodotto su uno specifico storico dei prezzi. Quasi ogni lettura sbagliata nasce dal lasciar cadere metà di quella frase. Il profit factor in evidenza viene letto come una proprietà dell’expert advisor. È invece una proprietà di altre due cose: la popolazione di operazioni che il report ha coperto, e i tick con cui il tester è stato alimentato.
Questo articolo è l’ordine di lettura che produce una decisione. Cosa aveva dato per assunto il report prima di stampare qualsiasi cosa, quale metrica risponde a quale domanda, dove ogni numero ti mente, e cosa ti dice di cambiare ciascuna lettura. La procedura per produrre un report è un lavoro a parte — come fare un backtest lo copre dall’inizio alla fine.
| Condizioni del test | |
|---|---|
| ID esperimento | EXP-REPORT-READING-001 |
| Esperimento padre | EXP-BACKTEST-RUNBOOK-001 |
| Fonte | data/run-manifests/*.json → results, ledger_recomputed, shadow_runs |
| Popolazione | all 23 runs published on mt5depot at the time of derivation |
| Build MT5 | 6090 and 6140 |
| Modello | Every tick generated from M1 bars (Model 0) and Every tick based on real ticks (Model 4) |
| Conto | 10,000 USD deposit on all 23 runs |
| Ultima verifica | 2026-08-26 |
Ogni cifra qui sotto viene da un backtest, e tutte e 23 le esecuzioni portano un verdetto PASS — sono le esecuzioni che hanno superato il gate di pubblicazione. Questo ne fa un insieme di sopravvissuti, quindi niente di ciò che leggi qui dice quanto spesso un backtest passa. Dice che aspetto ha, visto da dentro, un report che è passato.
Preparazione: cosa aveva dato per assunto il report prima di stampare un numero
Il blocco Settings in cima a un report MT5 non è un preambolo. È l’elenco delle assunzioni che ogni numero sottostante eredita, e sei di esse decidono se valga la pena leggere il resto. Il nome del broker e la build stanno nella riga del titolo del report stesso — il nostro recita Exness-MT5Trial5 (Build 6090).
| Campo di Settings | Cosa fissa davvero | Cosa registrano i nostri |
|---|---|---|
Symbol: / Period: | I regimi di cui il risultato è un campione | 22 esecuzioni partono da gennaio 2019; cairn parte da giugno 2021 |
| Modello (generazione dei tick) | Come sono stati prodotti i tick dentro ogni barra | Model 0 (generati da barre M1) su 12 esecuzioni, Model 4 (tick reali) su 11 |
Initial Deposit: | Il denominatore di ogni percentuale della pagina | 10.000 USD su tutte e 23 |
| Spread | Il costo tolto da ogni gamba | Misurato su esattamente 1 esecuzione su 23 — le altre ereditano qualunque cosa si portasse dietro lo storico dei prezzi |
| Commissione | Un costo che il tester applica solo se lo imposti tu | 0 su tutte e 23 |
Inputs: | Le impostazioni che hanno prodotto questo, per intero | Verificati contro il report su ogni esecuzione |
L’elenco Inputs: è la riga che la gente salta, ed è quella che rende un report riproducibile: è l’insieme completo dei valori che dovresti reinserire per riottenere la stessa pagina.
Due di quelle righe meritano un momento. Una riga di commissione a zero non significa che la commissione sia stata ignorata. Significa che sul simbolo testato non ne è stata addebitata nessuna. Sono affermazioni diverse, e solo il registro dell’esecuzione ti dice quale si applica. E uno spread non misurato non è uno spread zero: in 22 delle nostre 23 esecuzioni quel campo è vuoto perché nessun registratore girava insieme al test. Ogni gamba si è semplicemente presa lo spread che lo storico M1 si portava dietro. Solo tidewell-slack può dichiarare la propria media, 19,14 punti.
Qui va segnalata una trappola di nomenclatura. Il campo che le guide più vecchie chiamano qualità di modellazione viene stampato da MT5 come History Quality:, nel blocco Results accanto a Bars:, Ticks: e Symbols:. Cercare “modelling quality” dentro un report Build 6090 non trova niente. Nei nostri registri la cifra è presente solo su 2 dei 23 manifesti, perché viene conservata quando il report di origine ne dichiarava una — è una proprietà di questi registri, non una misura di quanto spesso MetaTrader la stampi. In pratica significa che non puoi usarla come filtro per report che non hai generato tu. La fonte dei dati tick è la domanda che ci sta sotto, e a quella si può sempre rispondere: chiedi quale storico ha usato l’esecuzione.
Leggere il report, metrica per metrica
Leggi la pagina in quest’ordine. Volutamente non è l’ordine in cui MetaTrader la stampa, perché i due criteri di esclusione più economici stanno in fondo al report.
- Leggi prima
Settings. Modello,Initial Deposit:, spread e commissione. Ogni percentuale sottostante li eredita, e un’esecuzione con spread non misurato non è un’esecuzione senza spread. - Leggi
Total Trades:prima di qualsiasi rapporto. Un rapporto e la sua numerosità campionaria sono un fatto solo, non due. Scrivi il conteggio accanto al rapporto. - Chiediti quali operazioni copre la cifra in evidenza. Se insieme al report è pubblicato un registro delle operazioni, controlla che il suo totale corrisponda a
Total Trades:. Uno dei nostri 23 report non corrisponde. - Leggi
Equity Drawdown Maximal:, non la riga del saldo, e annota se hai preso la cifraMaximalo quellaRelative— sono righe separate. - Trova lo storico dei prezzi. Quale broker, quale fonte, quale periodo. È il campo che ha spostato un verdetto nei nostri registri; il modello di tick no.
Ecco l’intera lettura in una tabella, usando le etichette che il report stampa davvero. La colonna “nel nostro insieme” è ciò che ogni metrica ha fatto sulle 23 esecuzioni pubblicate. Batte un intervallo da manuale, perché è stata misurata sullo stesso tipo di report che hai in mano.
| Etichetta del report | La domanda a cui risponde | Nel nostro insieme | Segnale d’allarme |
|---|---|---|---|
Total Trades: | Quante prove ci sono | Da 108 a 4.725 per esecuzione | Sotto ~100; un rapporto su 20 operazioni è una diceria |
Profit Factor: | Profitto lordo diviso perdita lorda (profit factor) | Da 1,22 a 1,59 su tutte e 23 | Sopra ~2,0 su una finestra breve; controlla prima Total Trades: |
Profit Trades (% of total): | Il win rate — la forma della distribuzione, non il suo segno | Dal 30,80% all’82,27%, tutte in profitto | Citato da solo, senza un profit factor accanto |
Total Net Profit: | Valuta guadagnata, prima del contesto | Da 386,05 a 28.687,43 USD sullo stesso deposito da 10.000 USD | Citato senza Initial Deposit: e senza il numero di anni |
Balance Drawdown Maximal: | Il calo peggiore sulle operazioni chiuse (max drawdown) | Dallo 0,67% al 18,24% | Citato mentre nella stessa pagina c’è una riga di equity |
Equity Drawdown Maximal: | Il calo peggiore incluse le posizioni aperte | Più profondo del saldo in 23 casi su 23 | Ignorato — è la cifra su cui vive il tuo margine |
Expected Payoff: | Risultato medio per operazione, in valuta | Non riportato nei nostri manifesti | Letto come una previsione anziché come una media |
Recovery Factor: / Sharpe Ratio: | Rendimento per unità di sofferenza, in due modi | Non riportati nei nostri manifesti | Confrontati tra report con numeri di operazioni diversi |
History Quality: | Se il flusso di tick riesce a risolvere il tuo stop | Dichiarata su 2 esecuzioni su 23 | Assente e con fonte dati sconosciuta |
Due convenzioni di quel blocco fregano la gente prima ancora che cominci l’interpretazione.
Total Trades: e Total Deals: sono conteggi diversi. In MetaTrader 5 un giro completo sono due deal — uno in entrata, uno in uscita — quindi un report che mostra Total Trades: 50 mostra accanto Total Deals: 100, e le chiusure parziali aggiungono deal senza aggiungere trade. Leggi i rapporti contro i trade, mai contro i deal.
Le righe di drawdown sono sei, non una. Il report stampa Absolute, Maximal e Relative sia per il saldo sia per l’equity. Peggio: in due di esse l’importo e la percentuale si scambiano di posto — Balance Drawdown Maximal: 36.84 (0.37%) mette prima la valuta, e Balance Drawdown Relative: 0.37% (36.84) mette prima la percentuale. Due report possono citare “0,37%” e “36,84” da righe adiacenti e intendere lo stesso evento — oppure eventi diversi.
Il resto del blocco Results — Z-Score:, AHPR:, GHPR:, LR Correlation:, LR Standard Error:, Margin Level: e le correlazioni MFE/MAE — descrive la forma della curva di equity più che la sua dimensione. Niente di tutto ciò salva un report il cui numero di operazioni è troppo piccolo, e niente di tutto ciò sopravvive a un cambio di storico dei prezzi meglio di quanto sopravviva il profit factor. Leggilo dopo i cinque passi qui sopra, oppure non leggerlo affatto.
Due delle righe metriche fanno in pratica gran parte del danno, quindi leggile insieme invece che in sequenza.
Il profitto netto ha bisogno del suo denominatore e del suo calendario. Tutte e 23 le nostre esecuzioni partono dagli stessi 10.000 USD, il che le rende insolitamente confrontabili. E coprono comunque un intervallo che va dallo 0,51% al 57,38% all’anno. L’estremo basso è istruttivo. orrery segna un profit factor di 1,46 con un drawdown massimo dello 0,67% — la coppia di numeri più bella del catalogo. Ha guadagnato 386,05 USD in 7,58 anni. Niente di quel report è disonesto. Sta rispondendo a una domanda diversa da quella che la maggior parte dei lettori crede di porre.
Win rate e profit factor qui sono quasi indipendenti. Sulle 23 esecuzioni pubblicate la correlazione tra i due è 0,37. Gran parte di ciò che decide se un EA guadagna è quindi invisibile alla riga del win rate. nautical vince il 30,80% delle sue operazioni e rende un profit factor di 1,22; gyre vince l’82,27% e rende 1,59. Entrambi sono in profitto, e i due win rate distano 51 punti.
Il profit factor che il tuo report non ti sta mostrando
Questa è la parte che nessun report ti mostra, ed è il motivo per cui abbiamo potuto scrivere questo articolo a partire dai nostri dati. Ogni esecuzione pubblicata conserva il registro completo delle operazioni chiuse, quindi ogni report si divide in due. C’è la fetta su cui l’EA è stato selezionato — la finestra di sviluppo contro cui la pubblicazione è stata valutata. E poi ci sono le operazioni avvenute dopo la messa online, su cui non è stato selezionato niente. Venti delle nostre 23 esecuzioni pubblicano entrambe le fette; le altre tre non pubblicano alcuna fetta post-pubblicazione.
| EA | Fetta di sviluppo | Fetta post-pubblicazione | In evidenza |
|---|---|---|---|
orrery | 1,28 (195 operazioni) | 6,43 (15 operazioni) | 1,46 (210 operazioni) |
windrose | 1,31 (101 operazioni) | 3,58 (7 operazioni) | 1,38 (108 operazioni) |
cairn | 1,48 (4.583 operazioni) | 1,64 (142 operazioni) | 1,48 (4.725 operazioni) |
gyre | 1,55 (136 operazioni) | — (5 operazioni, nessuna in perdita) | 1,59 (141 operazioni) |
tessera | 1,28 (624 operazioni) | 0,88 (21 operazioni) | 1,27 (645 operazioni) |
zerqon | 1,53 (232 operazioni) | 0,72 (21 operazioni) | 1,43 (253 operazioni) |
Leggi insieme la prima e l’ultima colonna della riga di orrery. La cifra in evidenza dice 1,46; il periodo su cui l’EA è stato davvero scelto dice 1,28; la differenza sono 15 operazioni — il 7% del registro — che girano a un profit factor di 6,43. Leggi allo stesso modo la riga di zerqon e va nella direzione opposta: 1,53 sulla fetta di sviluppo, 0,72 sulle 21 operazioni successive, e una cifra in evidenza di 1,43 che nasconde entrambe.
Sulle 20 esecuzioni che pubblicano entrambe le fette, la cifra in evidenza legge meglio della fetta di sviluppo in 14 casi e peggio in 6. Le altre tre sono escluse di proposito: avendo una sola fetta, la loro cifra in evidenza e la loro cifra di sviluppo coprono esattamente le stesse operazioni, quindi la differenza tra le due non è affatto un effetto di popolazione — è l’arrotondamento a due decimali del report stesso contro il registro ricalcolato. almanac stampa 1.52 dove il registro ricalcola 1,5153. Applica alle 20 quella stessa soglia di arrotondamento e 13 di esse mostrano comunque uno scarto che l’arrotondamento non può spiegare, 8 dei quali nella direzione lusinghiera.
Quell’asimmetria non è uno scandalo. Una cifra che copre due periodi viene trascinata verso quello dei due che è stato più fortunato. Significa però che la cifra in evidenza non è mai il numero da confrontare con un’affermazione sul comportamento futuro.
Trappole: come questi numeri ingannano
La modalità di fallimento sotto tutte e cinque è la stessa: un report è la misura di una popolazione, e ogni metrica della pagina eredita in silenzio la popolazione verso cui il tester era stato puntato.
Migliorare: cosa ti dice di cambiare ciascuna lettura
Un cambiamento per iterazione, e rileggi ogni volta le stesse tre cifre: il numero di operazioni, il profit factor e il drawdown di equity. L’ordine qui sotto è per costo — prima i controlli economici, perché due di essi chiudono regolarmente l’indagine.
- Se il numero di operazioni è piccolo, allunga il periodo — non toccare i parametri. Un profit factor costruito su meno di un centinaio di operazioni si sposta più con una finestra più lunga che con qualunque impostazione tu possa regolare. La nostra esecuzione pubblicata più piccola ha 108 operazioni, ed è quella i cui rapporti citiamo con più cautela.
- Se la cifra in evidenza e la fetta di sviluppo non concordano, rileggi solo sulla fetta di sviluppo. È la cifra contro cui le impostazioni sono state scelte. Ed è quella da confrontare con qualunque altro candidato.
- Se il drawdown di equity sta ben sopra quello di saldo, dimensiona sulla cifra dell’equity. Lo scarto ti dice quante posizioni l’EA tiene dentro lo stesso movimento. L’esecuzione di chrysalis lo dichiara apertamente: fino a sette per volta.
- Se il report arriva dai dati di qualcun altro, rilancialo su una seconda fonte prima di ogni altra cosa. È il controllo con l’effetto misurato più grande di tutto il nostro insieme, ed è l’ultimo che la gente esegue.
Cosa ha davvero spostato i numeri: la fonte dei dati, non il modello di tick
Uno dei nostri EA è stato rilanciato apposta per separare quelle due variabili, e il registro dell’esecuzione etichetta ogni shadow con ciò che isola.
Esecuzione di tidewell-slack | Cosa è cambiato | Operazioni | Profit factor | Drawdown massimo | Qualità dello storico | Verdetto |
|---|---|---|---|---|---|---|
| Pubblicata | Storico M1 Exness, Model 0 | 303 | 1,35 | 9,92% | 99% | PASS |
| Shadow — isola la fonte dati | Storico Dukascopy, Model 0 | 351 | 1,13 | 18,18% | 99% | FAIL |
| Shadow — isola i tick reali | Storico Dukascopy, Model 4 | 345 | 1,11 | 18,20% | 100% | FAIL |
Leggila come due esperimenti separati. Cambiare solo lo storico dei prezzi — dalla riga uno alla riga due, stesso modello di tick — ha portato il profit factor da 1,35 a 1,13, ha quasi raddoppiato il drawdown e ha ribaltato il verdetto da promosso a bocciato. Cambiare solo il modello di tick su quel nuovo storico — dalla riga due alla riga tre — ha spostato il profit factor di 0,02 e il drawdown di 0,02 punti. E la qualità dello storico segna 99% e 100% proprio sulle due esecuzioni che hanno fallito, quindi il campo su cui la maggior parte della gente fa da filtro era eccellente in entrambi i casi.
Un secondo EA punta nella stessa direzione da un’angolazione diversa. kestrel-hover è pubblicato su tick reali Dukascopy con un profit factor di 1,33 e un drawdown del 7,11%, e la sua esecuzione shadow su storico M1 Exness a Model 0 segna 1,30 e 6,76% — sono cambiati insieme sia la fonte sia il modello, e il risultato si è mosso a malapena. La stabilità tra fonti dati diverse è possibile. Semplicemente non è una cosa che un singolo report possa dimostrare.
La regola pratica: un report è una prova trasferibile solo nella misura in cui lo è il suo storico dei prezzi. Rilanciarlo su una seconda fonte costa una serata. Nei nostri registri è l’unico controllo di questo articolo che abbia cambiato una decisione.
Prossimi passi: dal report a una decisione
Leggere bene un report è il secondo di quattro passi. La sequenza è backtest → lettura → walk-forward analysis → demo, e ciascun passo elimina un modo diverso di sbagliare. Un report che sopravvive a tutti e quattro si è guadagnato una posizione piccola; uno che sopravvive ai primi due si è guadagnato un altro test.
- Fai pratica su registri che siano completi. Ogni scheda degli EA pubblicati porta l’elenco completo delle operazioni chiuse e il manifesto di esecuzione, così puoi ricalcolarti da solo una cifra in evidenza e vedere esattamente quali operazioni l’hanno prodotta. È l’unico esercizio che fa sedimentare la lettura.
- Se un numero ti rimanda alla strategia invece che al test, è nell’EA Builder che cambia la regola stessa. Cercare tra le impostazioni è di nuovo un altro lavoro, coperto in ottimizzazione dei parametri.
- Prima di dimensionare qualcosa su una cifra di drawdown appena letta, la gestione del rischio per chi usa gli EA la traduce in un deposito e in una dimensione del lotto.
- Come produciamo, valutiamo e registriamo tutto questo è descritto nella nostra metodologia di test.
I risultati passati dentro un tester non sono una previsione, e nessuna delle esecuzioni qui sopra è una promessa sui prossimi 12 mesi. Il senso di leggere bene un report è più piccolo e più utile di una previsione. Ti dice cosa è stato dimostrato, e cosa è stato soltanto stampato.