Directional Movement DMI with Cross Alerts
- Indicadores
-
Kazuma Uezono
MQL5 / MQL4 / Pine Script v6 developer and active trader.
Seller on the MQL5 Market (indicators for MT4/MT5).
Services:
- TradingView Pine Script to MT5/MT4 conversion (bar-by-bar matching, with tester report)
- MT4 to MT5 migration - Versão: 1.0
Directional Movement DMI with Cross Alerts é um Directional Movement Index (DMI) compatível com o TV para o MetaTrader 5. Ele calcula ADX, +DI e -DI da mesma forma que o "Directional Movement Index" embutido no TradingView e os desenha com as mesmas cores padrão em uma janela separada: ADX (#F50057), +DI (#2962FF) e -DI (#FF6D00).
O DMI descreve quão forte foi o movimento recente (ADX) e qual lado se moveu mais (+DI ou -DI). É um auxílio para a análise do gráfico, não um sinal de compra ou venda, e não prevê para onde o preço vai.
COMO É CALCULADO
- up = high - high anterior, down = low anterior - low. +DM = up quando up > down e up > 0; caso contrário, 0. -DM = down quando down > up e down > 0; caso contrário, 0.
- TR = true range (amplitude real): o maior entre high - low, |high - close anterior| e |low - close anterior|.
- +DI = 100 x RMA(+DM) / RMA(TR) e -DI = 100 x RMA(-DM) / RMA(TR), sobre DI Length (padrão 14).
- ADX = 100 x RMA(|+DI - -DI| / (+DI + -DI)), sobre ADX Smoothing (padrão 14).
- RMA é a suavização de Wilder, a mesma do ta.rma() do TradingView: o primeiro valor é uma média simples e, depois disso, alpha = 1 / length.
- Os valores são comparados com a mesma pequena tolerância (1e-10) usada pelo Pine Script, então um cruzamento é encontrado na mesma barra que no TradingView, mesmo quando duas linhas são quase iguais.
COMO VERIFICAMOS
- Carregamos no MetaTrader as próprias barras de preço do TradingView e comparamos o resultado com o DMI embutido do TradingView. ADX, +DI e -DI coincidiram até o arredondamento de ponto flutuante (diferenças em torno de 1e-12).
- No gráfico de uma corretora os valores são um pouco diferentes, porque os preços vêm de outro feed de dados.
- A suavização de Wilder começa na barra carregada mais antiga. Se o seu histórico começar em uma barra diferente da do TradingView, a parte mais antiga do gráfico pode diferir um pouco; o efeito desaparece à medida que mais barras são calculadas.
EXIBIÇÃO
- Três linhas em uma janela separada. As cores e a espessura da linha (de 1 a 5) podem ser alteradas.
- Linha de limiar do ADX tracejada opcional (padrão 25, cinza). O DMI embutido do TradingView não tem essa linha; ela é um extra. 25 é apenas um nível de referência comum, não uma regra.
- Os valores são exibidos com 4 casas decimais, como no TradingView.
A ÚLTIMA BARRA (REPAINT)
- A barra que ainda está se formando é recalculada a cada tick, exatamente como no TradingView. Seus valores podem mudar até a barra fechar.
- Depois que uma barra fecha, seus valores não mudam.
ALERTAS (DESATIVADOS POR PADRÃO)
- Cruzamento +DI / -DI: o +DI cruzou o -DI para cima ou para baixo na barra que acabou de fechar.
- Limiar do ADX: o ADX cruzou o limiar para cima na barra que acabou de fechar (apenas cruzamentos para cima).
- Verificado uma vez por barra fechada. Barras que fecharam antes de o indicador ser carregado não geram alertas, então anexá-lo ou reiniciar o MT5 não produz alertas antigos.
- Exemplo de mensagem: "DMI TV EURUSD H1: +DI crossed above -DI (+DI 27.41 / -DI 19.85)".
- Pop-up, som e notificação push podem ser combinados. O push exige seu MetaQuotes ID nas opções do terminal. Textos de alerta em inglês ou japonês.
PARA USUÁRIOS DE EA E iCUSTOM
- Buffer 0 = ADX, buffer 1 = +DI, buffer 2 = -DI. Barras sem valor retornam EMPTY_VALUE. Os três valores também aparecem na Janela de Dados.
- Quando um EA ou outro indicador o carrega via iCustom, ele não gera alertas; apenas calcula os buffers.
LEIA ANTES DE USAR
- O ADX precisa de DI Length + ADX Smoothing barras de histórico antes de aparecer (28 barras com os padrões); +DI e -DI aparecem antes.
- Logo após o carregamento, o nome curto na lista de indicadores pode mostrar rapidamente "probe#..." enquanto o indicador verifica se está em um gráfico. Isso é normal.
- No Testador de Estratégias ele não gera alertas.
- Sem DLLs, sem arquivos externos, sem conexão com a internet.
- Ele não opera, e nenhum resultado de trading é prometido.
PARÂMETROS
DMI: ADX Smoothing (14, 1-1000), DI Length (14, 1-1000)
Style: ADX line color (#F50057), +DI line color (#2962FF), -DI line color (#FF6D00), Line width (1, 1-5), Show ADX threshold line (true), ADX threshold (25, 0-100), Threshold line color (#787B86)
Alerts: Alert: +DI / -DI cross (false), Alert: ADX crosses above the threshold (false), Alert by pop-up (true), Alert by sound (false), Alert by push notification (false), Language (Auto = idioma do terminal, English ou Japanese)
Se um parâmetro estiver fora do intervalo, o indicador não carrega e escreve o motivo no log de Experts.
SUPORTE
Perguntas sobre instalação, configurações e bugs são bem-vindas pelas mensagens do MQL5. Perguntas sobre a direção do mercado ou sobre operações específicas estão fora do escopo do suporte.
Faz parte de uma série de ferramentas gratuitas no estilo TV. Uma edição para MT4 também está disponível como produto separado. Outras ferramentas do mesmo autor estão listadas no meu perfil de vendedor.
TradingView é uma marca registrada da TradingView, Inc. Este produto não é afiliado, patrocinado ou endossado pela TradingView, Inc.
