Unisciti alla nostra fan page
SpreadAudit - lo spread effettivo del broker ricavato dalla cronologia M1 - script per MetaTrader 5
- Visualizzazioni:
- 6
- Valutazioni:
- Pubblicato:
-
Hai bisogno di un robot o indicatore basato su questo codice? Ordinalo su Freelance Vai a Freelance
Prima di rallegrarsi per il risultato del backtest, è utile sapere quanto si paga effettivamente per ogni operazione. Il terminale registra lo spread in ogni barra della cronologia, ma questa informazione di solito passa inosservata: nel backtester viene visualizzato lo spread “corrente” e le decisioni vengono prese in base a una bella curva dell’equity.
Cosa fa lo script
SpreadAudit analizza la cronologia M1 per il numero di giorni specificato, estrae il campo dello spread di ogni barra e calcola:
- la mediana, il 90° e il 99° percentile dello spread, sia in unità di prezzo che in punti;
- gli stessi valori espressi in frazioni di ATR(H1), per poter confrontare gli strumenti tra loro;
- lo spread medio e massimo per ogni ora del giorno - esporta in un file CSV nella cartella MQL5\Files.
Parametri di input
- InpDays: numero di giorni di dati storici su M1 da analizzare (1..3650, valore predefinito 60);
- InpAtrPeriod: periodo ATR su H1 per la normalizzazione (valore predefinito 24);
- InpSaveCSV - se salvare la tabella oraria in formato CSV.
Esempio di output
=== SpreadAudit: XAUUSD | intervallo effettivo 30/05/2026 ... 29/07/2026 | 86.397 barre (0 senza spread) === spread mediano delle barre: 0,37 (37,0 punti) spread p90 delle barre: 0,42 (42,0 pts) p99 bar spread: 0,45 (45,0 pts) H1 ATR(24) = 6,41 -> spread mediano = 0,058 ATR, p90 = 0,066 ATR

Nel grafico allegato è riportato l'andamento orario dell'XAUUSD negli ultimi 60 giorni. Lo spread medio si mantiene intorno a 0,40, ma nell'ora del rollover giornaliero il massimo balza quasi a 1,80, ovvero più di quattro volte superiore al normale. Una strategia che si inserisce proprio in questa finestra non paga affatto il prezzo che vede in media sul conto.
A cosa serve nella pratica
Un semplice esempio. Supponiamo che il vostro pattern su M5 dia in media 0,28 unità di prezzo per operazione: statisticamente significativo, l’effetto è reale. Se lo spread mediano dello strumento è 0,37, il sistema risulta in perdita sul conto reale, nonostante appaia perfetto sui dati storici privi di costi. La differenza tra «non c’è effetto» e «c’è effetto, ma è inferiore ai costi» è fondamentale: nel primo caso l’idea viene scartata, nel secondo si cerca un timeframe o una geometria dell’operazione in cui l’effetto superi lo spread.
Il grafico orario mostra in quali ore lo spread si allarga. Di solito si tratta del rollover e dei primi minuti dopo l’apertura delle sessioni: se la vostra strategia prevede entrate proprio in quei momenti, vale la pena impostare un filtro sullo spread, preferibilmente in frazioni di ATR piuttosto che in punti: una soglia assoluta diventa obsoleta quando cambia il regime di volatilità.
Una precisazione importante
MetaTrader registra nella barra lo spread MINIMO relativo a quella barra. Ciò significa che tutti i valori riportati rappresentano il limite inferiore ottimistico di quanto pagherete in realtà. La logica è semplice: se anche il limite minimo dei costi mette fuori gioco la strategia, non c’è più nulla da discutere.
Se il campo dello spread nella cronologia M1 del vostro broker non è compilato (in alcuni casi vi sono degli zeri), lo script lo segnalerà in modo trasparente e non calcolerà le statistiche sulla base di dati vuoti.
Tradotto dal russo da MetaQuotes Ltd.
Codice originale https://www.mql5.com/ru/code/75450
Clock (Spread)
Cosa fa questo indicatore? Clock (Spread).mq5 è un indicatore per i grafici di MetaTrader 5 che visualizza una piccola etichetta di testo nell’angolo del grafico, riportante: Il conto alla rovescia fino alla chiusura della candela corrente (nel formato HH:MM:SS o MM:SS, a seconda del timeframe) Lo spread attuale (Ask − Bid, in punti), visualizzato tra parentesi accanto al timer. Cronologia delle modifiche: Versione 2.20: - Lo spread ora cambia colore dinamicamente in base alla direzione (verde = in aumento, rosso = in diminuzione) - Aggiunti parametri configurabili per i colori dello spread
RepaintTest - measure whether a drawing indicator repaints
Measures whether a drawing indicator repaints, instead of asserting that it does not. The invariant: once a bar has closed and been processed, no object drawn on it may ever change - not move, not recolour, not change its text, and not disappear. The script seeds a custom symbol with real history, attaches your indicator through a template, records every object, appends bars, forces a full recalculation, and compares object by object. Changes and disappearances are counted separately, because only a change means the claim is false. A run that compared nothing is reported as INCONCLUSIVE, never as a pass. Output is a CSV you can publish next to the number.
Market Replay Tool
Market Replay Tool is an MT5 utility that seamlessly merges a Market Replay simulator with interactive TradingView-style Long & Short drawing tools. It allows traders to backtest strategies on historical data with adjustable playback speeds, while effortlessly mapping out risk-to-reward setups using dynamic, draggable entry, stop-loss, and take-profit visual boxes directly on the chart.
MA_AC_Stochastic_Signal
This indicator shows trend direction (Moving Average) and trading signals (Stochastic + Accelerator).