Assista a como baixar robôs de negociação gratuitos
Encontre-nos em Facebook!
Participe de nossa página de fãs
Script interessante?
Coloque um link para ele, e permita que outras pessoas também o avaliem
Você gostou do script?
Avalie seu funcionamento no terminal MetaTrader 5
Visualizações:
9
Avaliação:
(3)
Publicado:
Freelance MQL5 Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance

Antes de comemorar o resultado do backtest, é importante saber quanto você realmente paga por cada operação. A plataforma armazena o spread em cada barra do histórico, mas essa informação geralmente passa despercebida: no testador, é exibido o spread “atual”, e as decisões são tomadas com base em uma curva de equidade atraente.

O que o script faz

O SpreadAudit percorre o histórico M1 pelo número de dias especificado, extrai o campo do spread de cada barra e calcula:

  • a mediana, o 90º e o 99º percentis do spread — em unidades de preço e em pontos;
  • os mesmos valores em frações do ATR(H1), para comparar os instrumentos entre si;
  • o spread médio e máximo para cada hora do dia — exporta para um arquivo CSV na pasta MQL5\Files.

Parâmetros de entrada

  • InpDays — quantos dias do histórico M1 devem ser analisados (1..3650, padrão 60);
  • InpAtrPeriod — período do ATR no H1 para normalização (padrão: 24);
  • InpSaveCSV — se a tabela por hora deve ser salva em CSV.

Exemplo de saída

=== SpreadAudit: XAUUSD | intervalo real 30/05/2026 ... 29/07/2026 | 86.397 barras (0 sem spread) === spread mediano por barra: 0,37 (37,0 pts) spread p90 por barra: 0,42 (42,0 pts) spread de barra p99: 0,45 (45,0 pts) ATR H1(24) = 6,41 -> spread mediano = 0,058 ATR, p90 = 0,066 ATR

SpreadAudit: spread do XAUUSD por hora

Na figura anexa, vemos o gráfico horário do XAUUSD ao longo de 60 dias. O spread médio se mantém em torno de 0,40, mas, na hora do rollover diurno, o máximo salta para quase 1,80, ou seja, mais de quatro vezes acima do normal. A estratégia que opera exatamente nesse intervalo não paga de forma alguma o preço que vê, em média, na conta.

Por que isso é importante na prática

Um exemplo simples. Suponhamos que seu padrão no M5 resulte, em média, em 0,28 unidades de preço por operação — estatisticamente significativo, o efeito é real. Se o spread mediano do instrumento for de 0,37, o sistema será deficitário na conta real, embora pareça excelente nos dados históricos sem custos. A diferença entre “não há efeito” e “há efeito, mas os custos são menores” é fundamental: no primeiro caso, a ideia é descartada; no segundo, busca-se um timeframe ou uma geometria de negociação em que o efeito supere o spread.

O gráfico horário mostra em quais horários o spread se amplia. Normalmente, isso ocorre no rollover e nos primeiros minutos após a abertura das sessões — se a sua estratégia entra exatamente nesses momentos, vale a pena aplicar um filtro de spread, sendo que é melhor defini-lo em frações do ATR, e não em pontos: um limite absoluto se torna obsoleto quando o regime de volatilidade muda.

Observação importante

O MetaTrader armazena na barra o spread MÍNIMO para essa barra. Portanto, todos os números obtidos representam um limite inferior otimista do que você paga na realidade. A lógica é simples: se até mesmo o limite inferior dos custos acaba com a estratégia, não há mais o que discutir.

Se o campo de spread do seu corretor no histórico M1 estiver em branco (em alguns casos, há zeros), o script informará isso com transparência e não calculará as estatísticas com base em dados vazios.

Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/75450

Clock (Spread) Clock (Spread)

O que este indicador faz O Clock (Spread).mq5 é um indicador de gráfico do MetaTrader 5 que exibe uma pequena legenda de texto no canto do gráfico, mostrando: Contador regressivo até o fechamento da vela atual (no formato HH:MM:SS ou MM:SS, dependendo do período) Spread atual (Ask − Bid, em pontos), exibido entre parênteses ao lado do contador. Histórico de alterações: Versão 2.20: - O spread agora muda de cor dinamicamente de acordo com a direção (verde = aumentando, vermelho = diminuindo) - Adicionadas entradas configuráveis para as cores do spread

Inside Bar Inside Bar

Detecte automaticamente padrões de “Inside Bar”, desenhe retângulos de projeção e receba alertas em tempo real — tudo em um único indicador poderoso. Operador de swing e de margem total

Accumulation/Distribution Accumulation/Distribution

O Indicador Accumulation/Distribution (Acumulação/Distribuição ou A/D) é determinado pelas mudanças de preço e volume.

Accelerator Oscillator (AC) Accelerator Oscillator (AC)

O Indicador Acceleration/Deceleration (Aceleração/Desaceleração ou AC) mede a aceleração e a desaceleração da força motriz atual do mercado.