Arrow Signal System
- Indicadores
-
Alex Amuyunzu Raymond
I’m an experienced MQL5 developer and software engineer specializing in building robust, high-performance algorithmic trading systems for MetaTrader 5. My work goes beyond standard EA development — I design intelligent, scalable solutions that combine market logic, automation, and external - Versión: 4.0
- Activaciones: 5
Visión general del indicador
El MV Arrow Signal System es un completo sistema de trading multiindicador para MetaTrader 4 que identifica potenciales señales de compra y venta basadas en la detección de puntos de oscilación combinada con múltiples filtros de confirmación técnica.
Concepto Básico
El sistema escanea los gráficos de precios para identificar máximos y mínimos oscilantes y, a continuación, aplica un sistema de puntuación basado en múltiples indicadores técnicos para validar estos posibles puntos de reversión. Sólo las señales de alta probabilidad que cumplen criterios estrictos se muestran como flechas en el gráfico.
Componentes técnicos
1. Motor de detección de oscilaciones
-
Detección de oscilaciones a la baja: Identifica las barras que están por debajo de un número especificado de barras tanto a la izquierda como a la derecha
-
Detección de Oscilación Alta: Identifica las barras que están por encima de un número especificado de barras tanto a la izquierda como a la derecha.
-
Períodos de retrospección configurables: Recuento de barras izquierdo/derecho ajustable para la sensibilidad a las oscilaciones
2. Sistema de confirmación de señales (puntuación)
Cada punto de oscilación se evalúa en función de 3 condiciones principales:
Para señales de COMPRA:
-
Cruce de EMA: La EMA rápida (8) es mayor o igual que la EMA lenta (21) = +1 punto
-
Condición RSI: RSI es menor que 40 = +1 punto
-
Posición de la Banda de Bollinger: El precio es menor o igual a la banda media de Bollinger = +1 punto
Para señales de VENTA:
-
Cruce de EMA: La EMA rápida (8) es menor o igual que la EMA lenta (21) = +1 punto
-
Condición RSI: RSI es mayor que 60 = +1 punto
-
Posición de la Banda de Bollinger: El precio es mayor o igual a la banda media de Bollinger = +1 punto
3. Filtros avanzados
Filtro de Tendencia (Opcional):
-
Utiliza una EMA de 50 periodos para determinar la dirección de la tendencia general.
-
Las señales de COMPRA requieren un precio mayor que la EMA de tendencia (confirmación de tendencia alcista)
-
Las señales de VENTA requieren un precio inferior a la EMA de tendencia (confirmación de tendencia bajista).
Confirmación de volumen (opcional):
-
Compara el volumen de la barra actual con la media de 20 barras
-
Requiere un volumen mayor o igual al 120% de la media (configurable)
-
Filtra las señales poco fiables y de bajo volumen
Filtro de tamaño de oscilación:
-
Utiliza el Average True Range (ATR) para medir la importancia de la oscilación
-
Tamaño mínimo de oscilación: 0,3 veces el ATR (configurable)
-
Filtra los movimientos de precios menores e insignificantes
Control del espacio entre señales:
-
Mínimo 25 barras entre señales del mismo tipo
-
Evita la saturación de señales y reduce las señales falsas
Características visuales
Visualización de flechas:
-
Flechas verdes hacia arriba (Código 233): Señales de compra
-
Flechas rojas hacia abajo (Código 234): Señales de venta
-
Colores y anchuras configurables
-
Posicionamiento inteligente: Flechas situadas por encima/debajo de las barras de precios para una visibilidad clara
-
Etiquetas de puntuación: Cada flecha muestra su puntuación de confirmación (B2, B3, S2, S3)
Visualización de información:
-
Etiquetas de texto que muestran la intensidad de la señal
-
Limpieza automática de señales antiguas
-
Redibujado de gráficos para un rendimiento óptimo
Opciones de personalización
Parámetros de entrada:
Media móvil Parámetros:
-
Media móvil rápida: Periodo para la EMA rápida (por defecto: 8)
-
Media móvil lenta: Periodo para la EMA lenta (por defecto: 21)
-
Periodo del filtro de tendencia: Periodo EMA para filtrado de tendencia (por defecto: 50)
Ajustes RSI:
-
RSIPeriod: Periodo para el cálculo del RSI (por defecto: 14)
Configuración de las Bandas de Bollinger:
-
BolingerbandiPeriod: Periodo para las Bandas de Bollinger (por defecto: 20)
-
BolingerbandiDeviation: Multiplicador de la desviación estándar (por defecto: 2.0)
-
BolingerbandiShift: Desplazamiento horizontal de las bandas (por defecto: 0)
Ajustes de Detección de Swings:
-
SwingBarsLeft: Barras a la izquierda para la detección de swing (por defecto: 10)
-
SwingBarsRight: Barras a la derecha para la detección de swing (por defecto: 5)
-
MinSwingSizeATR: Tamaño mínimo de swing en múltiplos de ATR (por defecto: 0.3)
-
ATRPeriod: Periodo para el cálculo del ATR (por defecto: 14)
Filtrado de señales:
-
MinBarsBetweenSignals: Barras mínimas entre señales del mismo tipo (por defecto: 25)
-
RequireAllConditions: Requerir las 3 condiciones en lugar de 2/3 (por defecto: false)
-
UseTrendFilter: Activar/desactivar filtro de tendencia (por defecto: true)
-
FilterByVolume: Activar/desactivar filtro por volumen (por defecto: true)
-
MinVolumeRatio: Relación mínima de volumen frente a la media (por defecto: 1,2)
Configuración de alertas:
-
Alertas: Activar/desactivar alertas emergentes (por defecto: true)
Configuración visual:
-
BuyArrowColor: Color de las flechas de compra (por defecto: lima)
-
SellArrowColor: Color de las flechas de venta (por defecto: Rojo)
-
ArrowWidth: Ancho de las flechas (por defecto: 3)
Lógica de señales
Generación de señales de compra:
-
Se detecta un swing bajo (la barra es inferior a N barras a izquierda y derecha)
-
El tamaño del swing cumple el requisito mínimo de ATR
-
El volumen está por encima de la media (si el filtro de volumen está activado)
-
El precio está en tendencia alcista con respecto a la EMA de tendencia (si el filtro de tendencia está activado)
-
Cumple al menos 2 de las 3 condiciones (o 3/3 si RequireAllConditions es verdadero)
-
Han pasado un mínimo de barras desde la última señal de compra
Generación de señal de venta:
-
Se detecta un swing alto (la barra es superior a N barras a izquierda y derecha)
-
El tamaño del swing cumple el requisito mínimo de ATR
-
El volumen es superior a la media (si el filtro de volumen está activado)
-
El precio está en tendencia bajista con respecto a la EMA de tendencia (si el filtro de tendencia está activado)
-
Cumple al menos 2 de las 3 condiciones (o 3/3 si RequireAllConditions es verdadero)
-
Han pasado un mínimo de barras desde la última señal de venta
Implementación técnica
Estructura del código:
-
OnInit(): Inicializa el indicador y los buffers
-
OnCalculate(): Función principal de procesamiento llamada en cada tick
-
IsSwingLow()/IsSwingHigh(): Funciones de detección de oscilaciones
-
IsSignificantSwing(): Validación del tamaño del swing basado en ATR
-
CheckVolumeConfirmation(): Función de validación de volumen
-
OnDeinit(): Función de limpieza que elimina todos los objetos dibujados
Gestión de memoria:
-
Creación y borrado dinámico de flechas
-
Limpieza automática de objetos de señal antiguos
-
Gestión del búfer para cálculos ATR
-
Procesamiento eficiente de barras con lookback configurable
Gestión de errores:
-
Conversiones seguras (sin advertencias de pérdida de datos)
-
Comprobación de los límites de los índices de barras
-
Validación de entradas de cálculo
-
Registro exhaustivo para depuración
Características de rendimiento
Eficacia de cálculo:
-
Procesa sólo las barras necesarias en cada actualización
-
Utiliza indicadores técnicos MQL4 incorporados para mayor eficiencia
-
Implementa el espaciado de señales para reducir los cálculos redundantes
-
Estructuras de bucle optimizadas para la detección de oscilaciones
Uso de recursos:
-
Huella de memoria mínima
-
Gestión eficiente de objetos
-
Profundidad de cálculo configurable
-
Limpieza automática de objetos gráficos
Casos prácticos
Escenarios de negociación:
-
Oportunidades de swing trading
-
Identificación de cambios de tendencia
-
Confirmación de niveles de soporte y resistencia
-
Generación de señales de entrada y salida
Marcos temporales:
-
Adecuado para todos los marcos temporales (M1 a MN)
-
Parámetros ajustables para diferentes entornos de volatilidad
-
Configurable para diferentes estilos de negociación
Condiciones de mercado:
-
Mercados en tendencia (con filtro de tendencia)
-
Mercados alcistas (con filtros RSI y Banda de Bollinger)
-
Períodos de alta volatilidad (con filtro de oscilación basado en ATR)
-
Periodos de baja volatilidad (con confirmación de volumen)
Ventajas sobre el sistema original
Reducción de señales falsas:
-
Corregida la lógica de detección de swing (corregidos los cálculos del índice de barras)
-
Añadido filtro de tamaño de swing basado en ATR
-
Requisitos de confirmación de volumen
-
Filtrado de dirección de tendencia
-
Aumento del número mínimo de barras entre señales
Mejora de la calidad de las señales:
-
Umbrales RSI más estrictos (40/60 frente al 60/40 original)
-
Requisito opcional para las 3 condiciones
-
Mejor información visual con etiquetas de puntuación
-
Registro exhaustivo para el análisis de señales
Mejoras técnicas:
-
Código seguro sin advertencias de conversión
-
Gestión eficiente de la memoria
-
Mejor gestión de errores
-
Funciones de depuración mejoradas
Instalación y configuración
Requisitos:
-
Plataforma MetaTrader 4
-
Compilador MQL4 (integrado en MT4)
-
Datos históricos suficientes para el cálculo de indicadores
Pasos para la instalación:
-
Copie el archivo .mq4 en la carpeta Indicadores de MT4
-
Reinicie MT4 o actualice la ventana del Navegador
-
Arrastre el indicador a un gráfico
-
Configure los parámetros necesarios
-
Ajuste la configuración visual para la visualización preferida
Ajustes recomendados para diferentes estilos:
Trading Conservador:
-
RequireAllConditions: true
-
MinBarsBetweenSignals: 30
-
MinSwingSizeATR: 0.5
-
UseTrendFilter: true
Trading agresivo:
-
RequireAllConditions: false
-
MinBarsBetweenSignals: 15
-
MinSwingSizeATR: 0.2
-
UseTrendFilter: false
Day Trading (Plazos inferiores):
-
SwingBarsIzquierda: 5
-
SwingBarsDerecha: 2
-
Media móvil rápida: 5
-
Promedio de movimiento lento: 12
Swing Trading (plazos superiores):
-
SwingBarsIzquierda: 20
-
SwingBarsDerecha: 10
-
Media móvil rápida: 13
-
Media de movimiento lento: 34
Limitaciones y consideraciones
Limitaciones conocidas:
-
Repintado: Las señales pueden cambiar a medida que se forman nuevas barras
-
Retraso: Utiliza datos históricos para la confirmación de oscilaciones
-
Sensibilidad a los parámetros: Los resultados varían con diferentes ajustes
-
Dependencia del mercado: El rendimiento varía con las condiciones del mercado
Gestión de riesgos:
-
Esto es sólo un generador de señales, no un sistema de trading completo
-
Debe utilizarse con una gestión de riesgos adecuada
-
Requiere confirmación adicional antes de operar
-
Rentabilidades pasadas no garantizan resultados futuros
Mejores prácticas:
-
Realice siempre pruebas retrospectivas con datos históricos
-
Realice pruebas a plazo en cuentas demo
-
Utilizar un tamaño de posición adecuado
-
Combinar con otros métodos de análisis
-
Ajuste los parámetros para instrumentos específicos
Asistencia y mantenimiento
Solución de problemas:
-
Compruebe si hay mensajes de error en la pestaña Experto
-
Compruebe que se han cargado suficientes datos históricos
-
Asegúrese de que la configuración de los parámetros es correcta
-
Supervise el registro de señales en la pestaña Diario
Actualizaciones:
-
Se recomienda la optimización periódica de los parámetros
-
Revisión periódica de la precisión de la señal
-
Ajuste a las condiciones cambiantes del mercado
-
Considerar las variaciones estacionales o cíclicas
Esta versión mejorada del sistema de señales MV Arrow ofrece un marco sólido para identificar oportunidades de negociación con múltiples capas de confirmación y filtros personalizables para adaptarse a diversos estilos de negociación y condiciones de mercado.
