Guardrail Breakout
- Asesores Expertos
- Versión: 1.1
- Activaciones: 5
Ruptura de la barrera de seguridad
Deja que el movimiento demuestre su validez.
«Guardrail Breakout» es un asesor experto de MetaTrader 5 diseñado para filtrar las falsas rupturas y controlar la exposición. Evalúa la configuración antes de la entrada, observa el comportamiento del precio tras el desencadenante y determina el tamaño de la posición a partir de la distancia real del stop inicial.
Que el precio toque un nivel es solo el principio. La tendencia, el impulso, la volatilidad, los costes de negociación y el comportamiento tras el desencadenante ayudan a determinar si una configuración se convierte en una operación.
Cómo funciona
- Busca una estructura. Cuatro modelos buscan niveles de soporte o resistencia consolidados, rupturas de la banda de volatilidad, rupturas del rango de apertura y liberaciones de compresión.
- Evalúa las condiciones. El EA evalúa las velas de señal completadas, los indicadores direccionales, la volatilidad y el spread, y luego puntúa las configuraciones elegibles.
- Observa la ruptura. De forma predeterminada, una configuración activada se observa durante un máximo de 15 segundos. La progresión direccional, la persistencia, la eficiencia de la trayectoria y los movimientos adversos determinan si cumple los requisitos.
- Controla la posición. El EA calcula el volumen a partir del stop real, envía un stop al bróker y gestiona la operación con reglas de protección de beneficios, trailing y salida basada en el tiempo.
Controles integrados en la estrategia
- Dimensionamiento basado en el stop: el riesgo objetivo por defecto es del 0,50 % del capital actual antes de costes y diferencias de ejecución. El volumen se redondea a la baja; se omite una operación si el lote mínimo del bróker supera el presupuesto.
- Una posición por símbolo: la configuración predeterminada también limita esta instancia a una posición simultánea y una configuración virtual.
- Stops iniciales adaptativos: la volatilidad y la estructura reciente completada en un minuto determinan la colocación del stop. Un stop requerido excesivamente amplio da lugar a que se omita la configuración.
- Controles de spread: las entradas se comprueban en función de la volatilidad, la distancia de referencia de confirmación y una línea de base reciente del spread.
- Umbrales de capital: los umbrales predeterminados diarios y globales son el 2 % y el 5 % del capital de referencia. Si se superan, se bloquean las nuevas entradas y, si está activada la opción de «aplanamiento de emergencia», se solicita el cierre de las posiciones de este EA.
- Ritmo definido: horario de sesión, un límite diario de entradas, un periodo de espera tras una racha de pérdidas y un límite de «segunda oportunidad» de riesgo reducido para repetidos intentos de entrada.
- Comprobaciones del bróker: las nuevas órdenes se analizan en función del volumen, el margen disponible y los requisitos de stop; las actualizaciones del stop de beneficios se comparan con los niveles de stop y de congelación.
Estos controles no garantizan que la negociación esté exenta de pérdidas. Las brechas de cotización, el deslizamiento, los costes, las desconexiones y los fallos de ejecución pueden provocar pérdidas que superen los umbrales configurados.
Configuración documentada
Utiliza XAUUSD con un marco temporal de señal de M15. Deja InpSymbol1 en blanco para utilizar el símbolo del gráfico del bróker, incluido cualquier sufijo. El marco temporal de la señal es independiente del marco temporal del gráfico mostrado. Los resultados de las pruebas iniciales utilizan cuentas de cobertura, 10 000 USD y un apalancamiento de 1:100; se trata de condiciones de prueba, no de un depósito mínimo ni de una promesa de rentabilidad.
El horario predeterminado de entrada es de 15:00 a 23:00, según la hora del servidor del bróker, sin nuevas entradas a partir de las 19:00 del viernes. El rango de apertura comienza a las 16:30 y dura 30 minutos. Comprueba estos horarios con tu bróker antes de utilizarlo.
Empieza con una sola instancia en una cuenta demo aislada. Mantén MetaTrader en ejecución y conectado para que el software gestione las salidas. Un stop aceptado por el bróker queda sujeto a la ejecución de este. Evita compartir el mismo símbolo con otra estrategia en una cuenta de compensación.
Pruebas y demostración
Utiliza la demostración del Probador de Estrategias integrado en Market con el historial, los spreads y los costes de tu bróker. La galería identifica las pruebas históricas y su cobertura de ticks reales. Los resultados históricos no constituyen un historial en tiempo real y no predicen rendimientos futuros.
Comprensión de los parámetros
A continuación se enumeran los valores predeterminados. El ATR es la medida de volatilidad utilizada por la estrategia. La «R» en los ajustes de confirmación, objetivos y trailing se refiere a la distancia de referencia de la señal original, normalmente de al menos 0,35 ATR; es independiente del stop adaptativo más amplio que se utiliza para calcular el tamaño de la posición. Los umbrales de capital son umbrales de activación del capital de la cuenta, mientras que los cierres forzados afectan a las posiciones que llevan el identificador de este EA.
Los ajustes de control de la cuenta utilizan una referencia de capital inicial registrada. Cambiar de cuenta, cambiar de terminal, realizar transferencias de efectivo o ejecutar varias estrategias requiere comprobar dicha referencia y el periodo de control diario. El EA crea localmente archivos CSV de diagnóstico; no se requiere ningún archivo de datos externo ni DLL. Utilice los informes del bróker para obtener un registro completo del rendimiento.
Configuración principal
- InpMagic (26110502): Identificador utilizado para reconocer las órdenes y posiciones de este EA.
- InpRiskPct (0,50): Porcentaje objetivo del capital actual en riesgo en el stop inicial real, antes de costes y deslizamiento.
- InpMaxPortfolioRiskPct (0,50): Margen de entrada basado en las posiciones de esta instancia y las ranuras de configuración, multiplicado por el porcentaje de riesgo configurado.
- InpSRScoreMin (40,0): Puntuación mínima para una configuración de ruptura de soporte o resistencia.
- InpVolScoreMin (40,0): Puntuación mínima para una configuración de ruptura de volatilidad.
- InpORBScoreMin (40,0): Puntuación mínima para una configuración de ruptura del rango de apertura.
- InpSQZScoreMin (40,0): Puntuación mínima para una configuración de compresión-liberación.
- InpEnableHUD (false): Muestra el panel de estado en el gráfico y las estadísticas indicativas de las operaciones.
- InpUseSessionFilter (true): Aplica la ventana de entrada por horas configurada; los límites de fin de semana y viernes siguen aplicándose cuando está desactivada.
- InpMaxConcurrentPositions (1): Número máximo de posiciones gestionadas por esta instancia; la estrategia también permite solo una posición por símbolo.
- InpMaxPendingSetups (1): Número máximo de ranuras para configuraciones pendientes o virtuales.
- InpMaxNewOrdersPerScan (1): Número máximo de nuevas configuraciones aceptadas durante un escaneo.
Flujo de oportunidades
- InpUseOpportunityFlow (true): Activa los nuevos escaneos en inactividad y la sustitución de configuraciones elegibles no activadas.
- InpIdleRescanSeconds (60): Número mínimo de segundos entre nuevos escaneos en inactividad utilizando la última vela de señal cerrada.
- InpRotateMinAgeSeconds (300): Antigüedad mínima en segundos antes de que se pueda sustituir una configuración no utilizada.
- InpRotateNearTriggerATR (0,20): Mantiene la configuración actual cuando su activador está tan cerca, medido en unidades ATR.
- InpRotateMaxDistanceATR (0,75): Distancia máxima hasta el umbral de activación de sustitución propuesto, en unidades ATR.
- InpRotateMinCloserATR (0,25): Mejora mínima en la distancia del umbral necesaria para una sustitución.
- InpRotateScoreGain (2,0): Mejora mínima de puntuación necesaria para una configuración de sustitución.
- InpExtraEntryScoreMargin (5,0): Puntuación adicional requerida para entradas adicionales o de sustitución.
- InpBaseTradesPerDay (6): Número de entradas a partir del cual se aplica el requisito de calidad adicional.
Revalidación de la configuración
- InpUseTriggerRevalidation (true): vuelve a comprobar una configuración de soporte o resistencia antigua cercana a su nivel de activación.
- InpRevalNearTriggerATR (0,20): Distancia desde el nivel de activación dentro de la cual puede producirse la revalidación.
- InpRevalStaleSeconds (900): Antigüedad mínima de la configuración, en segundos, antes de la revalidación.
- InpRevalSRDropPoints (18,0): Deterioro de la puntuación requerido para la regla de rechazo de configuraciones caducadas.
- InpRevalRequireSecondFlag (true): Requiere una acción adicional del precio o una advertencia de puntuación antes de rechazar la configuración obsoleta.
- InpSQZExtraConfirmATR (0,00): Distancia adicional de confirmación de entrada en squeeze en unidades ATR; el valor cero mantiene el umbral de activación base.
- InpRevalDebug (false): Muestra mensajes adicionales sobre la revalidación de configuraciones.
Stop de pérdidas adaptativo
- InpUseAdaptiveLossStop (verdadero): Establece el stop inicial a partir de la volatilidad, la estructura de ruptura y las velas M1 completadas recientemente.
- InpLossMinATR (1,10): Distancia mínima real del stop en unidades de la base de volatilidad.
- InpLossSlowATRFloor (0,75): Fracción del ATR lento utilizada como límite mínimo para la base de volatilidad.
- InpLossMaxATR (2,50): Distancia máxima permitida del stop; se omiten las configuraciones que requieran un stop más amplio.
- InpLossStructureM1Bars (5): Número de velas M1 completadas que se utilizan para evaluar la estructura cercana.
- InpLossStructureBufferATR (0,15): Margen de seguridad estructural adicional en unidades de ATR.
- InpLossSpreadBufferMultiple (2,00): Margen estructural mínimo como múltiplo del spread actual.
- InpLossUseConfirmedExit (true): Activa la salida anticipada por pérdidas basada en los cierres completados de M1.
- InpLossGraceSeconds (120): Segundos tras la entrada antes de que pueda activarse la salida por pérdida confirmada; el stop del bróker permanece activo.
- InpLossConfirmM1Closes (2): Número de cierres M1 consecutivos completados tras la entrada que se requieren más allá del límite de pérdida.
- InpLossConfirmFraction (0,65): Límite de pérdida expresado como fracción de la distancia de stop real original.
Salida por aceptación heredada
- InpUseBreakoutAcceptance (true): Activa la salida por fallo precoz heredada cuando los stops de pérdida adaptativos están desactivados.
- InpAcceptGraceSeconds (10): Período de gracia inicial, en segundos, para la salida de aceptación heredada.
- InpAcceptWindowSeconds (90): Duración, en segundos, de la evaluación de aceptación heredada.
- InpAcceptProofR (0,28): Desviación favorable necesaria para demostrar la aceptación heredada, en unidades R de referencia.
- InpAcceptFailR (0,22): Movimiento adverso que puede desencadenar una salida por fallo heredada, en unidades R de referencia.
- InpAcceptDebug (false): Muestra mensajes adicionales sobre la aceptación heredada.
Diagnósticos
- InpFlightRecorder (true): Escribe eventos detallados de ejecución y gestión en un archivo CSV local generado.
- InpFlightVerboseWindow (true): Registra evaluaciones detalladas de gestión durante la ventana de aceptación inicial.
- InpFlightPrintCritical (true): Muestra los eventos seleccionados de entrada y salida en el registro de Experts.
Controles de spread de entrada
- InpEntrySpreadGuard (true): Activa las comprobaciones finales del spread inmediatamente antes de la entrada en el mercado.
- InpEntryMaxSpreadRiskR (0,15): Spread máximo expresado como fracción de la distancia de referencia de confirmación de entrada.
- InpEntrySpreadSpikeGuard (true): Comprueba el spread actual con respecto a la mediana de la muestra de spreads anterior.
- InpEntrySpreadSpikeMultiple (1,75): Múltiplo máximo del spread mediano anterior.
- InpEntrySpreadWarmupSamples (8): Número de segundos de cotizaciones recientes distintas necesarios antes de que la línea de base del spread esté lista.
- InpEntryBlockDuringWarmup (true): Bloquea las entradas mientras la línea de base del spread se está estabilizando.
- InpEntrySpreadResetGapSec (120): Inactividad de las cotizaciones, en segundos, tras la cual se restablece la línea de base del spread.
Confirmación tras el desencadenante
- InpBehaveMaxSeconds (15): Tiempo máximo de observación después de que el precio alcance un umbral de activación.
- InpBehaveFastMinSeconds (2): Tiempo mínimo, en segundos, a partir del cual puede activarse la confirmación rápida.
- InpBehaveNormalMinSeconds (4): Tiempo mínimo, en segundos, para la confirmación normal.
- InpBehaveFastFavR (0,10): Desviación mínima favorable para la confirmación rápida.
- InpBehaveFastMaxAdvR (0,025): Desviación adversa máxima permitida para la confirmación rápida.
- InpBehaveFastMinDirR (0,12): Progreso direccional mínimo actual para la confirmación rápida.
- InpBehaveFastMinEfficiency (0,45): Eficiencia mínima de la trayectoria direccional para la confirmación rápida.
- InpBehaveAcceptFavR (0,08): Desviación favorable mínima para la confirmación normal.
- InpBehaveMaxAdvR (0,08): Desviación adversa máxima para la confirmación normal.
- InpBehaveMinPersistence (0,70): Fracción mínima de cotizaciones recientes observadas que permanecen más allá del umbral de activación.
- InpBehaveMinEfficiency (0,22): Eficiencia mínima de la trayectoria direccional para la confirmación normal.
- InpBehaveRejectR (0,12): Umbral de desviación adversa inmediata para rechazar una configuración no ejecutada.
- InpBehaveExpireMinFavR (0,04): Progreso favorable mínimo requerido por la regla de aceptación por tiempo de espera.
- InpUseSecondChanceRetry (true): Permite un único reintento de riesgo reducido admisible tras el reinicio de una configuración rechazada.
- InpRetryResetR (0,10): Distancia de reinicio requerida antes de la secuencia de segunda oportunidad.
- InpRetryMaxMinutes (15): Duración máxima, en minutos, de una oportunidad de segunda oportunidad.
- InpRetryRiskFraction (0,40): Fracción del riesgo normal utilizada en un reintento; 0,40 significa el 40 % del presupuesto de riesgo normal.
Controles de capital de la cuenta
- InpPropMode (true): Activa los umbrales de capital de la cuenta, los límites de entrada diarios y los periodos de espera tras rachas de pérdidas.
- InpPropInitialCapital (0,0): Capital de referencia para los umbrales de saldo; el valor cero registra automáticamente el saldo inicial.
- InpPropSoftDailyLossPct (2,0): Umbral diario de pérdida de saldo como porcentaje del capital de referencia, por debajo del saldo reconstruido al inicio de la jornada.
- InpPropSoftOverallLossPct (5,0): Umbral de pérdida global de capital por debajo del capital de referencia registrado.
- InpPropResetHourServer (1): Hora del servidor del bróker a la que se reinicia el periodo de control diario.
- InpPropMaxTradesPerDay (8): Número máximo de operaciones de entrada coincidentes durante el día de control.
- InpPropMaxConsecutiveLosses (3): Número de operaciones de salida con pérdidas consecutivas que activan la regla de tiempo de espera.
- InpPropCooldownMinutes (180): Duración del periodo de espera en minutos tras activarse la racha de pérdidas.
- InpPropEmergencyFlatten (true): Solicita el cierre de las posiciones de este EA cuando esté activo un bloqueo de capital diario o general.
- InpPropRiskBufferMoney (0,0): Colchón adicional en la moneda de la cuenta por encima de los mínimos internos de capital.
Filtros de símbolo y señal
- InpSymbol1 (en blanco): Símbolo de negociación; si se deja en blanco, se utiliza el símbolo del gráfico adjunto, incluido el sufijo del bróker.
- InpSignalTF (PERIOD_M15): Marco temporal utilizado para generar señales, independientemente del marco temporal del gráfico mostrado.
- InpConfluenceATR (0,35): Distancia dentro de la cual los niveles del modelo pueden recibir una bonificación por puntuación de confluencia.
- InpFastEMA (20): Período de la media móvil exponencial rápida.
- InpSlowEMA (50): Período de la media móvil exponencial lenta.
- InpADXPeriod (14): Período del indicador de fuerza direccional.
- InpMinADX (18,0): Umbral mínimo de fuerza direccional.
- InpRSIPeriod (14): Período del indicador de impulso.
- InpLongRSIMin (51,5): Lectura mínima del RSI utilizada para el impulso alcista.
- InpShortRSIMax (48,5): Lectura máxima del RSI utilizada para el impulso bajista.
- InpATRPeriod (14): Período de la medida principal de volatilidad.
- InpATRSlowPeriod (100): Período de la referencia de volatilidad lenta.
- InpMinATRRatio (0,75): Relación mínima entre el ATR actual y el ATR lento para el filtrado de configuraciones.
- InpMaxATRRatio (1,80): Relación máxima entre el ATR actual y el ATR lento para el filtrado de configuraciones.
- InpMinBodyFrac (0,45): Fracción mínima del cuerpo de la vela direccional utilizada por los filtros de acción del precio pertinentes.
- InpCloseEdgeFrac (0,30): Distancia máxima desde el borde de la vela direccional, expresada como fracción del rango de la vela.
- InpEntryBufferATR (0,03): Distancia más allá de un nivel del modelo utilizada para establecer su activación, en unidades de ATR.
Objetivos y protección de beneficios
- InpHybridBaseStopPrice (0,00): Límite mínimo absoluto de distancia de precio para la unidad de referencia; si se establece en cero, se utiliza únicamente el límite mínimo del ATR.
- InpHybridMinStopATR (0,35): Múltiplo del ATR utilizado para la distancia de referencia de entrada y gestión de beneficios.
- InpHybridTargetR (12,0): Objetivo lejano medido en unidades R de referencia, independiente de la distancia de riesgo del stop adaptativo.
- InpHybridBETriggerR (0,18): Progreso favorable a partir del cual puede activarse el movimiento inicial de stop de protección.
- InpHybridBELockR (0,05): Distancia solicitada de bloqueo de beneficios desde la entrada para el movimiento de protección inicial.
- InpHybridTrailStartR (0,35): Evolución favorable a partir de la cual puede iniciarse el seguimiento.
- InpHybridEarlyTrailR (0,10): Distancia de seguimiento durante la fase inicial de la operación.
- InpHybridMidTrailR (0,08): Distancia de seguimiento tras el periodo inicial.
- InpHybridRunnerTrailR (0,06): Distancia de seguimiento una vez alcanzado el umbral del «runner».
- InpHybridRunnerAtR (1,50): Evolución favorable necesaria para la fase de seguimiento del «runner».
- InpHybridEarlySeconds (90): Duración, en segundos, del periodo inicial de seguimiento.
- InpHybridMinTrailLockR (0,25): Distancia mínima solicitada para bloquear las ganancias una vez que comienza el seguimiento, sujeta a las restricciones de stop del bróker.
- InpHybridTrailDebug (false): Muestra mensajes adicionales sobre el trailing stop.
- InpMaxHoldMinutes (180): Tiempo máximo de mantenimiento en minutos antes de una solicitud de cierre.
Sesión y dirección
- InpMaxSpreadATR (0,08): Spread máximo en relación con el ATR para las comprobaciones de configuración y entrada.
- InpSessionStartHour (15): Inicio de la ventana de entrada en la hora del servidor del bróker.
- InpSessionEndHour (23): Fin de la ventana de entrada, no incluida, según la hora del servidor del bróker.
- InpAllowLong (true): Permite configuraciones en largo.
- InpAllowShort (true): Permite configuraciones en corto.
Selección de modelo
- InpEnableSR (true): Activa las rupturas de los niveles fijos de soporte y resistencia.
- InpEnableVolatility (true): Activa las rupturas de la zona de volatilidad.
- InpEnableORB (verdadero): Activa las rupturas del rango de apertura.
- InpEnableSqueezeRelease (verdadero): Habilita las rupturas de compresión y liberación de compresión.
Tiempo de configuración de soportes, resistencias y volatilidad
- InpSRPendingMaxMinutes (1440): Duración máxima, en minutos, de una configuración de soporte o resistencia.
- InpVolLookback (8): Barras completas utilizadas para definir el rango de volatilidad.
- InpVolMaxBoxATR (2,50): Ancho máximo del rango de volatilidad en unidades ATR.
- InpVolATRExpansion (1,03): Ratio mínimo de expansión del ATR para el modelo de volatilidad.
- InpVolSignalMinATR (0,70): Rango mínimo de la vela de señal en unidades ATR para el modelo de volatilidad.
- InpVolEdgeFrac (0,35): Umbral de ubicación del cierre direccional para el modelo de volatilidad.
- InpVolPendingMaxMinutes (720): Duración máxima, en minutos, de una configuración de volatilidad.
Rango de apertura
- InpORBStartHour (16): Hora de inicio del rango de apertura según la hora del servidor del bróker.
- InpORBStartMinute (30): Minuto de inicio del rango de apertura.
- InpORBDurationMinutes (30): Duración de la ventana de medición del rango de apertura en minutos.
- InpORBOneSetupPerDay (true): Restringe el modelo de rango de apertura a una configuración al día.
- InpORBPendingMaxMinutes (600): Duración máxima, en minutos, de una configuración del rango de apertura.
Liberación de la compresión
- InpSqzShortWindow (6): Número de barras en la ventana de compresión reciente.
- InpSqzRefWindow (20): Número de barras en el régimen de referencia anterior.
- InpSqzCompressionRatio (0,72): Rango medio comprimido máximo en relación con el rango de referencia.
- InpSqzExpansionRatio (1,35): Rango mínimo de la vela de liberación en relación con el rango medio comprimido.
- InpSqzPendingMaxMinutes (180): Duración máxima, en minutos, de una configuración de compresión-liberación.
Asistencia
Utiliza los comentarios del producto o la mensajería de MQL5 para obtener asistencia con la configuración. Incluye la versión del producto, el símbolo, el marco temporal de la señal, la hora del servidor del bróker, los parámetros relevantes y el mensaje de Experts o del Diario al informar de un problema.
