A Convergência e Divergência de Médias Móveis (MACD) compara uma média móvel exponencial rápida dos preços de fecho com uma média móvel exponencial lenta. A sua linha de sinal suaviza essa diferença; o seu histograma mostra a distância entre a linha MACD e a linha de sinal.
O que mede o MACD
Os exemplos usam uma EMA rápida de 12 barras, uma EMA lenta de 26 barras e uma EMA de sinal de 9 barras, aplicadas aos preços de fecho. Esses são os valores predefinidos clássicos, não recomendações otimizadas.
- A linha MACD é a EMA rápida menos a EMA lenta.
- A linha de sinal é uma EMA da linha MACD.
- O histograma é a linha MACD menos a linha de sinal.
O cálculo usado neste ficheiro
MACD[i] = EMA(close, FastEma)[i] - EMA(close, SlowEma)[i] Signal[i] = EMA(MACD, SignalEma)[i] Histogram[i] = MACD[i] - Signal[i] alpha = 2 / (N + 1) EMA[i] = EMA[i-1] + alpha * (x[i] - EMA[i-1])
Valores iniciais e inicialização
Cada EMA começa com a média simples dos seus primeiros N valores de entrada. As EMAs rápida e lenta do preço começam nas respetivas barras de inicialização; a EMA de sinal começa com os primeiros SignalEma valores disponíveis do MACD. A indexação parte da barra mais antiga. Com histórico suficiente, o primeiro índice do MACD é SlowEma − 1 e o primeiro índice do sinal e do histograma é SlowEma + SignalEma − 2. Os valores anteriores ficam vazios. Com histórico insuficiente, todos os buffers permanecem vazios e a próxima chamada recalcula tudo de raiz.
A média inicial é calculada como o primeiro valor mais a média das diferenças em relação a ele. Essa é a mesma média simples e mantém exata uma sequência de valores idênticos. Uma EMA com N = 1 é a própria entrada.
Como os cruzamentos são definidos
Um cruzamento de alta da linha de sinal ocorre quando a linha MACD passa de baixo para cima da sua linha de sinal. Um cruzamento de baixa é o inverso. De forma equivalente, o histograma muda de sinal. Já um cruzamento da linha zero ocorre quando a própria linha MACD muda de sinal.
Acima e abaixo são comparações estritas. Um zero exato mantém o lado anterior: um toque sem mudança de sinal não é um cruzamento. Um cruzamento que passa por um zero exato é registado na primeira barra estritamente do novo lado. A primeira barra que tem um lado não tem um lado anterior a partir do qual cruzar.
Um cruzamento descreve barras passadas; não prevê preços.
Os cruzamentos são registados na barra que fecha e torna visível a mudança de sinal, nunca retroativamente. A barra mais recente pode ainda estar em formação e não confirma um cruzamento. Os seus valores de MACD, sinal e histograma são recalculados a cada tick. Um evento de barra fechada não é removido nem deslocado enquanto o histórico fechado permanecer inalterado; ao recarregar o histórico, o indicador é recalculado com os novos dados.
Como ler os exemplos em gráficos
Estes gráficos usam barras horárias de EURUSD, com preços e valores do MACD em USD por EUR. A exportação capturada contém 5,000 barras fechadas de 2025-12-04 15:00 a 2026-09-24 22:00. Esta é uma amostra histórica, não uma cotação em tempo real.
Os horários dos gráficos são os horários de abertura das barras no terminal. A diferença medida no relógio do terminal no momento da captura era UTC+3; mudanças históricas de horário de verão não são modeladas. As lacunas de fins de semana e de sessões são comprimidas, com uma linha vertical discreta nas lacunas.
Uma visão geral da amostra recente

Um cruzamento de alta abaixo de zero

Um cruzamento de baixa acima de zero

Cada exemplo de cruzamento é o cruzamento elegível mais recente com 40 barras de contexto de cada lado e um cruzamento posterior da linha zero em até 30 barras. O resultado do preço não é usado na seleção. As janelas sobrepõem-se em 75 barras; mostram eventos relacionados na mesma parte da amostra.
Uma sequência densa de cruzamentos

Cruzamentos após extremos de oscilação

Transfira o indicador
O indicador funciona numa janela separada, apresentando a linha MACD, a linha de sinal, o histograma e setas de cruzamento da linha de sinal. Não realiza operações, não envia alertas nem usa importações de DLL.
Código-fonte MQL5
Código-fonte nativo com períodos editáveis das EMAs rápida, lenta e de sinal.
Indicador MT5 compilado
O resultado de compilação registado é 0 erros, 0 avisos. A aplicação ao gráfico nativo e o desenho não foram testados.
Código-fonte MQL4
Apenas revisão estática: não foi compilado nem executado no MT4.
Configuração
- Selecione o ficheiro-fonte ou compilado para a plataforma desejada.
- Use a pasta de indicadores e os controlos de indicadores da plataforma para carregar um indicador personalizado.
- Defina FastEma, SlowEma e SignalEma. FastEma e SignalEma devem ser positivos; SlowEma deve ser maior que FastEma.
- Verifique a convenção da linha de sinal, o histórico disponível e o comportamento em barras fechadas antes de interpretar a apresentação.
Limitações
Esta ferramenta não deteta divergência do MACD. Marca cruzamentos e não prevê preços nem negocia. As contagens de cruzamentos da amostra não são taxas de acerto e não foram testadas quanto ao desempenho de negociação. Outras implementações podem usar médias diferentes para a linha de sinal, valores iniciais ou primeiras barras diferentes, alterando os seus valores iniciais ou a sua linha de sinal.
As contagens da amostra não são taxas de acerto e não foram testadas quanto ao desempenho de negociação.
Perguntas frequentes
O que mede a linha MACD?
É a EMA rápida dos preços de fecho menos a EMA lenta dos preços de fecho.
O que mostra o histograma?
É a linha MACD menos a linha de sinal. É positivo quando o MACD está acima da linha de sinal e negativo quando o MACD está abaixo dela.
Que configurações usam os exemplos?
Os períodos das EMAs rápida, lenta e de sinal são, respetivamente, 12, 26 e 9 barras, aplicados aos preços de fecho.
Um cruzamento da linha de sinal é o mesmo que um cruzamento da linha zero?
Não. Um cruzamento da linha de sinal muda o sinal de MACD menos sinal. Um cruzamento da linha zero muda o sinal da própria linha MACD.
A barra mais recente pode confirmar um cruzamento?
Não. A barra mais recente pode ainda estar em formação. Os seus valores mudam a cada tick; este ficheiro regista eventos de cruzamento apenas em barras fechadas.
Porque pode o MACD integrado do MetaTrader parecer diferente?
O indicador integrado usa uma linha de sinal de média simples e desenha a linha MACD como um histograma. Este ficheiro usa uma linha de sinal EMA e desenha MACD menos sinal como o seu histograma.
O ficheiro deteta divergência?
Não. Esta ferramenta não deteta divergência do MACD.
Leitura complementar
- Cálculo e apresentação do MACD
- Buffers do indicador MACD
- Média móvel do oscilador
- Definições de médias móveis
- Eventos de recálculo do indicador
- Obtenção de barras históricas
- Modo de cálculo do testador de estratégias
- Referência de cálculo com ponderação exponencial
- Pastas e estrutura do editor
- Controlos de negociação automatizada da plataforma
- Trabalhar com indicadores
Os produtos alavancados podem causar perdas rápidas. Em Portugal, os CFD destinados a investidores de retalho estão sujeitos a restrições.




