Mira cómo descargar robots gratis
¡Búscanos en Facebook!
Pon "Me gusta" y sigue las noticias
¿Es interesante este script?
Deje un enlace a él, ¡qué los demás también lo valoren!
¿Le ha gustado el script?
Evalúe su trabajo en el terminal MetaTrader 5
Visualizaciones:
583
Ranking:
(10)
Publicado:
2018.10.08 09:31
Actualizado:
2023.03.27 14:33
\MQL5\Include\
UltraMFI.mq5 (22.19 KB) ver
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa

Autor real: Dmitry.

Este indicador se basa en los valores del indicador técnico MFI (Money Flow Index) y en el análisis de la multitud de sus líneas de señal. El algoritmo del cálculo de líneas de señal es el siguiente. Tenemos los parámetros de entrada del indicador como datos iniciales:

  • StartLength - valor mínimo inicial de la primera línea de señal;
  • Step - paso del cambio del período;
  • StepsTotal - número de los cambios del período.

Cualquier valor del período de la multitud se calcula usando la fórmula de la progresión aritmética:

SignalPeriod(Number) = StartLength + Number * Step,

donde el valor de la variable Number se cambia de cero a StepsTotal. Los valores obtenidos de los períodos se añaden al array de variables y se usan en cada tick del indicador para obtener el array de valores promediados del indicador Larry Williams' Percent Range. A base de este array, se calcula la dirección de la tendencia actual para cada una de promediaciones, y se determina el número de tendencias positivas y negativas para el array entero de valores promediados de MFI.

El número final de tendencias positivas y negativas se promedian y se usa como líneas del indicador, que forman una nube de color que se visualiza usando el estilo DRAW_FILLING.

La dirección de la tendencia en este indicador se determina por el color de la nube, y la fuerza de la tendencia se determina por su ancho. Se puede usar los niveles de sobrecompra (UpLevel) y sobreventa (DnLevel), los cuales se establecen en por cientos desde la envergadura máxima del indicador.

Se puede cambiar los algoritmos de promediación en el indicador, usando para eso 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 suavizada lineal;
  5. JJMA - promediación adaptable JMA;
  6. JJurX - promediación ultra lineal;
  7. ParMA - promediación parabólica;
  8. T3 - suavizado exponencial múltiple de Tillson;
  9. VIDYA - promediación usando el algoritmo de Tushar Chande.
  10. AMA - promediación usando el algoritmo de Perry Kaufmen.

Nótese que los parámetros tipo Phase1 y Phase2 para diferentes algoritmos de promediación tienen el significado completamente diferente. Para JMA es una variable externa Phase que varía de -100 a +100. Para T3 es el coeficiente de promediación multiplicado por 100 para la mejor percepción; para VIDYA es el período de oscilador CMO; y para AMA es el período de la EMA lenta. En los demás algoritmos, estos parámetros no influyen en la promediación. Para AMA el período de la EMA rápida es fija, y por defecto, es igual a 2. El coeficiente de la elevación a potencia para AMA también es igual a 2.

El indicador utiliza las clases de la librería SmoothAlgorithms.mqh (hay que copiar a la carpeta de datos del terminal\MQL5\Include). La descripción detallada del trabajo con ellas se encuentra en el artículo Promediación de series de precio para cálculos intermedios sin usar buffers adicionales.

//+----------------------------------------------+
//| Parámetros de entrada del indicador          |
//+----------------------------------------------+
input int MFI_Period=13;                            // Período del indicador MFI
input ENUM_APPLIED_VOLUME VolumeType=VOLUME_TICK;   // Volumen del indicador MFI 
//----
input Smooth_Method W_Method=MODE_JJMA; // Método de promediación
input int StartLength=3;                // Período de promediación inicial                    
input int WPhase=100;                   // Parámetro de promediación
// Para JJMA se cambia de -100 a +100, influye en la calidad del proceso transitorio;
// Para VIDIA es el período de CMO, para AMA es el período de la media móvil
//----  
input uint Step=5;        // Paso del cambio del período
input uint StepsTotal=10; // Número de los cambios del período
//----
input Smooth_Method SmoothMethod=MODE_JJMA; // Método del suavizado
input int SmoothLength=3;                   // Profundidad del suavizado                    
input int SmoothPhase=100;                  // Parámetro del suavizado
// Para JJMA se cambia de -100 a +100, influye en la calidad del proceso transitorio;
//----                          
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 los niveles
input WIDTH  LevelsWidth=Width_1; // Grosor de los niveles
//+----------------------------------------------+

Fig. 1. Indicador UltraMFI

Fig. 1. Indicador UltraMFI

Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/21750

TD_I TD_I

El indicador TD_I (Thomas DeMark Indicator) es una versión modificada del indicador estándar DeMarker de Thomas R. DeMark.

T3 TRIX Log T3 TRIX Log

El indicador TRIX con el uso del logaritmo del precio y T3 para el suavizado, en vez de la media móvil exponencial.

BBands_Stop_v1_Alert BBands_Stop_v1_Alert

Indicador BBands Stop v1 con posibilidad de saltar alertas, enviar email y notificaciones Push en el momento cuando ocurre el cambio de la dirección de la tendencia, y, por tanto, el cambio del color del indicador.

Wiseman1 Wiseman1

El indicador marca con color las velas en función de la posición de estas velas respecto a las velas anteriores.