Swing Breakout Sequence Strategy
Creado 07 jul. 2024
·
Actualizado 05 abr. 2025
La estrategia Swing Breakout Sequence (SBS) es una estrategia mecánica Premium para la plataforma NinjaTrader 8, inspirada en el modelo de trading de Stoic Trader. La estrategia se puede utilizar para superar los desafíos de evaluación de propfirms.
Requisitos Previos
Para usar correctamente esta estrategia debes tener disponibles los siguientes requisitos previos.
- NinjaTrader 8, con cualquier tipo de licencia. Order Flow no es necesario para ejecutar esta estrategia. Haz clic aquí para descargar
- Una cuenta de automated-trading.ch con una suscripción Premium activa
Aviso Legal Importante
Recomendamos encarecidamente que nunca ejecutes tus sistemas de trading algorítmico en tu dinero real ganado con esfuerzo. Siempre debes minimizar tu riesgo y ejecutar tus estrategias en programas de financiación de traders, para que el máximo cantidad que arriesgues perder sea la tarifa de suscripción mensual que pagas a esos programas.
Ejemplos de Configuración de Entrada
Esta estrategia tiene una configuración de entrada, basada en el algoritmo Swing Breakout Sequence — un modelo de entrada de alta probabilidad con una relación riesgo-recompensa definida, basada en una secuencia de 5 swings.
Aquí está el algoritmo para una configuración de entrada:
- El primer paso es la detección completa de un Swing Breakout Sequence, formado por 5 swings respetando el patrón para una entrada alcista (o exactamente lo inverso para una entrada bajista). Tener los 5 swings no es suficiente por sí solo — el criterio final para un SBS válido es que el precio rompa desde uno de los swings que lo componen. Como el 5º swing es el más bajo para un SBS alcista (y el más alto para uno bajista), la estrategia — como el indicador — ofrece la capacidad de elegir qué swing desencadena la ruptura. Según nuestras pruebas retrospectivas, el 1er swing en la secuencia tiende a ser la mejor opción.
- Si el precio cierra fuera del rango definido por los swings anteriores, el SBS se invalida, se descarta y no se muestra.
- El SBS no se dibuja en tiempo real durante la formación del swing — si lo fuera, muchos patrones SBS se dibujarían y luego se invalidarían y se eliminarían en tiempo real, creando confusión visual. Solo los válidos, confirmados por una ruptura, se dibujan.
-
Una vez que se valida un SBS, el algoritmo calcula una relación en él, basada en dos niveles:
- El nivel objetivo: definido por el 3er swing
- El nivel de stop: el swing más bajo (alcista) o más alto (bajista) en la secuencia — ya sea el 5º swing o el swing previo más bajo/más alto
Características
La estrategia Swing Breakout Sequence tiene un conjunto de características únicas:
- Implementación robusta del algoritmo Swing Breakout Sequence en casa
- No se colocan órdenes pendientes — solo órdenes de mercado
- Estrategia completamente automática que se puede escalar a múltiples instancias
- Capacidades precisas de backtesting siguiendo las mejores prácticas oficiales de NinjaTrader, logrando backtesting preciso de entrada/salida a nivel de tick
- Una biblioteca de gestión de órdenes robusta en casa, resistente a pérdidas de conexión, que funciona perfectamente en cuentas de Rithmic o cuentas de corretaje de NinjaTrader
Cantidad dinámica y gestión de riesgos
Como en todas nuestras estrategias, esta estrategia implementa dos métodos para establecer la cantidad de posiciones abiertas:
- Cantidad fija: utiliza la misma cantidad para cada posición. Si el stop loss varía entre posiciones, los montos de ganancia/pérdida también variarán.
- Cantidad ajustada por riesgo dinámico: calcula la cantidad de cada posición a partir de su stop loss, el riesgo máximo (en $) permitido por posición y la cantidad máxima permitida — produciendo montos iguales de ganancia/pérdida en todas las posiciones independientemente del ancho del stop loss.
Gestión de posiciones
Como en todas nuestras estrategias, esta estrategia implementa múltiples métodos de gestión de posiciones:
- Estrategia ATM: delega completamente la gestión de posiciones a tu propia estrategia ATM, seleccionada de una lista desplegable.
- Promedio del costo en dólares (Grid): aumenta la cantidad de la posición a medida que el precio se mueve en su contra, acercando el precio promedio al precio actual para que la posición pueda cerrarse al punto de equilibrio en un retroceso.
- Stop móvil: mueve el stop loss con cada nuevo punto de swing formado en el lado ganador de la posición.
- SuperTrend: utiliza el indicador SuperTrend como método de gestión.
La estrategia también permite establecer el stop loss basado en múltiples estrategias y tomar ganancias basado en una relación — consulta la sección Parámetros para más detalles.
Gestión de cuentas
La estrategia implementa activadores de parada comercial diaria basados en el recuento de posiciones ganadoras netas, el recuento de posiciones perdedoras netas o una ganancia/pérdida neta realizada objetivo.
Parámetros
Intentamos mantener los parámetros al mínimo — solo se exponen los más importantes.
| General | |
| Execute Historical Trades | Habilita la ejecución de transacciones cuando la estrategia se ejecuta en modos histórico, backtest u optimización — debe estar desmarked cuando se ejecuta en vivo. |
| Daily TakeProfit Target | La estrategia se detiene por el día una vez que se alcanza este monto de ganancia diaria. Se ignora cuando se establece en 0. |
| Weekly TakeProfit Target | La estrategia se detiene por la semana una vez que se alcanza este monto de ganancia semanal. Se reinicia al comienzo de cada nueva semana. Se ignora cuando se establece en 0. |
| Daily StopLoss Limit | La estrategia se detiene por el día una vez que se alcanza el límite de pérdida diaria (valor positivo — por ejemplo, 300 detiene el trading una vez que la PnL realizada ≤ -$300). Se ignora cuando se establece en 0. |
| Stop @ Winning Count | Detiene el trading por el día una vez que se alcanza el recuento de transacciones ganadoras netas. Se ignora cuando se establece en 0. |
| Stop @ Losing Count | Detiene el trading por el día una vez que se alcanza el recuento de transacciones perdedoras netas. Se ignora cuando se establece en 0. |
| Execute on Different Instrument | Ejecuta transacciones en un instrumento diferente al del gráfico activo — por ejemplo, ejecutar lógica en Minis pero ejecutar en Micros. Todo el cálculo de riesgo ocurre en el instrumento de ejecución, y las transacciones en un instrumento diferente no se dibujan en el gráfico. |
| Execution Instrument | Elige de una lista de Micros disponibles en tu conexión NinjaTrader como el instrumento en el que se ejecutan las transacciones. Las transacciones no se dibujarán en el gráfico en este caso. |
| Order Label | Una etiqueta añadida a cada posición enviada al bróker, útil para diferenciar tus órdenes de otros usuarios de la misma estrategia. |
| Swing Breakout Sequence | |
| Show Sequence Numbers | Habilita/desabilita el dibujo de etiquetas numéricas debajo/encima de cada punto de secuencia de swing. |
| Show Sequence Lines | Habilita/desabilita el dibujo de líneas que conectan los puntos de secuencia de swing. |
| Render Opacity (1-100) | La opacidad para dibujar objetos en el gráfico. |
| Swings Period | Los swings son mínimos más altos, máximos más altos, máximos más bajos y mínimos más bajos. Este parámetro establece cuántas barras son suficientes para separar dos swings del mismo tipo — cuanto mayor sea este valor, fewer swings en general. |
| Invalidation Method |
|
| Breakout Swing |
|
| Breakout Fibo Level | Solo se utiliza cuando Breakout Swing es Fibonacci Retracement — uno de 23.60%, 38.20%, 50%, 61.80%, o 76.40%, cada uno calculado desde el swing 4 en la secuencia. |
| Min SBS Ratio | La distancia de la ganancia potencial dividida por la distancia del stop loss al precio actual cuando se valida el SBS. Refleja el sesgo del SBS — más cerca de 1 significa menos sesgado. Un valor de 0.9 ha demostrado ser óptimo en nuestras pruebas. |
| Min SBS Bars Count | Filtra estructuras SBS que abarcan muy pocas barras para ser significativas. |
| Max SBS Bars Count | Filtra estructuras SBS que abarcan demasiadas barras — estas generalmente no producen señales rentables. |
| Max SBS Height Points | Filtra estructuras SBS que son demasiado altas, en puntos. |
| Entry Setup | |
| Time Zone |
La zona horaria utilizada para el parámetro Trade Time a continuación.
|
| Trade Time | Los intervalos de tiempo durante los cuales se permite a la estrategia colocar transacciones — por ejemplo, "09:30-16:15" para RTH en EST. Se admiten múltiples intervalos separados por comas en orden creciente, cortados a medianoche para evitar problemas al pasar a un nuevo día. |
| Quantity Strategy |
|
| Max Qty | Cantidad máxima permitida cuando se selecciona Risk Adjusted — útil ya que algunas propfirms hacen cumplir límites de cantidad de órdenes que pueden invalidar una cuenta. |
| Invert Entries | Invierte las entradas de largo a corto y viceversa — el stop loss se convierte en la ganancia y viceversa, con la relación de riesgo invertida en consecuencia (una ganancia 2:1 se convierte en 1:2). Útil en regímenes agitados donde la lógica de ruptura original no se mantiene. |
| Long/Short Entry Mode |
|
| SuperTrend Entry Filter | Restringe las entradas largas a cuando SuperTrend es alcista, y las entradas cortas a cuando es bajista. |
| SMAs Entry Filter | Requiere que la secuencia SBS rompa por encima/debajo de dos promedios móviles simples. |
| SMA Slow Period / SMA Fast Period | Los períodos de los dos promedios móviles simples utilizados como filtro de entrada. |
| Entry Mode |
|
| FVG Candle Filter |
|
| Min. Gap (ticks) | La distancia mínima, en ticks, entre las mechas del FVG para ser válido — cuanto mayor sea este valor, fewer FVGs se detectan. |
| Order Qty | Se utiliza solo cuando Quantity Strategy es Fixed — la cantidad fija por transacción (y por aumento de cantidad durante la gestión de órdenes). Típicamente 1 o 2. |
| Order Management | |
| Order Management Strategy |
|
| ATM Strategy Template Name | Solo se utiliza con el método de gestión de órdenes de estrategia ATM — el nombre exacto de la plantilla de tu estrategia ATM personalizada. Debe coincidir con una plantilla existente, o no se abrirá ninguna posición. |
| On Opposite Signal |
|
| Enable Price Breakeven | Habilita/desabilita el mecanismo de punto de equilibrio basado en precio. |
| Breakeven Price Strategy |
|
| Breakeven Price Trigger | Disponible si el breakeven basado en precio está habilitado — el valor de desencadenador necesario para mover el stop loss al punto de equilibrio. |
| Enable Time Breakeven | Habilita/desabilita el mecanismo de punto de equilibrio basado en tiempo (minutos). |
| Breakeven Time Trigger | Disponible si el breakeven basado en tiempo está habilitado — el valor de desencadenador, en minutos, necesario para mover el stop loss al punto de equilibrio. |
| StopLoss Strategy |
|
| TakeProfit Strategy |
|
| Scale out % Qty at % Target / Scale out at % Target / Scale out % Qty | Cierra un porcentaje de la cantidad de la posición una vez que el precio alcanza un porcentaje del objetivo de ganancia (redondeado hacia abajo cuando es fraccionario). |
| Take Profit Currency | El monto de ganancia en dólares, utilizado con la estrategia de valor de moneda fija. |
| Stop Loss Points | Disponible cuando la estrategia de stop loss es Points. |
| Target Risk Per Trade ($) | El riesgo máximo, en dólares, por posición — utilizado antes de abrir una transacción para verificar que el stop loss calculado respete este límite; si no, se salta la transacción. |
| Max Allowed Risk Per ($) | Solo se utiliza con cantidad ajustada por riesgo — controla qué tan lejos se permite que el riesgo calculado real se desvíe del objetivo de riesgo. |
| Stoploss offset Points | Agrega un desplazamiento, en puntos, al nivel de stop loss calculado — se utiliza cuando se calcula el riesgo por transacción. |
| Take Profit Points | Disponible cuando la estrategia de ganancia es Points. |
| SuperTrend | |
| SuperTrend Mode | Basado en ATR, o adaptativo (basado en cierre/máximo/mínimo de vela). |
| Period / Multiplier / Moving Avg. Type / Smooth | Parámetros de cálculo SuperTrend estándar. |
| SuperTrend Close Only Winning | Cuando SuperTrend se utiliza como método de gestión de órdenes, evita cerrar transacciones que estén inmediatamente por debajo/encima de supertrend justo después de abrirse — solo cierra posiciones actualmente en ganancias. |
| Trailing Stop Parameters | |
| Trailing Stop Strategy | Points (calculado desde el precio de entrada) o Ratio (calculado desde el valor del stop loss, reflejado en el lado ganador). |
| Trailing Stop Trigger / Trail Amount | El desencadenador y el monto de seguimiento (en puntos o relación) para el método Classic Trail Stop. |
| DCA (Grid) Parameters | |
| Breakeven Profit Shift | Agrega un poco de ganancia a la definición de punto de equilibrio, para cubrir comisiones al cerrar la grid al punto de equilibrio. |
| Grid Size to Breakeven | El número de aumentos de órdenes requeridos antes de considerar cerrar la posición al punto de equilibrio. |
| Min Grid Gap (Point) | La brecha mínima, en puntos, entre dos órdenes de grid. |
| Bar Close Trigger | Hace que las órdenes de grid se abran al cierre de barra en la dirección de la operación. |
| Command Buttons | |
| La estrategia expone botones de comando manual en el panel Chart Trader — asegúrate de que se muestre en tu gráfico activo. | |
| Arm/Disarm Buttons | Habilita/desabilita manualmente la entrada de operaciones largas o cortas — útil si tienes un sesgo direccional. |
| Close Position Button | Aplana inmediatamente la posición sin reiniciar la estrategia, que continúa buscando nuevas operaciones después. |
| Increase Qty Button | Aumenta la cantidad de la posición actual por la cantidad Order Qty. |
| Set Breakeven Button | Mueve el stop loss de la posición abierta al punto de equilibrio, si hacerlo lo mejoraría. |
Reportes de Rendimiento
Los resultados pasados no son garantía de resultados futuros. Todos los resultados de backtesting son solo para fines indicativos.
- Se incluyen comisiones, utilizando el esquema de comisiones de licencia de por vida de NinjaTrader, para resultados realistas.
- Seguimos la guía oficial de NinjaTrader para backtesting preciso con granularidad intrabarra utilizando series de datos adicionales a nivel de tick, y solo utilizamos órdenes de mercado — nunca órdenes pendientes — en modos de tiempo real y backtest.
La estrategia ha sido probada retrospectivamente en múltiples perfiles de riesgo e instrumentos (MES, MNQ), y también se ha ejecutado una plantilla de parámetros defensivos en vivo en una cuenta Apex Live Trader Funding, superando exitosamente el desafío de validación de cuenta.
Aún no se han cargado reportes de rendimiento para esta estrategia.
Instrucciones de Descarga e Instalación
Requisitos de Licencia
En automated-trading.ch puedes elegir comprar una suscripción mensual para usar nuestros productos premium, o usar nuestros productos gratuitos sin suscribirse.
En ambos casos, necesitas crear una cuenta para que puedas obtener una Licencia que puedas usar tanto para productos premium como gratuitos.
Para obtener tu licencia, simplemente regístrate y luego obtén tu licencia en la página de facturación.
Descargar
También puedes descargar esta estrategia — y todas las demás estrategias e indicadores de automated-trading.ch — en cualquier momento desde tu página centralizada de Descargas.
Pasos de Instalación
Preguntas Frecuentes
General
Facturación
Escépticos
Notas de Actualización
- Bug Fix: Error when using ATM Strategy
- Added Decrease quantity command button; Added "Invert Entries" Parameter; Scaling out added Scale out at % Target/Qty; Breakeven considers commissions
- Fixed performance regression related to swing price detection
- Added filter Max bars between swings; Added Immediate on Swing 4 breakout mode; Added SMA Slow/Fast entry filter; Bug Fix crashing on new market session live
- Added Scale out 50% Qty at 50% Target management option
- Fix bug on Market Replay session transitions; Fix SuperTrend trailing stop miss bug; Added Max SBS Height points parameter
- Fibo levels calculated Swing3->extreme point (was extreme->Swing3); Added Fibo 0.236 as TP target
- Reorganization of Parameters; Added SuperTrend as trade management method; pixel-based SBS sequence number drawing; Added "Invalidation Method" parameter; sequences on invalidated swings removed
- Bug Fix: breakeven not triggered on long trades; Increase position button also triggering breakeven; breakeven button sometimes closing positions
- Bug Fix: ATM usage crashing Strategy; Command button Close now closes ATM positions; drawing objects disposed in optimization mode
- Added Entry mode selection: Immediate or wait for FVG; Added "Min Grid Gap" and "Bar Close Trigger" params to DCA (Grid) method
- Bug Fix when using ATM strategy
- Added Max Allowed Risk per trade separate from Target Risk per trade
- Bug fix: Trailing stop mechanism should trigger outside trade time
- Added StopLoss & Takeprofit line drawing with drag & drop
- Bug Fixes: weekly profit target calc; EST timezone glitch; Currency risk closing early; Trailing stop with Fixed currency value stoploss
- Bug Fix: rare error when little data loaded on chart
- Auto submit of License on Billing cycle date; all parameters displayed on Strategy Analyzer optimization; Clear warning message when strategy added from Strategy Tab not Chart
- Added weekly profit target
- Major fixes when Take Profit method set to Swing3; Stop Loss calc updated to include Prior Swing, Swing4, Swing5; Fix Chart Panel Glitch on tab change
- Removed strong condition on Swing5 price (relaxed successive-swing rule)
- Bug Fix: running strategy on multiple accounts overlaps daily limit stops
- Less strict detection rule for more pattern detection; Added Fibonacci Retracement Breakout method; Added Trade Time zone selection EST/local; Added Min & Max SBS Bars count filter
- Added Classic Trailing Stop management method; Fix issue with entry; Update parameter refresh logic; Added stoploss offset in points
- Added Swing 3 as new take profit strategy
- First Release of the strategy