Se você está buscando uma maneira de detectar e visualizar divergências entre a ação do preço e o Oscilador Maravilhoso (AO), este indicador é a solução ideal. As divergências são sinais importantes no mercado, aparecendo quando o movimento do preço não está alinhado com o movimento do oscilador, podendo indicar possíveis reversões ou continuações de tendência. O indicador não só plota sinais de compra e venda, mas também exibe um histograma do AO e linhas de tendência que destacam essas divergências.


Recursos-chave do Indicador:
- Detecção de Divergências:
- Identifica divergências de alta (o preço faz mínimas mais baixas enquanto o AO faz mínimas mais altas).
- Identifica divergências de baixa (o preço faz máximas mais altas enquanto o AO faz máximas mais baixas).
- Visualização:
- Setas de Compra/Venda: Plota setas no gráfico para indicar potenciais sinais de compra ou venda com base nas divergências.
- Histograma: Exibe os valores do Oscilador Maravilhoso como um histograma.
- Linhas de Tendência: Desenha linhas de tendência no gráfico para destacar as divergências entre o preço e o AO.
- Buffers Personalizados:
- Utiliza quatro buffers para armazenar dados:
- BuyBuffer e SellBuffer para sinais de compra/venda.
- HistogramBuffer para os valores do AO.
- PointsCounterBuffer para rastrear pontos alinhados para confirmação da divergência.
- Utiliza quatro buffers para armazenar dados:
- Desenho Dinâmico de Linhas de Tendência:
- Usa CChartObjectTrend para desenhar linhas de tendência dinamicamente no gráfico para o preço e o AO.
- Verificação de Cruzamentos:
- Inclui uma função (CheckCrossing) para verificar se o preço ou o AO cruzam uma linha de tendência, ajudando a confirmar ou invalidar uma divergência.
- Interpolação:
- Usa interpolação linear (CalculateIntermediateValue) para calcular valores intermediários entre dois pontos, que é utilizado para verificar cruzamentos.
Como Funciona:
- Inicialização:
- A função OnInit() configura os buffers do indicador, atribui propriedades (como cores e estilos), e inicializa o handle do Oscilador Maravilhoso (AO).
- Cálculo Principal:
- A função OnCalculate() processa os dados de preço e AO para detectar divergências:
- Identifica fundos (mínimas mais baixas) e topos (máximas mais altas) tanto no preço quanto no AO.
- Verifica as divergências comparando as tendências de preço e AO.
- Plota sinais de compra/venda e desenha linhas de tendência quando uma divergência é confirmada.
- A função OnCalculate() processa os dados de preço e AO para detectar divergências:
- Confirmação da Divergência:
- Utiliza condições como IsBullishTrend e IsBearishTrend para confirmar divergências.
- Assegura que não ocorra cruzamento entre as linhas de tendência do preço e do AO para validar a divergência.
- Atualizações Dinâmicas:
- O indicador se atualiza dinamicamente com cada nova barra, recalculando divergências e redesenhando linhas de tendência conforme necessário.
Funções-chave:
- IsBottom() e IsTop():
- Detecta mínimos locais (fundos) e máximos (topos) em um array (preço ou AO).
- CheckCrossing():
- Verifica se o preço ou o AO cruzam uma linha de tendência, o que pode invalidar uma divergência.
- CalculateIntermediateValue():
- Calcula valores intermediários usando interpolação linear para análise de linhas de tendência.
- AddUniqueCoordinates():
- Assegura que coordenadas únicas sejam adicionadas ao array para o desenho de linhas de tendência.
- TotalAligned():
- Conta o número de pontos alinhados para confirmar a força da divergência.
Uso:
- Esse indicador é útil para traders que utilizam estratégias de divergência para identificar potenciais reversões ou continuações no mercado.
- Oferece pistas visuais (setas, linhas de tendência e histogramas) para ajudar os traders a tomarem decisões informadas.
Cenário Exemplo:
- Se o preço está fazendo mínimas mais baixas (baixa), mas o AO está fazendo mínimas mais altas (alta), uma divergência de alta é detectada. O indicador irá plotar uma seta de compra e desenhar linhas de tendência para destacar a divergência.
- Por outro lado, se o preço está fazendo máximas mais altas (alta), mas o AO está fazendo máximas mais baixas (baixa), uma divergência de baixa é detectada. O indicador irá plotar uma seta de venda e desenhar linhas de tendência.
Detalhes Técnicos:
- Plataforma: MetaTrader 5 (MT5).
- Linguagem: MQL5.
- Dependências: Utiliza o Oscilador Maravilhoso (iAO) para cálculos.
- Objetos Personalizados: Utiliza CChartObjectTrend para desenhar linhas de tendência e CArrayInt para gerenciar arrays de coordenadas.
Este indicador é uma ferramenta poderosa para traders que desejam automatizar a detecção e visualização de divergências, economizando tempo e melhorando a precisão em suas estratégias de trading.
Publicações relacionadas
- iMFISignAlert: O Indicador para MetaTrader 5 que Gera Alertas
- Buffers Horários para Coleta de Dados no MetaTrader 5
- Calendário Econômico: Monitoramento e Cache para Testes de Estratégia no MetaTrader 5
- iDeMarkerSignAlert: O Indicador de Sinalização para MetaTrader 5
- EquiPeak Drawdown Tracker: Controle Eficiente para Seus EAs no MetaTrader 5