Pon "Me gusta" y sigue las noticias
Deje un enlace a él, ¡qué los demás también lo valoren!
Evalúe su trabajo en el terminal MetaTrader 5
- Publicado por:
- Nikolay Kositsin
- Visualizaciones:
- 1224
- Ranking:
- Publicado:
- 2014.01.14 13:06
- Actualizado:
- 2023.03.27 14:14
-
¿Necesita un robot o indicador basado en este código? Solicítelo en la bolsa freelance Pasar a la bolsa
Autor real:
dm34@mail.ru
Este indicador se basa en el RSI (Relative Strength Index) y el análisis de sus múltiples lineas de señal. El algoritmo de cálculo de las líneas de señal, actúa de la manera siguiente. Tenemos los parámetros del indicador como datos de entrada:
- StartLength - valor mínimo inicial de la primera línea de señal;
- Step - paso de modificación del periodo;
- StepsTotal - número de cambios de periodo.
Cualquier valor del periodo para las líneas de señales se calcula mediante la progresión aritmética:
SignalPeriod(Number) = StartLength + Number * Step,
donde el valor de la variable Number va desde cero hasta StepsTotal. Los valores obtenidos para los periodos se incluyen en la matriz de variables y se usan en cada tick para obtener la matriz de valores suavizados del indicador RSI. Se calculan las direcciones de la tendencia actual para cada uno de los suavizados, al igual que el número de tendencias positivas y negativas para toda la matriz de valores suavizados de RSI. El número final de tendencias positivas y negativas es suavizado y a utilizado como líneas del indicador que forman una nube de colores visualizada con la ayuda de la clase de estilos DRAW_FILLING.
La dirección de la tendencia en este indicador se determina por el color de la nube, mientras que su potencia se determina por la profundidad de la nube. Es posible utilizar los niveles de sobrecompra (UpLevel) y sobreventa (DnLevel), establecidos en el valor porcentual de la amplitud máxima del indicador.
El algoritmo de suavizado puede seleccionarse entre diez posibles variantes:
- SMA - media móvil simple;
- EMA - media móvil exponencial;
- SMMA - media móvil suavizada;
- LWMA - media móvil lineal ponderada;
- JJMA - media adaptativa JMA;
- JurX - suavizado ultralineal;
- ParMA - suavizado parabólico;
- T3 - Suavizado exponencial múltiple de Tillson;
- VIDYA - suavizado utilizando el algoritmo de Tushar Chande;
- AMA - suavizado utilizando el algoritmo de Perry Kaufman.
Se debe tener en cuenta que los parámetros Phase1 y Phase2 tienen un significado completamente diferente para cada algoritmo de suavizado. Para JMA, Phase es una variable externa que toma valores entre -100 y +100. Para T3 es un coeficiente de suavizado multiplicado por 100 para una mejor visualización, para VIDYA es el periodo del oscilador CMO y para AMA es el periodo de la EMA lenta. En los otros algoritmos esos parámetros no afectan el suavizado. Para AMA el periodo de la EMA rápida es un valor fijo, que por defecto es igual 2. El coeficiente para elevar a potencia es también 2 para AMA.
El indicador usa las clases de la biblioteca SmoothAlgorithms.mqh (debe ser copiada en terminal_data_folder\MQL5\Include). El uso de estas clases se describe exhaustivamente en el artículo "Promediando Series de Precios para Cálculos Intermedios Sin Utilizar Buffers".
Parámetros de entrada del indicador:
//+----------------------------------------------+ //| Parámetros de entrada del indicador | //+----------------------------------------------+ input int RSI_Period=13; // Periodo del indicador RSI input ENUM_APPLIED_PRICE Applied_price=PRICE_CLOSE; // Precio aplicado //---- input Smooth_Method W_Method=MODE_JJMA; // Método de suavizado input int StartLength=3; // Periodo inicial de suavizado input int WPhase=100; // Parámetro de suavizado //---- input uint Step=5; // Paso del periodo input uint StepsTotal=10; // Número de periodos //---- 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, %% input uint DnLevel=20; // Nivel de sobreventa, %% 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 nivels input WIDTH LevelsWidth=Width_1; // Grosor de los niveles
Traducción del ruso realizada por MetaQuotes Ltd
Artículo original: https://www.mql5.com/ru/code/725
![BAT_ATRv1](https://c.mql5.com/i/code/indicator.png)
El indicador NRTR basado en el indicador técnico Average True Range (Rango Medio Verdadero).
![Past Regression Deviated](https://c.mql5.com/i/code/indicator.png)
Inidcador de canal de tendencia.
![i4_pivot_v1](https://c.mql5.com/i/code/indicator.png)
El indicador muestra los niveles de soporte y resistencia calculados sobre los precios diarios.
![MA_AC_Stochastic_Signal](https://c.mql5.com/i/code/indicator.png)
Este indicador muestra la dirección de la tendencia (Media Móvil) y da señales de trading (Stochastic + Accelerator).