Pro Momentum Cross 100 Multi Filter Signal MT5
- Indicadores
- Versión: 1.41
- Activaciones: 5
Documentación técnica y manual de funcionamiento de Momentum KU v1.41
1. Descripción general y finalidad
Momentum KU v1.41 es un indicador técnico analítico diseñado específicamente para la plataforma MetaTrader 5 (MT5). El objetivo principal del software es detectar transiciones de impulso direccional en activos financieros y proporcionar una validación de señales en múltiples niveles mediante una arquitectura integrada de diecisiete subsistemas de filtros técnicos independientes. Momentum KU funciona como una herramienta visual integrada en el gráfico, trazando flechas direccionales directamente sobre las barras de precios, al tiempo que mantiene búferes de cálculo específicos para su uso como referencia en la negociación manual y para la integración con Asesores Expertos automatizados. El análisis del impulso constituye un pilar fundamental de las estrategias modernas de negociación cuantitativas y discrecionales. Sin embargo, los osciladores de impulso básicos suelen generar señales de ruptura falsas y movimientos en falso durante la consolidación del mercado en un rango limitado. Momentum KU aborda este reto combinando un motor central de cruces de impulso con un conjunto completo de filtros técnicos multidisciplinares. Los operadores pueden utilizar el indicador como un sistema independiente de cruces de impulso o configurar plantillas de confirmación con múltiples indicadores que incorporen osciladores estadísticos, cintas de medias móviles, modelos de equilibrio de nube, canales dinámicos de soporte y resistencia horizontales, zonas algorítmicas de retroceso de Fibonacci de oscilación y suavizado sintético de precios mediante velas japonesas. El software funciona con múltiples clases de activos, incluidos pares de divisas de Forex, metales preciosos (oro y plata), materias primas energéticas, índices bursátiles y contratos de criptomonedas. Todos los cálculos se ejecutan de forma nativa en MQL5, lo que garantiza una alta velocidad de ejecución, una carga mínima para la CPU y una compatibilidad total tanto con estructuras de cuentas de cobertura como de compensación.
2. Principios técnicos de funcionamiento y lógica algorítmica
La base matemática fundamental de Momentum KU se asienta en la fórmula clásica del oscilador Momentum, estandarizada en torno a la línea de equilibrio de 100,0:
Momentum = (Precio actual / Precio histórico de N períodos atrás) * 100,0
Donde el precio actual viene determinado por la barra de evaluación (barra i) según la enumeración AppliedPrice definida por el usuario, y el precio histórico se extrae exactamente MomentumPeriod barras antes de la barra de evaluación (barra i - MomentumPeriod). La relación resultante se multiplica por 100,0 para generar una línea de equilibrio centrada en 100,0.
El software admite siete tipos de precios aplicados estándar:
- PRICE_CLOSE: utiliza los precios de cierre de las velas, lo que refleja la valoración final de la sesión.
- PRICE_OPEN: utiliza los precios de apertura de las velas, dando prioridad al sentimiento inicial del período.
- PRICE_HIGH: utiliza los precios máximos de las velas, sensibles a los picos de presión compradora.
- PRICE_LOW: utiliza los precios mínimos extremos de las velas, sensibles a los picos de presión de venta.
- PRICE_MEDIAN: Se calcula como (máximo + mínimo) / 2,0, suavizando los extremos dentro de cada vela.
- PRICE_TYPICAL: Se calcula como (máximo + mínimo + cierre) / 3,0, lo que proporciona una ponderación equilibrada en función del volumen.
- PRICE_WEIGHTED: Se calcula como (máximo + mínimo + 2 * cierre) / 4,0, lo que destaca la importancia del precio de cierre.
Lógica de activación de la entrada de referencia:
- Desencadenante de la señal de COMPRA: Se produce un evento alcista de referencia cuando la línea de impulso calculada cruza desde un valor igual o inferior a 100,0 hasta situarse estrictamente por encima de 100,0 a lo largo de las barras cerradas: (MomentumBuffer[i] > 100,0) Y (MomentumBuffer[i - 1] <= 100,0).
- Desencadenante de la señal de VENTA: Se produce un evento bajista de referencia cuando la línea de impulso calculada cruza desde un valor igual o superior a 100,0 hasta situarse estrictamente por debajo de 100,0 a lo largo de las barras cerradas: (MomentumBuffer[i] < 100,0) Y (MomentumBuffer[i - 1] >= 100,0).
Motor de validación multifiltro: Un evento de cruce de referencia inicia una secuencia interna de evaluación booleana en los diecisiete subsistemas de filtro secundarios. El sistema mantiene dos indicadores booleanos internos: fBuy y fSell. Cuando cualquier módulo de filtro individual está activo, su condición matemática se evalúa en función de los datos de las velas cerradas. Si no se cumple la condición de un filtro activo, se invalida el indicador de dirección correspondiente. Se genera una señal de flecha en el gráfico y una notificación de alerta si, y solo si, todos los filtros activos devuelven una confirmación afirmativa para la dirección de la señal dada.
3. Arquitectura de ejecución verificada sin repintado
Momentum KU v1.41 está diseñado con un marco de ejecución estricto sin repintado. En entornos de negociación en tiempo real, los indicadores que realizan cálculos sobre barras activas no cerradas suelen presentar desplazamientos de señales, desapariciones o ajustes retrospectivos. Momentum KU evita estos problemas mediante el aislamiento algorítmico estructural:
- Límite de procesamiento de barras cerradas: los cálculos en OnCalculate() evalúan los datos de precios estrictamente hasta el índice rates_total - 2. En las matrices abiertas de MetaTrader 5, el índice rates_total - 1 corresponde a la vela activa e incompleta (Shift 0), mientras que rates_total - 2 representa la vela más reciente completada y cerrada (Shift 1). Al finalizar el procesamiento del bucle en «rates_total - 2», las señales se calculan exclusivamente a partir de registros de precios finalizados.
- Supresión de señales de velas en tiempo real: El software asigna explícitamente valores vacíos a la barra activa: BuySignal[rates_total - 1] = EMPTY_VALUE y SellSignal[rates_total - 1] = EMPTY_VALUE. Esto evita que las fluctuaciones de los ticks en tiempo real generen flechas prematuras.
- Permanencia estática de las señales: una vez que se cierra una vela y se traza una flecha, el índice de búfer correspondiente permanece estático. Las flechas nunca cambiarán de posición, se recalcularán ni desaparecerán en los datos históricos del gráfico.
- Envío controlado de alertas: los gestores de alertas evalúan una variable de marca de tiempo estática (lastAlertTime). Las notificaciones se envían estrictamente una vez por cada evento de barra cerrada, lo que elimina los disparos repetitivos de alertas causados por los ticks de mercado intrabarrales.
4. Arquitectura operativa detallada de los diecisiete filtros modulares
Momentum KU v1.41 incorpora diecisiete módulos de filtro analítico independientes. Cada filtro puede activarse, personalizarse o desactivarse individualmente mediante parámetros introducidos por el usuario:
- Filtro de cruce RSI: evalúa la recuperación de los límites estadísticos. Se habilita mediante Use_RSI_Cross_Filter. Los parámetros incluyen RSI_Length (por defecto 14), RSI_Price_Source (por defecto PRICE_CLOSE), Oversold (por defecto 30,0) y Overbought (por defecto 70,0). Una señal de COMPRA requiere que el RSI cruce al alza desde la zona de sobreventa: (rsi[idx] > Sobreventa) Y (rsi[idx + 1] <= Sobreventa). Una señal de VENTA requiere que el RSI cruce a la baja desde la zona de sobrecompra: (rsi[idx] < Overbought) Y (rsi[idx + 1] >= Overbought). Esto evita las entradas durante las fases de agotamiento del impulso.
- Filtro ADX (Índice de Movimiento Directional Promedio): Actúa como un filtro de la fuerza direccional. Se activa mediante Use_ADX_Filter. Los parámetros incluyen ADX_Period (por defecto 10) y ADX_Min_Level (por defecto 20,0). Las señales solo se autorizan cuando la línea principal del ADX es mayor o igual que ADX_Min_Level: (adx[idx] >= ADX_Min_Level). Se bloquean las señales que se producen durante una consolidación de baja volatilidad.
- Filtro de media móvil simple: proporciona una alineación con el régimen de tendencia de referencia. Se activa mediante Use_MA_Filter. Los parámetros incluyen MA_Period (por defecto 50), MA_Method (por defecto MODE_SMA) y MA_Shift (por defecto 0). Una señal de COMPRA requiere que el precio de cierre de la vela se sitúe por encima de la curva de la media móvil: (close[i] > ma[idx]). Una señal de VENTA requiere que el precio de cierre de la vela se sitúe por debajo de la curva de la media móvil: (close[i] < ma[idx]).
- Filtro Ichimoku Senkou Span B: evalúa el equilibrio macroestructural utilizando el Senkou Span B. Se activa mediante Use_Ichimoku_Filter. Los parámetros incluyen Ichimoku_SenkouB (por defecto 52) e Ichimoku_Kijun (por defecto 26). Las señales de COMPRA requieren que el precio de cierre esté por encima de Senkou Span B: (close[i] > senkouB[idx]). Las señales de VENTA requieren que el precio de cierre esté por debajo de Senkou Span B: (close[i] < senkouB[idx]).
- Filtro de equilibrio macro RSI 75: evalúa la polaridad del impulso a largo plazo en relación con la marca mediana de 50,0. Se activa mediante Use_RSI75_Filter. Parámetro: RSI_Filter_Period (por defecto 75). Las señales de COMPRA requieren que el RSI(75) sea > 50,0. Las señales de VENTA requieren que el RSI(75) sea < 50,0.
- Filtro de cinta de doble media móvil: evalúa la alineación de la jerarquía de medias móviles. Se activa mediante Use_DoubleMA_Filter. Los parámetros incluyen la media móvil rápida MA_A (MA_A_Period 30, MA_A_Method MODE_EMA, MA_A_Applied PRICE_CLOSE, MA_A_Shift 0) y MA_B lenta (MA_B_Period 140, MA_B_Method MODE_EMA, MA_B_Applied PRICE_CLOSE, MA_B_Shift 0). Las señales de COMPRA requieren que la MA_A rápida se sitúe estrictamente por encima de la MA_B lenta: (ma_a[idx] > ma_b[idx]). Las señales de VENTA requieren que la MA_A rápida se sitúe estrictamente por debajo de la MA_B lenta: (ma_a[idx] < ma_b[idx]).
- Filtro multiestado del oscilador Awesome (AO): analiza la dinámica del impulso calculada a partir de medias móviles del precio mediano de 5 y 34 períodos. Se activa mediante Use_AO_Filter. Los submodos incluyen: Modo de volumen AO (Use_AO_Volume_Filter, AO_Buy_Min 4,0, AO_Sell_Max -4,0); modo de pendiente de color del AO (Use_AO_Color_Filter, que requiere una barra verde para comprar y una barra roja para vender); y modo de línea de base cero del AO (Use_AO_Zero_Filter, que requiere valores positivos para comprar y valores negativos para vender).
- Filtro SAR parabólico: evalúa los stops dinámicos de precio. Se activa mediante Use_SAR_Filter. Los parámetros incluyen SAR_Step (por defecto 0,02) y SAR_Maximum (por defecto 0,2). Las señales de COMPRA requieren que el cierre de la vela esté por encima del SAR parabólico: (close[i] > sar[idx]). Las señales de VENTA requieren que el cierre de la vela esté por debajo del SAR parabólico: (close[i] < sar[idx]).
- Filtro de dirección de tendencia CCI: evalúa la desviación estadística del precio respecto a la media histórica. Se activa mediante Use_CCI_Filter. Los parámetros incluyen CCI_Period (por defecto 50) y CCI_Applied (por defecto PRICE_CLOSE). Las señales de COMPRA requieren una desviación positiva: (cci[idx] > 0,0). Las señales de VENTA requieren una desviación negativa: (cci[idx] < 0,0).
- Filtro de sobrecompra/sobreventa del CCI: identifica condiciones de ruptura de alta velocidad. Se activa mediante Use_CCI_OBOS_Filter. Los parámetros incluyen CCI_OBOS_Period (por defecto 14), CCI_OBOS_Applied (por defecto PRICE_CLOSE), CCI_Overbought (por defecto 100,0) y CCI_Oversold (por defecto -100,0). Las señales de COMPRA requieren que (cci_obos[idx] > CCI_Overbought). Las señales de VENTA requieren que (cci_obos[idx] < CCI_Oversold).
- Filtro de equilibrio de tendencia RVI: mide la convicción del precio analizando la relación entre el precio de cierre y el de apertura. Se activa mediante Use_RVI_Filter. Parámetro: RVI_Period (por defecto 75). Las señales de COMPRA requieren un vigor positivo: (rvi[idx] > 0,0). Las señales de VENTA requieren un vigor negativo: (rvi[idx] < 0,0).
- Filtro de cruce de la línea de señal del RVI: evalúa la posición de la línea principal del RVI con respecto a su línea de señal de 4 períodos. Se activa mediante Use_RVI_Signal_Filter. Parámetro: RVI_Signal_Period (por defecto 20). Las señales de COMPRA requieren que (rvi_main[idx] > rvi_sig[idx]). Las señales de VENTA requieren que (rvi_main[idx] < rvi_sig[idx]).
- Filtro de señal del histograma del MACD: Mide la divergencia entre la línea del MACD y la media de la señal: Histograma = MACD_Main - MACD_Signal. Se activa mediante Use_MACD_Filter. Los parámetros incluyen MACD_FastEMA (por defecto 12), MACD_SlowEMA (por defecto 26), MACD_SignalSMA (por defecto 9) y MACD_Applied (por defecto PRICE_CLOSE). Las señales de COMPRA requieren que (hist > 0,0). Las señales de VENTA requieren que (hist < 0,0).
- Filtro de nivel cero del MACD: evalúa la polaridad de la línea principal del MACD. Se activa mediante Use_MACD_Zero_Filter. Las señales de COMPRA requieren que (macd_main[idx] > 0,0). Las señales de VENTA requieren que (macd_main[idx] < 0,0).
- Filtro de rango móvil de soporte y resistencia: identifica los extremos locales del precio a lo largo de las barras de SR_Period. Se activa mediante Use_SR_Filter. Los parámetros incluyen SR_Period (por defecto 50) y SR_Zone_Points (por defecto 80,0 puntos). Las señales de COMPRA requieren que el precio interactúe con el límite dinámico de soporte. Las señales de VENTA requieren que el precio interactúe con el límite dinámico de resistencia.
- Filtro algorítmico de retroceso de Fibonacci de oscilaciones: utiliza un algoritmo interno de detección de puntos de oscilación para localizar máximos y mínimos estructurales. Se activa mediante Use_Fib_Filter. Los parámetros incluyen Fib_Level_1 (por defecto 0,382), Fib_Level_2 (por defecto 0,618), ZigZag_Depth (por defecto 12), ZigZag_Deviation (por defecto 5) y ZigZag_Backstep (por defecto 3). Valida las señales únicamente cuando la vela interactúa activamente con este corredor dinámico de la proporción áurea o se negocia dentro de él: (mínimo[i] <= máximo_zona Y máximo[i] >= mínimo_zona).
- Filtro sintético de Heiken Ashi: calcula los vectores internos de las velas Heiken Ashi sin modificar la visualización del gráfico. Se activa mediante Use_HeikenAshi_Filter. Las señales de COMPRA requieren un cuerpo de vela Heiken Ashi alcista: (ha_close[i] > ha_open[i]). Las señales de VENTA requieren un cuerpo de vela Heiken Ashi bajista: (ha_close[i] < ha_open[i]).
5. Catálogo completo de parámetros de entrada
A continuación se muestra la documentación exhaustiva de todos los parámetros de entrada disponibles en la pestaña de propiedades de MetaTrader 5:
Motor principal de Momentum:
- MomentumPeriod (por defecto: 14, tipo de datos: int, unidad: barras): número de barras históricas utilizadas en el cálculo del ratio de impulso.
- AppliedPrice (por defecto: PRICE_CLOSE, tipo de datos: ENUM_APPLIED_PRICE): Fuente de precios aplicada a los cálculos del momentum (PRICE_CLOSE, PRICE_OPEN, PRICE_HIGH, PRICE_LOW, PRICE_MEDIAN, PRICE_TYPICAL, PRICE_WEIGHTED).
- SignalOffset (por defecto: 50,0; tipo de datos: double; unidad: puntos): distancia visual vertical entre el extremo de la vela y la flecha de señal trazada.
Configuración de notificaciones:
- Notification_Group (Por defecto: «=== CONFIGURACIÓN DE NOTIFICACIONES ===», Tipo de datos: cadena): Separador visual de sección en el cuadro de diálogo de propiedades.
- Use_Alert (Por defecto: true, Tipo de datos: bool): Activa o desactiva las alertas gráficas emergentes nativas del terminal.
- Use_Sound (Por defecto: true, Tipo de datos: bool): Activa o desactiva las alertas sonoras de la terminal al generarse una señal.
- Use_Push (por defecto: false, tipo de datos: booleano): activa o desactiva las notificaciones push instantáneas a dispositivos móviles a través de MetaQuotes ID.
- Use_Print (Predeterminado: false, Tipo de datos: bool): Activa o desactiva el registro del texto de las señales en la pestaña «Ejecución de expertos» de la terminal.
- Sound_Buy (Por defecto: «alert.wav», Tipo de datos: cadena): Ruta y nombre del archivo de audio que se reproduce para las señales alcistas.
- Sound_Sell (por defecto: «alert2.wav», tipo de datos: cadena): ruta y nombre del archivo de audio que se reproduce para las señales bajistas.
Grupo principal de filtros:
- Mode_Group (Por defecto: «=== MODO DE FILTRO ===», Tipo de datos: cadena): Encabezado visual de la sección para los módulos de filtro.
Ajustes del filtro de cruce RSI:
- RSI_Group (por defecto: «=== FILTRO DE CRUCE RSI ===», tipo de datos: cadena): Separador visual de la sección.
- Use_RSI_Cross_Filter (Por defecto: false, Tipo de datos: booleano): Conmutador principal para el filtro de cruce de límites del RSI.
- RSI_Length (por defecto: 14, tipo de datos: entero, unidad: barras): periodo de retrospectiva para el cálculo del índice de fuerza relativa.
- RSI_Price_Source (por defecto: PRICE_CLOSE, tipo de datos: ENUM_APPLIED_PRICE): precio aplicado para la serie de cálculo del RSI.
- Oversold (Valor por defecto: 30,0; Tipo de datos: double; Unidad: valor del índice): Umbral inferior para la recuperación de la zona de sobreventa.
- Sobrecompra (Valor por defecto: 70,0; Tipo de datos: double; Unidad: valor del índice): Límite superior para el rechazo de la zona de sobrecompra.
Configuración del filtro ADX:
- ADX_Group (Por defecto: «=== ADX FILTER ===», Tipo de datos: cadena): Separador visual de secciones.
- Use_ADX_Filter (Por defecto: false, Tipo de datos: bool): Conmutador principal para el filtro del Índice de Movimiento Directional Promedio.
- ADX_Period (por defecto: 10, tipo de datos: entero, unidad: barras): periodo de promediado para el suavizado del índice direccional.
- ADX_Min_Level (por defecto: 20,0; tipo de datos: doble; unidad: valor del índice): valor mínimo requerido de la línea de base del ADX para validar las señales.
Configuración del filtro de media móvil única:
- MA_Group (Por defecto: «=== FILTRO DE MEDIA MÓVIL ÚNICA ===», Tipo de datos: cadena): Separador visual de secciones.
- Use_MA_Filter (por defecto: false, tipo de datos: bool): Conmutador principal para el filtrado de posiciones de precio mediante media móvil simple.
- MA_Period (Por defecto: 50, Tipo de datos: entero, Unidad: barras): Período de retrospectiva para el cálculo de la media móvil.
- MA_Method (por defecto: MODE_SMA, tipo de datos: ENUM_MA_METHOD): algoritmo de suavizado aplicado (MODE_SMA, MODE_EMA, MODE_SMMA, MODE_LWMA).
- MA_Shift (por defecto: 0, tipo de datos: int, unidad: barras): Desplazamiento horizontal de barras aplicado al búfer de la media móvil.
Configuración del filtro Ichimoku Senkou Span B:
- Ichimoku_Group (por defecto: «=== ICHIMOKU SENKOU SPAN B FILTER ===», tipo de datos: cadena): Separador visual de secciones.
- Use_Ichimoku_Filter (Por defecto: false, Tipo de datos: bool): Conmutador principal para el filtrado de la línea base del Senkou Span B.
- Ichimoku_SenkouB (por defecto: 52, tipo de datos: int, unidad: barras): periodo de cálculo de la línea de la nube del Senkou Span B.
- Ichimoku_Kijun (por defecto: 26, tipo de datos: entero, unidad: barras): periodo de cálculo de la línea de referencia Kijun-sen.
Ajustes del filtro RSI 75:
- RSI75_Group (Por defecto: «=== FILTRO RSI 75 ===», Tipo de datos: cadena): Separador visual de secciones.
- Use_RSI75_Filter (por defecto: false, tipo de datos: bool): Conmutador principal para el filtrado macro del RSI de 50 niveles a largo plazo.
- RSI_Filter_Period (por defecto: 75, tipo de datos: entero, unidad: barras): periodo de retrospectiva para el cálculo del RSI macro.
Configuración del filtro de media móvil doble:
- DoubleMA_Group (Por defecto: «=== FILTRO DE DOBLE MEDIA MÓVIL ===», Tipo de datos: cadena): Separador visual de sección.
- Use_DoubleMA_Filter (Por defecto: false, Tipo de datos: bool): Conmutador principal para el filtrado jerárquico de la media móvil doble.
- MA_A_Period (por defecto: 30, tipo de datos: int, unidad: barras): periodo de retrospectiva para la media móvil rápida A.
- MA_A_Method (por defecto: MODE_EMA, tipo de datos: ENUM_MA_METHOD): método de promediado para la media móvil A.
- MA_A_Applied (Por defecto: PRICE_CLOSE, Tipo de datos: ENUM_APPLIED_PRICE): Precio aplicado para la media móvil A.
- MA_A_Shift (Por defecto: 0, Tipo de datos: int, Unidad: barras): Desplazamiento horizontal de la media móvil A.
- MA_B_Period (Valor por defecto: 140, Tipo de datos: int, Unidad: barras): Período de retrospectiva para la media móvil lenta B.
- MA_B_Method (por defecto: MODE_EMA, tipo de datos: ENUM_MA_METHOD): método de cálculo de la media para la media móvil B.
- MA_B_Applied (Por defecto: PRICE_CLOSE, Tipo de datos: ENUM_APPLIED_PRICE): Precio aplicado para la media móvil B.
- MA_B_Shift (Valor por defecto: 0, Tipo de datos: int, Unidad: barras): Desplazamiento horizontal de la media móvil B.
Ajustes del filtro del oscilador Awesome:
- AO_Group (por defecto: «=== FILTRO DEL OSCILADOR AWESOME ===», tipo de datos: cadena): Separador visual de secciones.
- Use_AO_Filter (por defecto: false, tipo de datos: bool): Conmutador principal para el análisis del Oscilador Awesome.
- Use_AO_Volume_Filter (por defecto: false, tipo de datos: bool): activa la comprobación del umbral mínimo de amplitud absoluta.
- AO_Buy_Min (por defecto: 4,0; tipo de datos: doble; unidad: puntos del oscilador): valor positivo mínimo requerido para la validación de la compra.
- AO_Sell_Max (Por defecto: -4,0; Tipo de datos: doble; Unidad: puntos del oscilador): valor negativo máximo requerido para validar una orden de venta.
- Use_AO_Color_Filter (Por defecto: false, Tipo de datos: bool): Requiere que la pendiente del histograma coincida (verde para comprar, rojo para vender).
- Use_AO_Zero_Filter (Por defecto: false, Tipo de datos: bool): Requiere que los valores del oscilador se alineen con la polaridad de la línea central del cero.
Ajustes del filtro SAR parabólico:
- SAR_Group (Por defecto: «=== FILTRO SAR PARABÓLICO ===», Tipo de datos: cadena): Separador visual de secciones.
- Use_SAR_Filter (Por defecto: false, Tipo de datos: bool): Conmutador principal para el filtrado de la curva de precios del SAR parabólico.
- SAR_Step (Por defecto: 0,02, Tipo de datos: double, Unidad: paso del factor): incremento del factor de aceleración por paso de precio.
- SAR_Maximum (por defecto: 0,2; tipo de datos: doble; unidad: límite máximo del factor): Límite máximo del factor de aceleración.
Ajustes del filtro Heiken Ashi:
- HA_Group (Por defecto: «=== FILTRO HEIKEN ASHI ===», Tipo de datos: cadena): Separador visual de sección.
- Use_HeikenAshi_Filter (Por defecto: false, Tipo de datos: bool): Conmutador principal para el filtrado del cuerpo de las velas Heiken Ashi sintéticas.
Configuración del filtro de tendencia CCI:
- CCI_Group (por defecto: «=== FILTRO DE TENDENCIA CCI ===», tipo de datos: cadena): Separador visual de secciones.
- Use_CCI_Filter (por defecto: false, tipo de datos: booleano): control principal para activar o desactivar el filtrado de tendencia de la línea cero del Índice de Canal de Materias Primas (CCI).
- CCI_Period (por defecto: 50, tipo de datos: entero, unidad: barras): periodo de retrospectiva para el cálculo del CCI de tendencia.
- CCI_Applied (por defecto: PRICE_CLOSE, tipo de datos: ENUM_APPLIED_PRICE): Precio aplicado para el cálculo del CCI de tendencia.
Ajustes del filtro de sobrecompra/sobreventa del CCI:
- CCI_OBOS_Group (Por defecto: «=== CCI OB & OS FILTER ===», Tipo de datos: cadena): Separador visual de secciones.
- Use_CCI_OBOS_Filter (por defecto: false, tipo de datos: bool): Conmutador principal para el filtrado de límites extremos del CCI.
- CCI_OBOS_Period (por defecto: 14, tipo de datos: entero, unidad: barras): período de retrospectiva para el cálculo del CCI oscilatorio.
- CCI_OBOS_Applied (por defecto: PRICE_CLOSE, tipo de datos: ENUM_APPLIED_PRICE): Precio aplicado para el CCI oscilatorio.
- CCI_Overbought (Por defecto: 100,0, Tipo de datos: double, Unidad: valor del índice): Límite superior.
- CCI_Oversold (Valor por defecto: -100,0, Tipo de datos: double, Unidad: valor del índice): Límite inferior.
Configuración del filtro de tendencia RVI:
- RVI_Group (Por defecto: «=== FILTRO DE TENDENCIA RVI ===», Tipo de datos: cadena): Separador visual de secciones.
- Use_RVI_Filter (por defecto: false, tipo de datos: bool): Conmutador principal para el filtrado de la línea cero del Índice de Vigor Relativo.
- RVI_Period (Por defecto: 75, Tipo de datos: entero, Unidad: barras): Período de retrospectiva para el cálculo del RVI de tendencia.
Configuración del filtro de la línea de señal del RVI:
- RVI_Signal_Group (por defecto: «=== RVI SIGNAL FILTER ===», tipo de datos: cadena): Separador visual de secciones.
- Use_RVI_Signal_Filter (Por defecto: false, Tipo de datos: bool): Conmutador principal para el filtrado de la relación entre la línea principal y la línea de señal del RVI.
- RVI_Signal_Period (Por defecto: 20, Tipo de datos: int, Unidad: barras): Período de retrospectiva para el cálculo de la señal oscilatoria del RVI.
Configuración del filtro de señal MACD:
- MACD_Group (Por defecto: «=== FILTRO DE SEÑAL MACD ===», Tipo de datos: cadena): Separador visual de secciones.
- Use_MACD_Filter (Por defecto: false, Tipo de datos: bool): Conmutador principal para el filtrado de la divergencia del histograma del MACD.
- MACD_FastEMA (Por defecto: 12, Tipo de datos: int, Unidad: barras): Período de promediado de la media móvil exponencial rápida.
- MACD_SlowEMA (por defecto: 26, tipo de datos: entero, unidad: barras): período de promediado de la media móvil exponencial lenta.
- MACD_SignalSMA (Por defecto: 9, Tipo de datos: entero, Unidad: barras): Período de cálculo de la media de la media móvil simple de la línea de señal.
- MACD_Applied (Por defecto: PRICE_CLOSE, Tipo de datos: ENUM_APPLIED_PRICE): Precio aplicado para la serie MACD.
Configuración del filtro cero del MACD:
- MACD_Zero_Group (Por defecto: «=== MACD LEV 0 FILTER ===», Tipo de datos: cadena): Separador visual de secciones.
- Use_MACD_Zero_Filter (Por defecto: false, Tipo de datos: bool): Conmutador principal para el filtrado del límite cero de la línea principal del MACD.
Configuración del filtro de soporte y resistencia:
- SR_Group (por defecto: «=== SUPPORT & RESISTANCE FILTER ===», tipo de datos: cadena): Separador visual de secciones.
- Use_SR_Filter (por defecto: false, tipo de datos: booleano): Conmutador principal para el filtrado de la interacción de las zonas horizontales de rango móvil.
- SR_Period (Por defecto: 50, Tipo de datos: entero, Unidad: barras): Ventana de barras históricas analizada para la detección de máximos y mínimos locales.
- SR_Zone_Points (por defecto: 80,0; tipo de datos: doble; unidad: puntos): anchura de la zona de tolerancia de detección en puntos.
Configuración del filtro de Fibonacci:
- Fib_Group (Por defecto: «=== FIBONACCI FILTER ===», Tipo de datos: cadena): Separador visual de secciones.
- Use_Fib_Filter (Por defecto: false, Tipo de datos: bool): Conmutador principal para el filtrado dinámico de retrocesos de Fibonacci en oscilaciones.
- Fib_Level_1 (Valor por defecto: 0,382, Tipo de datos: doble, Unidad: ratio): Límite inferior porcentual de la zona de retroceso.
- Fib_Level_2 (por defecto: 0,618; tipo de datos: doble; unidad: ratio): Límite superior de la zona de retroceso en porcentaje.
- ZigZag_Depth (Por defecto: 12, Tipo de datos: int, Unidad: barras): Ajuste de profundidad para la identificación algorítmica de puntos de oscilación.
- ZigZag_Deviation (Valor por defecto: 5, Tipo de datos: entero, Unidad: puntos): Desviación mínima del precio necesaria para registrar reversiones de oscilación.
- ZigZag_Backstep (Valor por defecto: 3, Tipo de datos: entero, Unidad: barras): Espaciado mínimo entre barras para los puntos de inflexión consecutivos.
6. Configuración operativa y recomendaciones de negociación
- Instrumentos compatibles: Momentum KU funciona con todos los activos líquidos disponibles en MetaTrader 5. Normalmente se observan resultados óptimos en los principales pares de divisas (EURUSD, GBPUSD, USDJPY, AUDUSD, USDCAD), CFD sobre índices bursátiles (US30, SPX500, NAS100, GER40) y materias primas (XAUUSD, USOIL), donde el volumen de negociación continuo garantiza una progresión ordenada del impulso.
- Perfiles de timeframe recomendados:
* Scalping a corto plazo (M5, M15): Se recomienda configurar períodos de Momentum cortos (de 10 a 14) combinados con el ADX (para evitar los rangos de baja volatilidad) y el filtrado Heiken Ashi.
* Operaciones intradía (M30, H1): Se recomienda combinar el Momentum con una media móvil simple (SMA 50) o con cintas de dos medias móviles y la divergencia del histograma del MACD.
* Operaciones de swing (H4, D1): Se recomienda combinar el Momentum con el Senkou Span B de Ichimoku, los niveles de soporte y resistencia móviles y los corredores de retroceso de Fibonacci.
- Compatibilidad con tipos de cuenta: Compatible con configuraciones de cuenta tanto de cobertura (hedging) como de compensación (netting) en entornos de bróker estándar, Raw Spread y ECN.
7. Guía de configuración del sistema de notificaciones
Momentum KU incluye cuatro métodos de notificación:
- Alertas gráficas emergentes (Use_Alert): muestra un cuadro de diálogo de alerta nativo en la interfaz del escritorio que contiene la dirección de la operación, el símbolo, el marco temporal y la marca de tiempo de la barra de señal.
- Señales acústicas (Use_Sound): reproduce archivos de audio específicos (Sound_Buy o Sound_Sell, ubicados en el directorio /Sounds de la terminal) cuando aparecen nuevas flechas en el gráfico.
- Notificaciones push para móviles (Use_Push): reenvía mensajes push a los dispositivos móviles conectados. Para configurarlo: obtenga el ID de MetaQuotes de 8 caracteres en la configuración de la terminal móvil (Configuración > Mensajes > MQID), vaya a Herramientas de MT5 para ordenador > Opciones > Notificaciones, marque «Habilitar notificaciones push», introduzca el MQID y compruebe que funciona.
- Salida de registro de la terminal (Use_Print): envía mensajes de diagnóstico de señales a la pestaña «Expertos» para mantener un registro de auditoría.
8. Rendimiento computacional y gestión de recursos de la terminal
- Arquitectura de manejadores nativa: los filtros técnicos utilizan manejadores de indicadores MQL5 integrados, instanciados estrictamente dentro de OnInit() y desasignados de forma limpia en OnDeinit().
- Asignación dinámica de búferes: los identificadores de cálculo de los filtros solo se crean cuando sus respectivos conmutadores booleanos están activados. Los filtros desactivados no consumen ningún búfer de indicador y no generan ninguna sobrecarga de cálculo.
- Optimización de datos de series: Las operaciones de copia de matrices utilizan CopyBuffer directamente en matrices indexadas por series, lo que mantiene una asignación mínima de RAM incluso en historiales de gráficos ampliados.
9. Aviso sobre riesgos
La negociación de divisas, materias primas, índices y derivados financieros conlleva un riesgo sustancial de pérdida y no es adecuada para todos los inversores. El apalancamiento puede magnificar tanto las pérdidas como las ganancias. Los resultados históricos o de las pruebas retrospectivas no garantizan resultados operativos futuros. Este indicador es una herramienta técnica analítica diseñada para ayudar a los operadores en la evaluación objetiva de los gráficos; no constituye asesoramiento financiero, de inversión ni de negociación. Evalúa siempre minuciosamente las configuraciones del indicador en una cuenta de simulación de demostración antes de su implementación en condiciones reales.
