Início Indicador técnico Postagem

UltraWPR: O Indicador que Pode Transformar suas Operações no MetaTrader 5

Anexo
722.zip (20.68 KB, Baixar 0 vezes)

Autor original:

dm34@mail.ru

O UltraWPR é um indicador incrível que utiliza o WPR (Percentual de Larry Williams, %) e analisa múltiplas linhas de sinal. O algoritmo de cálculo das linhas de sinal é bem simples, mas poderoso, e se baseia nos seguintes parâmetros de entrada:

  • StartLength: valor inicial mínimo da primeira linha de sinal;
  • Step: passo de mudança de período;
  • StepsTotal: número total de mudanças de período.

Qualquer valor de período entre as diversas linhas de sinal é calculado usando uma progressão aritmética:

SignalPeriod(Number) = StartLength + Number * Step,

onde a variável Number varia de zero até StepsTotal. Os valores obtidos são armazenados em um array e utilizados a cada tick do indicador para gerar uma série de valores suavizados do Percentual de Larry Williams. As direções da tendência atual para cada uma das suavizações são calculadas e, ao final, determinamos o número de tendências positivas e negativas para todo o array de valores suavizados. O resultado final é suavizado novamente e utilizado como as linhas do indicador, que formam uma nuvem colorida exibida com a ajuda da classe de estilo DRAW_FILLING.

A direção da tendência no UltraWPR é indicada pela cor da nuvem, enquanto a sua força é determinada pela largura da nuvem. Você pode definir os níveis de sobrecompra (UpLevel) e sobrevenda (DnLevel) em porcentagem, baseados na amplitude máxima do indicador.

Os algoritmos de suavização disponíveis são:

  1. SMA - média móvel simples;
  2. EMA - média móvel exponencial;
  3. SMMA - média móvel suavizada;
  4. LWMA - média móvel linear ponderada;
  5. JJMA - média adaptativa JMA;
  6. JurX - suavização ultralinear;
  7. ParMA - suavização parabólica;
  8. T3 - suavização exponencial múltipla de Tillson;
  9. VIDYA - suavização utilizando o algoritmo de Tushar Chande;
  10. AMA - suavização com o algoritmo de Perry Kaufman.

É importante destacar que os parâmetros Phase1 e Phase2 têm significados diferentes dependendo do algoritmo de suavização. Por exemplo, para o JMA, o parâmetro Phase varia de -100 a +100, enquanto no T3 ele é um fator de suavização multiplicado por 100 para melhor visualização. No caso do VIDYA, trata-se do período do oscilador CMO, e no AMA, é um período de EMA lento. Em outros algoritmos, esses parâmetros não influenciam a suavização. Para o AMA, o período de EMA rápida é fixo e igual a 2 por padrão.

O indicador utiliza as classes da biblioteca SmoothAlgorithms.mqh (que devem ser copiadas para a pasta terminal_data_folder\MQL5\Include). O uso dessas classes é detalhado no artigo "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers".

Para instalar o indicador UltraWPR, coloque o arquivo compilado na pasta terminal_data_folder\MQL5\Indicators\.

Parâmetros de entrada do indicador:

//+----------------------------------------------+
//| Parâmetros de entrada do indicador                   |
//+----------------------------------------------+
input int WPR_Period=13;                    // Período do indicador WPR
//----
input Smooth_Method W_Method=MODE_JJMA;     // Método de suavização
input int StartLength=3;                    // Período inicial de suavização                    
input int WPhase=100;                       // Parâmetro de suavização
//----  
input uint Step=5;                          // Passo de mudança de período
input uint StepsTotal=10;                   // Número de mudanças de período
//----
input Smooth_Method SmoothMethod=MODE_JJMA;// Método de suavização
input int SmoothLength=3;                   // Profundidade de suavização                    
input int SmoothPhase=100;                  // Parâmetro de suavização
//----                          
input uint UpLevel=80;                      // Nível de sobrecompra, %
input uint DnLevel=20;                      // Nível de sobrevenda, %
input color UpLevelsColor=Blue;             // Cor do nível de sobrecompra
input color DnLevelsColor=Blue;             // Cor do nível de sobrevenda
input STYLE Levelstyle=DASH_;              // Estilo dos níveis
input WIDTH  LevelsWidth=Width_1;          // Largura dos níveis

UltraWPR

Publicações relacionadas

Comentário (0)