Para ajudar a identificar a estabilidade de uma tendência, J. Welles Wilder desenvolveu o Average Directional Index (ADX).
O ADX é uma ferramenta poderosa para analisar tendências no mercado e tomar decisões de trading, especialmente no mercado FOREX.
Entretanto, a aparência desse indicador pode deixar a desejar - não é muito amigável visualmente.
Para melhorar essa questão, foi criado o código do indicador ColorXADX.mq5, onde as linhas +DI e -DI são exibidas no estilo DRAW_FILLING, com cores que mudam de acordo com a direção da tendência atual e uma nuvem de largura proporcional à força da tendência. A linha do ADX é representada em forma de pontos, cuja cor depende da força da tendência, determinada pela localização desses pontos em relação aos níveis configurados nas definições.
Os indicadores utilizam um método de suavização universal com duas médias e permitem escolher entre diversas versões dessas médias:
- SMA - média móvel simples;
- EMA - média móvel exponencial;
- SMMA - média móvel suavizada;
- LWMA - média móvel ponderada linear;
- JJMA - média adaptativa JMA;
- JurX - suavização ultralinear;
- ParMA - suavização parabólica;
- T3 - suavização exponencial múltipla de Tillson;
- VIDYA - suavização com o algoritmo de Tushar Chande;
- AMA - suavização com o algoritmo de Perry Kaufman.
É importante ressaltar que o parâmetro de Fase tem significados diferentes conforme o algoritmo de suavização utilizado.
- No JMA, é uma variável externa de Fase que varia de -100 a +100.
- No T3, é uma razão de suavização multiplicada por 100 para melhor visualização;
- No VIDYA, é um período de CMO; no AMA, um período de EMA lenta;
- No AMA, o período da EMA rápida é um valor fixo de 2 por padrão. A razão de potenciação também é igual a 2 para o AMA.
Os indicadores utilizam classes da biblioteca SmoothAlgorithms.mqh (que deve ser copiada para a pasta_de_dados_do_terminal\\MQL5\Include). A utilização dessas classes foi detalhadamente descrita no artigo "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers".

Parâmetros de entrada do indicador ColorXADX:
//+----------------------------------------------+ //| Parâmetros de entrada do indicador | //+----------------------------------------------+ input Smooth_Method XMA_Method=MODE_T3; // Método de suavização do histograma input int ADX_Period =14; // Período de suavização XMA input int ADX_Phase=100; // Período de suavização XMA [-100...+100] input Applied_price_ IPC=PRICE_CLOSE_; // Preço aplicado input int Shift=0; // Deslocamento horizontal do indicador em barras input int ExtraHighLevel=60; // Nível máximo de tendência input int HighLevel=40; // Nível de tendência forte input int LowLevel=20 // Nível de tendência fraca input ENUM_LINE_STYLE LevelStyle=STYLE_DASHDOTDOT; // Estilo das linhas de níveis input color LevelColor=Blue; // Cor dos níveis input ENUM_WIDTH LevelWidth=w_1; // Largura dos níveis
Comentário 0