Candle Range Theory (CRT) Strategy
Создано: 16 мар 2025
·
Обновлено: 05 сен 2025
Стратегия Candle Range Theory (CRT) — это Premium механическая стратегия для платформы NinjaTrader 8. Её можно использовать для прохождения оценочных челленджей проп-фирм.
Требования
Для корректной работы со стратегией вам понадобятся следующие требования.
- NinjaTrader 8, с любым типом лицензии. Нажмите здесь, чтобы скачать
- Учётная запись automated-trading.ch с действующей подпиской Premium
Важное предупреждение
Настоятельно рекомендуем никогда не запускать свои алгоритмические торговые системы на реальные деньги, заработанные с трудом. Всегда минимизируйте риски и запускайте стратегии на программах финансирования трейдеров, чтобы максимальная сумма, которую вы можете потерять, равнялась ежемесячной плате за подписку на эти программы.
Примеры настройки входа
Эта стратегия имеет один сетап входа, основанный на методологии Candle Range Theory (CRT).
Если коротко: модель входа CRT — это вероятностная модель входа с заданным соотношением риска и прибыли. Она основана на анализе свечного паттерна на старшем таймфрейме и поиске подтверждения входа на младшем таймфрейме.
На старшем таймфрейме мы ищем свечной паттерн CRT — последовательность, соответствующую структуре Accumulation, Manipulation, Distribution, которая формируется тремя свечами:
- Первая свеча — длинная свеча накопления (accumulation).
- Вторая свеча — свеча манипуляции (manipulation): цена образует фитиль, выходящий за максимум предыдущей свечи, но затем возвращается вниз и закрывается внутри тела предыдущей свечи.
- Третья свеча — свеча распределения (distribution): цена пробивает нижний фитиль второй свечи и движется внутрь (и за пределы) минимума первой свечи.
Триггером входа в этой модели является пробой нижнего фитиля второй свечи (для входа в лонг действует обратное правило). Этот триггер анализируется на более быстром, младшем таймфрейме — например, если паттерн CRT наблюдается на 1-часовом таймфрейме, подтверждение входа можно искать на 1-минутном или 5-минутном таймфрейме.
Младший таймфрейм используется для подтверждения входа, чтобы сделка открывалась своевременно — либо через Fair Value Gap, либо просто ожиданием закрытия младшего таймфрейма ниже нижнего фитиля второй свечи.
Одно из преимуществ этой модели в том, что соотношение Take Profit / Stop Loss известно до входа в сделку: как правило, стоп-лосс ставится на несколько тиков за пределы свечи манипуляции (2-я свеча), а целью take-profit является минимум первой свечи (или максимум — для входа в лонг).
Примеры графиков
Эти примеры не призваны показать, что стратегия приносит прибыль: это намеренно отобранные прибыльные сделки, выбранные, чтобы избежать путаницы и проиллюстрировать наилучшие сценарии, в которых сетап входа хорошо работает. Запустив стратегию самостоятельно, вы увидите, что многие похожие сетапы приводят к убыточным сделкам — это обычная реальность трейдинга. Цель — ожидаемая прибыльность в долгосрочной перспективе, даже несмотря на то, что отдельные сделки оказываются убыточными.
MES, 1-минутный график / старший таймфрейм 1 час
MES, таймфрейм 1 минута, со старшим таймфреймом 1 час (отображается наложением на график, что очень удобно). В этом примере показаны два отдельных входа — первый в лонг, второй в шорт. Свечи, отмеченные 1 и 2, — это свечи, которые сформировали каждый вход, а маркеры TP/SL показывают, где были установлены уровни take-profit и stop-loss.
MES, 1-минутный график — Take Profit на 2x от свечи CRT
Стратегия поддерживает несколько методов take-profit и stop-loss. По умолчанию CRT take-profit устанавливается на максимум/минимум фитиля первой (накопительной) свечи, но его можно расширить до кратного этому диапазону — этот пример иллюстрирует коэффициент 2x. Маркер 1X показывает первый уровень take-profit, а 2X показывает, где вместо него был установлен уровень take-profit на 2x, что в долгосрочной перспективе повышает ожидаемую прибыльность.
Возможности
Стратегия CRT обладает набором уникальных возможностей:
- Надёжная собственная реализация алгоритма сетапа входа Candle Range Theory
- Ордера в ожидании не выставляются — только рыночные ордера, поэтому нет отклонённых ордеров и частичных исполнений
- Полностью автоматическая стратегия, которую можно масштабировать на несколько экземпляров
- Точное тестирование на исторических данных в соответствии с официальными рекомендациями NinjaTrader, с точным бэктестом входов и выходов на уровне тиков
- Надёжная собственная библиотека управления ордерами, устойчивая к обрыву соединения, которая безупречно работает со счетами Rithmic и брокерскими счетами NinjaTrader
- Кнопки команд на графике для ручного управления позициями при необходимости
- Очень легковесная стратегия, которую можно запускать в нескольких экземплярах, даже на маломощном VPS
Динамическое количество и управление риском
Как и во всех наших стратегиях, эта стратегия реализует два метода определения количества открытых позиций:
- Fixed Quantity: использует одинаковое количество для каждой позиции. Если стоп-лосс меняется между позициями, суммы выигрыша и проигрыша тоже будут различаться.
- Dynamic Risk-Adjusted Quantity: рассчитывает количество каждой позиции исходя из её стоп-лосса, максимального риска (в $), допустимого на одну позицию, и максимально допустимого количества — обеспечивая равные суммы выигрыша и проигрыша по всем позициям независимо от ширины стоп-лосса.
Управление позицией
Как и во всех наших стратегиях, эта стратегия реализует несколько методов управления позицией:
- ATM Strategy: полностью передайте управление позицией собственной ATM-стратегии, выбранной из выпадающего списка.
- SuperTrend: использует индикатор SuperTrend для сопровождения стоп-лосса и динамического управления выходами.
- Classic Trailing Stop: сопровождает стоп-лосс на основе триггера и величины трейлинга.
Стратегия также позволяет задавать стоп-лосс на основе нескольких стратегий, а take-profit — на основе соотношения; подробности см. в разделе «Параметры».
Управление счётом
Стратегия реализует ежедневные триггеры остановки торговли на основе чистого количества прибыльных позиций, чистого количества убыточных позиций или целевой реализованной чистой прибыли или убытка.
Параметры
Мы стараемся минимизировать количество параметров — открыты только самые важные.
| Общие | |
| Execute Historical Trades | Включает исполнение сделок, когда стратегия работает в режимах Historical, Backtest или Optimization — при работе в режиме Live этот флажок должен быть снят. |
| Daily TakeProfit Target | Стратегия прекращает торговлю на день, как только после закрытия позиции будет достигнута эта дневная цель по прибыли. При значении 0 игнорируется. |
| Daily StopLoss Limit | Стратегия прекращает торговлю на день, как только после закрытия позиции будет достигнут дневной лимит убытка (положительное значение — например, 300 останавливает торговлю, когда реализованный PnL ≤ -$300). При значении 0 игнорируется. |
| Stop @ Winning Count | Прекращает торговлю на день, как только чистое количество прибыльных сделок достигнет этого значения. При значении 0 игнорируется. |
| Stop @ Losing Count | Прекращает торговлю на день, как только чистое количество убыточных сделок достигнет этого значения. При значении 0 игнорируется. |
| Render Opacity (1-100) | Непрозрачность, с которой отображаются объекты на графике. |
| Execute on Different Instrument | Исполняет сделки на инструменте, отличном от инструмента активного графика, — например, логика работает на мини-контрактах, а исполнение на микро-контрактах, чтобы лучше управлять риском. Весь расчёт риска выполняется на инструменте исполнения, а сделки на другом инструменте на графике не отображаются. |
| Execution Instrument | Выберите из списка микро-контрактов, доступных в вашем подключении NinjaTrader, инструмент, на котором будут исполняться сделки. В этом случае исторические и живые сделки на графике не отображаются. |
| Структура рынка | |
| Higher TimeFrame | Выбирает старший таймфрейм, на котором выполняется анализ сетапа входа. Убедитесь, что выбран таймфрейм выше таймфрейма активного графика и того же типа — например, нельзя выбрать старший таймфрейм на основе тиков, если график построен по минутам. |
| Higher TimeFrame Period | Задаёт период старшего таймфрейма. |
| Сетап входа | |
| Time Zone |
Часовой пояс, используемый для параметра Trade Time ниже. Фьючерсные рынки работают по времени Восточного побережья США (EST), поэтому этот параметр позволяет задавать торговый интервал относительно часового пояса вашего компьютера.
|
| Trade Time |
Временные интервалы, в течение которых стратегия может выставлять сделки. Примеры:
|
| Quantity Strategy |
|
| Max Qty | Максимально допустимое количество при выбранном Risk Adjusted — полезно, так как некоторые проп-фирмы накладывают ограничения на количество ордера, которые могут сделать счёт недействительным. |
| Long/Short Entry Mode |
Полезно, если у вас уже есть направленный дневной уклон (bias) и вы хотите ограничить торговлю одним направлением.
|
| Trade Entry Mode |
Режим входа после обнаружения действительной последовательности CRT.
|
| Min CRT Ticks | Минимальный размер в тиках зоны прибыли свечи CRT. Свеча CRT, диапазон которой слишком мал для торговли — то есть расстояние от сигнала входа до фитиля take-profit очень мало, — пропускается. |
| Min CRT Ratio | Соотношение CRT — это соотношение выигрыша к проигрышу сделки: расстояние от сигнала входа до фитиля take-profit (максимальный фитиль первой свечи CRT для лонга, минимальный — для шорта), делённое на расстояние от цены входа до фитиля стоп-лосса (минимальный фитиль первой свечи CRT для лонга, максимальный — для шорта). Этот параметр задаёт минимально допустимое соотношение; входы с меньшим значением пропускаются. |
| SuperTrend Entry Filter | Включает/выключает использование индикатора SuperTrend как фильтра входа: при включении длинные сделки разрешены только тогда, когда SuperTrend бычий, а короткие — только когда он медвежий. |
| Order Qty | Используется только при Quantity Strategy = Fixed — фиксированное количество на сделку (и на каждое увеличение количества, если механизм управления ордерами наращивает позицию). Обычно 1 или 2. |
| SuperTrend | |
| Этот раздел виден только при включённом параметре SuperTrend Entry Filter. | |
| SuperTrend Mode |
|
| Period / Multiplier / Moving Avg. Type / Smooth | Стандартные параметры расчёта SuperTrend — период, множитель полосы (чем выше значение, тем шире полоса), тип скользящей средней и период сглаживания. |
| Run SuperTrend on Higher TF | Рассчитывает индикатор SuperTrend по ценовому ряду старшего таймфрейма, а не по таймфрейму самого графика. |
| Управление ордерами | |
| Order Management Strategy |
|
| ATM Strategy Template Name | Используется только с методом управления ордерами ATM Strategy — точное название вашего собственного шаблона ATM-стратегии (как на изображении выше, это было бы template1). Должно совпадать с существующим шаблоном, иначе позиция не будет открыта. |
| On Opposite Signal |
Поведение стратегии при возникновении противоположного сигнала, когда позиция открыта.
|
| Enable Price Breakeven | Включает/выключает механизм безубытка по цене. |
| Breakeven Price Strategy |
|
| Breakeven Price Trigger | Доступно, если включён безубыток по цене — значение триггера, необходимое для переноса стоп-лосса в безубыток. |
| Enable Time Breakeven | Включает/выключает механизм безубытка по времени (в минутах). |
| Breakeven Time Trigger | Доступно, если включён безубыток по времени — значение триггера в минутах, необходимое для переноса стоп-лосса в безубыток. |
| StopLoss Strategy |
|
| TakeProfit Strategy |
|
| Target Risk Per Trade ($) | Максимальный риск в долларах на одну позицию — проверяется перед открытием сделки: если рассчитанный стоп-лосс не укладывается в этот лимит, сделка пропускается. |
| Max Allowed Risk Per ($) | Используется только с количеством Risk Adjusted — определяет, насколько реальный расчётный риск может отклоняться от Target Risk (поскольку точное совпадение почти никогда не достижимо). |
| Stop Loss Points | Доступно, если StopLoss Strategy установлена в Points. |
| Take Profit Currency | Сумма take-profit в долларах, используемая при стратегии take-profit Fixed Currency Value. Если она не используется, задайте высокое значение, чтобы оно не мешало стратегиям на основе соотношений. |
| Scale out % Qty at % Target | Закрывает процент количества позиции, как только цена достигает процента от цели по прибыли (при дробном результате округляется вниз — например, 50% от позиции в 5 лотов закроет 2 контракта). |
| Scale out at % Target | Процент от цели по прибыли, при достижении которого срабатывает механизм частичного закрытия. |
| Scale out % Qty | Процент количества, закрываемый механизмом частичного закрытия. |
| Take Profit Points | Доступно, если TakeProfit Strategy установлена в Points. |
| Параметры трейлинг-стопа | |
| Trailing Stop Strategy |
Доступно при методе управления ордерами Classic Trail Stop.
|
| Trailing Stop Trigger | Триггер (в пунктах или соотношении) для метода Classic Trail Stop. |
| Trail Amount | Величина (в пунктах или соотношении), на которую сопровождается стоп после срабатывания триггера. |
| Кнопки команд | |
Стратегия выводит ручные кнопки команд на панель Chart Trader — убедитесь, что она отображается на активном графике.![]() | |
| Arm/Disarm Buttons | Вручную включают/отключают вход в лонг или шорт — полезно при наличии направленного уклона (bias). |
| Close Position Button | Немедленно закрывает позицию по активному инструменту без перезапуска стратегии, которая продолжает искать новые сделки. |
| Increase / Decrease Qty Button | Изменяет количество текущей активной позиции на ±1 контракт. |
| Set Breakeven Button | Переводит стоп-лосс открытой позиции в безубыток, если это улучшит его. |
Отчёты о результатах
Прошлые результаты не гарантируют будущих результатов. Все результаты бэктестинга приведены исключительно для ознакомления.
- Комиссии учитываются по схеме комиссий лицензии NinjaTrader Lifetime для реалистичных результатов.
- Мы следуем официальному руководству NinjaTrader по точному бэктесту с внутрибарной детализацией, с использованием дополнительных потоков тиковых данных, и используем только рыночные ордера — никогда ордера в ожидании — как в режиме реального времени, так и в бэктесте.
Для этой стратегии пока не загружено ни одного отчёта о результатах.
Инструкции по загрузке и установке
Требования к лицензии
На automated-trading.ch вы можете либо оформить ежемесячную подписку для использования наших продуктов Premium, либо пользоваться бесплатными продуктами без подписки.
В обоих случаях вам нужно создать учётную запись, чтобы получить лицензию, которую можно использовать как для продуктов Premium, так и для бесплатных продуктов.
Чтобы получить лицензию, просто зарегистрируйтесь, а затем получите её на странице оплаты.
Скачать
Вы также можете скачать эту стратегию, а также любую другую стратегию или индикатор automated-trading.ch, в любое время из централизованной страницы загрузок.
Шаги установки
Часто задаваемые вопросы
Общие
Оплата
Скептики
Примечания к релизам
- Bug Fix: fix error when running without supertrend
- Bug fix: SuperTrend MA Type was always taking HMA, now takes selected parameter type; Fix SL & TP manual drag & drop issues; Fixed price breakeven logic when take profit strategy is Fixed Value; Removed "Dollar Cost Averaging" order management method; Supertrend added as Order Management method; Added New stoploss strategy: SuperTrend; Supertrend can run on Lower or Higher timeframe
- Bug Fix: Error when using ATM Strategy
- First Release of the strategy
