Swing Breakout Sequence Strategy
Создано: 07 июл 2024
·
Обновлено: 05 апр 2025
Swing Breakout Sequence (SBS) Strategy — это Premium механическая стратегия для платформы NinjaTrader 8, вдохновлённая торговой моделью Stoic Trader's. Её можно использовать для прохождения оценочных челленджей проп-фирм.
Требования
Для корректной работы со стратегией вам понадобятся следующие требования.
- NinjaTrader 8, с любым типом лицензии. Order Flow для работы этой стратегии не нужен. Нажмите здесь, чтобы скачать
- Учётная запись automated-trading.ch с действующей подпиской Premium
Важное предупреждение
Настоятельно рекомендуем никогда не запускать свои алгоритмические торговые системы на реальные деньги, заработанные с трудом. Всегда минимизируйте риски и запускайте стратегии на программах финансирования трейдеров, чтобы максимальная сумма, которую вы можете потерять, равнялась ежемесячной плате за подписку на эти программы.
Примеры настройки входа
У этой стратегии один сетап входа, основанный на алгоритме Swing Breakout Sequence — вероятностной модели входа с заданным соотношением риска и прибыли, построенной на последовательности из 5 свингов.
Вот алгоритм сетапа входа:
- Первый шаг — полное обнаружение Swing Breakout Sequence, сформированной из 5 свингов, которые соответствуют паттерну для входа в лонг (или строго обратному паттерну для входа в шорт). Наличия 5 свингов недостаточно само по себе: окончательное условие действительной SBS состоит в том, что цена пробивает один из свингов, входящих в её состав. Поскольку 5-й свинг является самым низким для бычьей SBS (и самым высоким для медвежьей), стратегия, как и индикатор, позволяет выбрать, какой свинг запускает пробой. По нашим бэктестам, 1-й свинг в последовательности, как правило, является лучшим выбором.
- Если цена закрывается за пределами диапазона, заданного предыдущими свингами, SBS аннулируется, удаляется и не отображается.
- SBS не рисуется в реальном времени во время формирования свингов — иначе многие паттерны SBS отрисовывались бы, а затем аннулировались и удалялись в реальном времени, создавая визуальный шум. Отображаются только действительные SBS, подтверждённые пробоем.
-
Как только SBS подтверждена, алгоритм рассчитывает на ней соотношение по двум уровням:
- Целевой уровень: определяется 3-м свингом
- Уровень стопа: самый низкий (для бычьей) или самый высокий (для медвежьей) свинг в последовательности — либо 5-й свинг, либо предыдущий самый низкий минимум/самый высокий максимум свинга
Возможности
Стратегия Swing Breakout Sequence обладает набором уникальных возможностей:
- Надёжная собственная реализация алгоритма Swing Breakout Sequence
- Ордера в ожидании не выставляются — только рыночные ордера
- Полностью автоматическая стратегия, которую можно масштабировать на несколько экземпляров
- Точное тестирование на исторических данных в соответствии с официальными рекомендациями NinjaTrader, с точным бэктестом входов и выходов на уровне тиков
- Надёжная собственная библиотека управления ордерами, устойчивая к обрыву соединения, которая безупречно работает со счетами Rithmic и брокерскими счетами NinjaTrader
Динамическое количество и управление риском
Как и во всех наших стратегиях, эта стратегия реализует два метода определения количества открытых позиций:
- Fixed Quantity: использует одинаковое количество для каждой позиции. Если стоп-лосс меняется между позициями, суммы выигрыша и проигрыша тоже будут различаться.
- Dynamic Risk-Adjusted Quantity: рассчитывает количество каждой позиции исходя из её стоп-лосса, максимального риска (в $), допустимого на одну позицию, и максимально допустимого количества — обеспечивая равные суммы выигрыша и проигрыша по всем позициям независимо от ширины стоп-лосса.
Управление позицией
Как и во всех наших стратегиях, эта стратегия реализует несколько методов управления позицией:
- ATM Strategy: полностью передайте управление позицией собственной ATM-стратегии, выбранной из выпадающего списка.
- Dollar Cost Averaging (Grid): увеличивает количество позиции по мере движения цены против неё, приближая среднюю цену к текущей, чтобы позиция могла закрыться в безубыток при откате.
- Trailing Stop: сопровождает стоп-лосс с каждой новой точкой свинга, сформированной на выигрышной стороне позиции.
- SuperTrend: использует индикатор SuperTrend как метод управления.
Стратегия также позволяет задавать стоп-лосс на основе нескольких стратегий, а take-profit — на основе соотношения; подробности см. в разделе «Параметры».
Управление счётом
Стратегия реализует ежедневные триггеры остановки торговли на основе чистого количества прибыльных позиций, чистого количества убыточных позиций или целевой реализованной чистой прибыли или убытка.
Параметры
Мы стараемся минимизировать количество параметров — открыты только самые важные.
| Общие | |
| Execute Historical Trades | Включает исполнение сделок, когда стратегия работает в режимах Historical, Backtest или Optimization — при работе в режиме Live этот флажок должен быть снят. |
| Daily TakeProfit Target | Стратегия прекращает торговлю на день, как только будет достигнута эта дневная сумма take-profit. При значении 0 игнорируется. |
| Weekly TakeProfit Target | Стратегия прекращает торговлю на неделю, как только будет достигнута эта недельная сумма take-profit. Сбрасывается в начале каждой новой недели. При значении 0 игнорируется. |
| Daily StopLoss Limit | Стратегия прекращает торговлю на день, как только будет достигнут дневной лимит убытка (положительное значение — например, 300 останавливает торговлю, когда реализованный PnL ≤ -$300). При значении 0 игнорируется. |
| Stop @ Winning Count | Прекращает торговлю на день, как только чистое количество прибыльных сделок достигнет этого значения. При значении 0 игнорируется. |
| Stop @ Losing Count | Прекращает торговлю на день, как только чистое количество убыточных сделок достигнет этого значения. При значении 0 игнорируется. |
| Execute on Different Instrument | Исполняет сделки на инструменте, отличном от инструмента активного графика, — например, логика работает на мини-контрактах, а исполнение на микро-контрактах. Весь расчёт риска выполняется на инструменте исполнения, а сделки на другом инструменте на графике не отображаются. |
| Execution Instrument | Выберите из списка микро-контрактов, доступных в вашем подключении NinjaTrader, инструмент, на котором будут исполняться сделки. В этом случае сделки на графике не отображаются. |
| Order Label | Метка, добавляемая к каждой позиции, отправляемой брокеру; полезна, чтобы отличать ваши ордера от ордеров других пользователей этой же стратегии. |
| Swing Breakout Sequence | |
| Show Sequence Numbers | Включает/выключает отрисовку номеров-подписей над/под каждой точкой последовательности свингов. |
| Show Sequence Lines | Включает/выключает отрисовку линий, соединяющих точки последовательности свингов. |
| Render Opacity (1-100) | Непрозрачность, с которой отображаются объекты на графике. |
| Swings Period | Свинги — это более высокие минимумы, более высокие максимумы, более низкие максимумы и более низкие минимумы. Этот параметр задаёт, сколько баров достаточно, чтобы разделить два свинга одного типа, — чем выше значение, тем меньше свингов в целом. |
| Invalidation Method |
|
| Breakout Swing |
|
| Breakout Fibo Level | Используется только когда в Breakout Swing выбран Fibonacci Retracement — один из уровней 23.60%, 38.20%, 50%, 61.80% или 76.40%, каждый рассчитывается от Swing 4 в последовательности. |
| Min SBS Ratio | Расстояние до потенциальной цели take-profit, делённое на расстояние до стоп-лосса при текущей цене в момент подтверждения SBS. Отражает асимметрию SBS: чем ближе к 1, тем она меньше. В наших тестах оптимальным показало себя значение 0.9. |
| Min SBS Bars Count | Отфильтровывает структуры SBS, которые занимают слишком мало баров, чтобы быть значимыми. |
| Max SBS Bars Count | Отфильтровывает структуры SBS, которые занимают слишком много баров, — такие, как правило, не дают прибыльных сигналов. |
| Max SBS Height Points | Отфильтровывает структуры SBS, которые слишком высоки, в пунктах. |
| Сетап входа | |
| Time Zone |
Часовой пояс, используемый для параметра Trade Time ниже.
|
| Trade Time | Временные интервалы, в течение которых стратегия может выставлять сделки — например, «09:30-16:15» для RTH по EST. Поддерживаются несколько интервалов через запятую, перечисленных по возрастанию; интервалы обрываются в полночь, чтобы избежать проблем при переходе на новый день. |
| Quantity Strategy |
|
| Max Qty | Максимально допустимое количество при выбранном Risk Adjusted — полезно, так как некоторые проп-фирмы накладывают ограничения на количество ордера, которые могут сделать счёт недействительным. |
| Invert Entries | Инвертирует входы: лонг становится шортом и наоборот, стоп-лосс становится take-profit и наоборот, а соотношение риска инвертируется соответственно (take-profit 2:1 становится 1:2). Полезно на боковом рынке, где исходная логика пробоя не работает. |
| Long/Short Entry Mode |
|
| SuperTrend Entry Filter | Ограничивает входы в лонг периодами, когда SuperTrend бычий, а входы в шорт — когда он медвежий. |
| SMAs Entry Filter | Требует, чтобы последовательность SBS пробивала две простые скользящие средние — вверх или вниз. |
| SMA Slow Period / SMA Fast Period | Периоды двух простых скользящих средних, используемых как фильтр входа. |
| Entry Mode |
|
| FVG Candle Filter |
|
| Min. Gap (ticks) | Минимальное расстояние в тиках между фитилями FVG, при котором она считается действительной — чем выше значение, тем меньше FVG обнаруживается. |
| Order Qty | Используется только при Quantity Strategy = Fixed — фиксированное количество на сделку (и на каждое увеличение количества при управлении ордерами). Обычно 1 или 2. |
| Управление ордерами | |
| Order Management Strategy |
|
| ATM Strategy Template Name | Используется только с методом управления ордерами ATM Strategy — точное название вашего собственного шаблона ATM-стратегии. Должно совпадать с существующим шаблоном, иначе позиция не будет открыта. |
| On Opposite Signal |
|
| Enable Price Breakeven | Включает/выключает механизм безубытка по цене. |
| Breakeven Price Strategy |
|
| Breakeven Price Trigger | Доступно, если включён безубыток по цене — значение триггера, необходимое для переноса стоп-лосса в безубыток. |
| Enable Time Breakeven | Включает/выключает механизм безубытка по времени (в минутах). |
| Breakeven Time Trigger | Доступно, если включён безубыток по времени — значение триггера в минутах, необходимое для переноса стоп-лосса в безубыток. |
| StopLoss Strategy |
|
| TakeProfit Strategy |
|
| Scale out % Qty at % Target / Scale out at % Target / Scale out % Qty | Закрывает процент количества позиции, как только цена достигает процента от цели по прибыли (при дробном результате округляется вниз). |
| Take Profit Currency | Сумма take-profit в долларах, используемая со стратегией Fixed Currency Value. |
| Stop Loss Points | Доступно, если стратегия stop-loss — Points. |
| Target Risk Per Trade ($) | Максимальный риск в долларах на одну позицию — проверяется перед открытием сделки: если рассчитанный стоп-лосс не укладывается в этот лимит, сделка пропускается. |
| Max Allowed Risk Per ($) | Используется только с количеством Risk Adjusted — определяет, насколько реальный расчётный риск может отклоняться от Target Risk. |
| Stoploss offset Points | Добавляет смещение в пунктах к рассчитанному уровню стоп-лосса — используется при расчёте риска на сделку. |
| Take Profit Points | Доступно, если стратегия take-profit — Points. |
| SuperTrend | |
| SuperTrend Mode | На основе ATR либо Adaptive (на основе цен закрытия/максимума/минимума свечи). |
| Period / Multiplier / Moving Avg. Type / Smooth | Стандартные параметры расчёта SuperTrend. |
| SuperTrend Close Only Winning | Если SuperTrend используется как метод управления ордерами, не позволяет закрывать сделки, которые сразу после открытия оказываются ниже/выше supertrend, — закрываются только позиции, которые сейчас в прибыли. |
| Параметры трейлинг-стопа | |
| Trailing Stop Strategy | Points (рассчитывается от цены входа) или Ratio (рассчитывается от значения стоп-лосса и зеркально отражается на выигрышной стороне). |
| Trailing Stop Trigger / Trail Amount | Триггер и величина трейлинга (в пунктах или соотношении) для метода Classic Trail Stop. |
| Параметры DCA (Grid) | |
| Breakeven Profit Shift | Добавляет немного прибыли к определению безубытка, чтобы покрыть комиссии при закрытии сетки в безубыток. |
| Grid Size to Breakeven | Количество увеличений ордера, необходимое, прежде чем рассматривать закрытие позиции в безубыток. |
| Min Grid Gap (Point) | Минимальный промежуток в пунктах между двумя ордерами сетки. |
| Bar Close Trigger | Ордера сетки открываются на закрытии бара в направлении сделки. |
| Кнопки команд | |
| Стратегия выводит ручные кнопки команд на панель Chart Trader — убедитесь, что она отображается на активном графике. | |
| Arm/Disarm Buttons | Вручную включают/отключают вход в лонг или шорт — полезно при наличии направленного уклона (bias). |
| Close Position Button | Немедленно закрывает позицию без перезапуска стратегии, которая продолжает искать новые сделки. |
| Increase Qty Button | Увеличивает количество текущей позиции на величину Order Qty. |
| Set Breakeven Button | Переводит стоп-лосс открытой позиции в безубыток, если это улучшит его. |
Отчёты о результатах
Прошлые результаты не гарантируют будущих результатов. Все результаты бэктестинга приведены исключительно для ознакомления.
- Комиссии учитываются по схеме комиссий лицензии NinjaTrader Lifetime для реалистичных результатов.
- Мы следуем официальному руководству NinjaTrader по точному бэктесту с внутрибарной детализацией, с использованием дополнительных потоков тиковых данных, и используем только рыночные ордера — никогда ордера в ожидании — как в режиме реального времени, так и в бэктесте.
Стратегия протестирована на нескольких профилях риска и инструментах (MES, MNQ), а защитный шаблон параметров также был запущен в реальной торговле на счёте Apex Live Trader Funding, где успешно прошёл проверочный челлендж счёта.
Для этой стратегии пока не загружено ни одного отчёта о результатах.
Инструкции по загрузке и установке
Требования к лицензии
На automated-trading.ch вы можете либо оформить ежемесячную подписку для использования наших продуктов Premium, либо пользоваться бесплатными продуктами без подписки.
В обоих случаях вам нужно создать учётную запись, чтобы получить лицензию, которую можно использовать как для продуктов Premium, так и для бесплатных продуктов.
Чтобы получить лицензию, просто зарегистрируйтесь, а затем получите её на странице оплаты.
Скачать
Вы также можете скачать эту стратегию, а также любую другую стратегию или индикатор automated-trading.ch, в любое время из централизованной страницы загрузок.
Шаги установки
Часто задаваемые вопросы
Общие
Оплата
Скептики
Примечания к релизам
- 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