Inicio Indicador técnico Publicación

UltraAbsolutelyNoLagLwma: Indicador Avanzado para MetaTrader 5

Archivos adjuntos
20975.zip (22.82 KB, Descargar 0 veces)

Este indicador se basa en el AbsolutelyNoLagLwma y en el análisis de sus múltiples líneas de señal. El algoritmo de cálculo de las líneas de señal es el siguiente: cualquier valor de periodo de la multitud de líneas de señal se calcula utilizando una progresión aritmética:

SignalPeriod(Number) = StartLength + Number * Step

El valor de la variable Number varía de cero a StepsTotal. Los valores obtenidos de los periodos se añaden a un array de variables y se utilizan en cada tick del indicador para obtener un array de los valores suavizados del indicador. A partir de ese array, se calculan las direcciones de la tendencia actual para cada suavizado y se encuentran los números de tendencias positivas y negativas para todo el array de los valores suavizados de AbsolutelyNoLagLwma.

Los números finales de tendencias positivas y negativas se suavizan y se utilizan como las líneas del indicador que forman un histograma de colores, mostrado utilizando la clase de estilo DRAW_COLOR_HISTOGRAM2. La dirección de la tendencia en este indicador se determina por el color del histograma, mientras que su potencia se determina por el ancho del histograma.

Para indicar la tendencia, se utilizan cuatro colores para cada una de las dos direcciones de tendencia: si los valores del histograma no entran en las áreas de sobrecompra/sobreventa, los colores del indicador son más oscuros, mientras que se vuelven más claros cuando se superan los niveles de sobrecompra/sobreventa.

Parámetros de entrada del indicador

//+----------------------------------------------+
//| Parámetros de entrada del indicador                   |
//+----------------------------------------------+
input uint FLength=7;                                // profundidad de suavizado                   
input Applied_price_ IPC=PRICE_CLOSE_;              // constante de precio
//----
input Smooth_Method W_Method=MODE_JJMA;             // Método de suavizado
input int StartLength=3;                            // Periodo de suavizado inicial                    
input int WPhase=100;                               // Parámetro de suavizado
//----  
input uint Step=5;                                  // Paso de cambio de periodo
input uint StepsTotal=10;                           // Número de cambios en el periodo
//----
input Smooth_Method SmoothMethod=MODE_JJMA;         // Método de suavizado
input int SmoothLength=3;                           // Profundidad de suavizado
input int SmoothPhase=100;                          // Parámetro de suavizado
//----                          
input uint UpLevel=80;                              // Nivel de sobrecompra en %%
input uint DnLevel=20;                              // Nivel de sobreventa en %%
input color UpLevelsColor=Blue;                     // Color del nivel de sobrecompra
input color DnLevelsColor=Blue;                     // Color del nivel de sobreventa
input STYLE Levelstyle=DASH_;                       // Estilo de niveles
input WIDTH  LevelsWidth=Width_1;                   // Grosor de niveles         

Se pueden seleccionar algoritmos de suavizado de entre diez posibles versiones:

  1. SMA - media móvil simple;
  2. EMA - media móvil exponencial;
  3. SMMA - media móvil suavizada;
  4. LWMA - media móvil ponderada lineal;
  5. JJMA - promedio adaptativo JMA;
  6. JurX - promedio ultralineal;
  7. ParMA - suavizado parabólico;
  8. T3 - suavizado exponencial múltiple de Tillson;
  9. VIDYA - suavizado con el uso del algoritmo de Tushar Chande;
  10. AMA - suavizado usando el algoritmo de Perry Kaufman.

Es importante destacar que los parámetros de tipo de fase para los diferentes algoritmos de suavizado tienen significados completamente diferentes. Para JMA es una variable externa de fase que cambia de -100 a +100. Para T3 es una proporción de suavizado multiplicada por 100 para mejor visualización, para VIDYA es un periodo de oscilador CMO y para AMA es un periodo de EMA lenta. En otros algoritmos, estos parámetros no afectan el promedio. Para AMA, el periodo de EMA rápida es fijo y tiene un valor predeterminado de 2. La proporción de elevación a la potencia también es igual a 2 para AMA.

El indicador utiliza las clases de la biblioteca SmoothAlgorithms.mqh (cópialo en <terminal_data_folder>\MQL5\Include). El uso de las clases se describe en detalle en el artículo "Promediando series de precios para cálculos intermedios sin usar buffers adicionales".

Fig.1 Indicador UltraAbsolutelyNoLagLwma

Fig 1. Indicador UltraAbsolutelyNoLagLwma

Publicaciones relacionadas

Comentarios (0)