Candle Range Theory (CRT) Strategy

Создано: 16 мар 2025 · Обновлено: 05 сен 2025

Стратегия Candle Range Theory (CRT) — это Premium механическая стратегия для платформы NinjaTrader 8. Её можно использовать для прохождения оценочных челленджей проп-фирм.

Требования

Для корректной работы со стратегией вам понадобятся следующие требования.


Важное предупреждение

Настоятельно рекомендуем никогда не запускать свои алгоритмические торговые системы на реальные деньги, заработанные с трудом. Всегда минимизируйте риски и запускайте стратегии на программах финансирования трейдеров, чтобы максимальная сумма, которую вы можете потерять, равнялась ежемесячной плате за подписку на эти программы.

Примеры настройки входа

Эта стратегия имеет один сетап входа, основанный на методологии Candle Range Theory (CRT).

Если коротко: модель входа CRT — это вероятностная модель входа с заданным соотношением риска и прибыли. Она основана на анализе свечного паттерна на старшем таймфрейме и поиске подтверждения входа на младшем таймфрейме.

На старшем таймфрейме мы ищем свечной паттерн CRT — последовательность, соответствующую структуре Accumulation, Manipulation, Distribution, которая формируется тремя свечами:

  • Первая свеча — длинная свеча накопления (accumulation).
  • Вторая свеча — свеча манипуляции (manipulation): цена образует фитиль, выходящий за максимум предыдущей свечи, но затем возвращается вниз и закрывается внутри тела предыдущей свечи.
  • Третья свеча — свеча распределения (distribution): цена пробивает нижний фитиль второй свечи и движется внутрь (и за пределы) минимума первой свечи.
Модель входа CRT — последовательность 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-минутный график / старший таймфрейм 1 час — пример
Нажмите, чтобы увеличить
MES, 1-минутный график — Take Profit на 2x от свечи CRT

Стратегия поддерживает несколько методов take-profit и stop-loss. По умолчанию CRT take-profit устанавливается на максимум/минимум фитиля первой (накопительной) свечи, но его можно расширить до кратного этому диапазону — этот пример иллюстрирует коэффициент 2x. Маркер 1X показывает первый уровень take-profit, а 2X показывает, где вместо него был установлен уровень take-profit на 2x, что в долгосрочной перспективе повышает ожидаемую прибыльность.

Пример Take Profit на 2x от свечи CRT
Нажмите, чтобы увеличить

Возможности

Стратегия 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), поэтому этот параметр позволяет задавать торговый интервал относительно часового пояса вашего компьютера.
  • EST, CET или Local Time
Trade Time Временные интервалы, в течение которых стратегия может выставлять сделки. Примеры:
  • Часовой пояс EST, торговля только в RTH (регулярные торговые часы): 09:30-16:15
  • Компьютер в швейцарском местном времени, торговля в RTH: 15:30-22:15
  • Часовой пояс EST, торговля и в RTH, и в ETH (расширенные торговые часы) с перерывами, чтобы избежать волатильных периодов: 00:01-08:00,09:55-15:55,18:01-23:59
Два момента, на которые стоит обратить внимание в последнем примере: интервалы должны быть перечислены по возрастанию, хотя 18:01-23:59 фактически является первым интервалом сессии нового дня, а интервал обрывается в полночь, чтобы избежать проблем при переходе на новый день.
Quantity Strategy
  • Fixed Quantity: фиксированное количество на сделку; пропускается, если расчётный риск превышает Target Risk Per Trade ($)
  • Risk Adjusted: динамический размер контракта, рассчитываемый по цене стоп-лосса и Target Risk Per Trade ($)
Max QtyМаксимально допустимое количество при выбранном Risk Adjusted — полезно, так как некоторые проп-фирмы накладывают ограничения на количество ордера, которые могут сделать счёт недействительным.
Long/Short Entry Mode Полезно, если у вас уже есть направленный дневной уклон (bias) и вы хотите ограничить торговлю одним направлением.
  • Long: открываются только сделки в лонг
  • Short: открываются только сделки в шорт
  • Long & Short: торгуются оба направления
Trade Entry Mode Режим входа после обнаружения действительной последовательности CRT.
  • Immediate: открывает позицию сразу, как только цена пробивает максимум/минимум фитиля первой свечи CRT минимум на один тик
  • FVG: ожидает формирования Fair Value Gap, пока цена пробивает максимум/минимум фитиля первой свечи 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
  • ATR: расчёт на основе ATR
  • Adaptive: на основе цен закрытия/максимума/минимума свечи
Period / Multiplier / Moving Avg. Type / SmoothСтандартные параметры расчёта SuperTrend — период, множитель полосы (чем выше значение, тем шире полоса), тип скользящей средней и период сглаживания.
Run SuperTrend on Higher TFРассчитывает индикатор SuperTrend по ценовому ряду старшего таймфрейма, а не по таймфрейму самого графика.
Управление ордерами
Order Management Strategy
  • ATM Strategy: полностью передаёт управление позицией шаблону ATM-стратегии NinjaTrader на ваш выбор, доступному из панели Chart Trader
  • SuperTrend: закрывает сделки с помощью индикатора SuperTrend — стоп-лосс устанавливается на один тик выше/ниже фитиля бара, который пробил уровень supertrend
  • Classic Trail Stop: сопровождает стоп-лосс на основе триггера и величины трейлинга (см. «Параметры трейлинг-стопа» ниже)
  • None: вместо этого используется стоп-лосс, заданный через Target Risk Per Trade ($)
ATM-стратегия, открываемая из панели Chart Trader
ATM Strategy Template NameИспользуется только с методом управления ордерами ATM Strategy — точное название вашего собственного шаблона ATM-стратегии (как на изображении выше, это было бы template1). Должно совпадать с существующим шаблоном, иначе позиция не будет открыта.
On Opposite Signal Поведение стратегии при возникновении противоположного сигнала, когда позиция открыта.
  • Breakeven: переводит стоп-лосс в безубыток
  • Close Position: немедленно закрывает позицию
  • DoNothing: никаких действий не предпринимается
Enable Price BreakevenВключает/выключает механизм безубытка по цене.
Breakeven Price Strategy
  • Points: безубыток срабатывает по пунктам
  • Percentage: безубыток срабатывает по проценту достигнутого take-profit
Breakeven Price TriggerДоступно, если включён безубыток по цене — значение триггера, необходимое для переноса стоп-лосса в безубыток.
Enable Time BreakevenВключает/выключает механизм безубытка по времени (в минутах).
Breakeven Time TriggerДоступно, если включён безубыток по времени — значение триггера в минутах, необходимое для переноса стоп-лосса в безубыток.
StopLoss Strategy
  • CRT Candle: стоп-лосс устанавливается на минимальный фитиль свечи CRT для лонг-входов и на максимальный фитиль — для шорт-входов
  • Fixed Currency Value: используется только Target Risk Per Trade ($)
  • Points: фиксированное количество пунктов от цены входа
  • SuperTrend: устанавливается по уровням индикатора SuperTrend
TakeProfit Strategy
  • CRT Candle / 1.5x CRT Candle / 2x CRT Candle / 3x CRT Candle: take-profit устанавливается на кратное (1x, 1.5x, 2x или 3x) диапазона первой свечи CRT от цены входа
  • Fixed Currency Value: на основе фиксированного значения параметра Take Profit Currency
  • Points: фиксированное количество пунктов от цены входа
  • Фиксированные соотношения выигрыша и проигрыша: 1:1, 0.5:1, 1.5:1, 2:1, 3:1, 4:1, 5:1, 6:1 — рассчитываются по цене стоп-лосса при данном соотношении
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.
  • Points: триггер и величина трейлинга рассчитываются в пунктах от цены входа
  • Ratio: рассчитываются как соотношение от значения стоп-лосса и зеркально отражаются на выигрышной стороне
Trailing Stop TriggerТриггер (в пунктах или соотношении) для метода Classic Trail Stop.
Trail AmountВеличина (в пунктах или соотношении), на которую сопровождается стоп после срабатывания триггера.
Кнопки команд
Стратегия выводит ручные кнопки команд на панель Chart Trader — убедитесь, что она отображается на активном графике.Кнопки команд на панели 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, так и для бесплатных продуктов.

Чтобы получить лицензию, просто зарегистрируйтесь, а затем получите её на странице оплаты.

Важно: Это продукт уровня Premium. Его можно запускать в режимах Backtest, Playback и Optimization бесплатно; для запуска в реальном времени требуется действующая подписка Premium.
Скачать
Войдите, чтобы скачать этот файл.
Последняя версия v1.2.0.1 · Опубликовано 1 год назад
Количество загрузок этого файла: 458. Последняя загрузка: 5 часов назад.

Вы также можете скачать эту стратегию, а также любую другую стратегию или индикатор automated-trading.ch, в любое время из централизованной страницы загрузок.

Шаги установки
1
Импортируйте загруженный .zip-файл в NinjaTrader с помощью пункта меню Import NinjaScript.
Нажмите, чтобы увеличить
2
Откройте новое окно графика, убедившись, что флажок Tick Replay установлен.
Нажмите, чтобы увеличить
3
Если вы его не видите, перейдите в Tools → Options → Market Data и включите Show Tick Replay.
Нажмите, чтобы увеличить
4
Щёлкните правой кнопкой мыши по графику и выберите Strategies (или нажмите Ctrl+S), чтобы открыть диалог Add New Strategy, и убедитесь, что установлен флажок Enabled у стратегии.
Добавление стратегии CRT на график
Нажмите, чтобы увеличить
5
После добавления стратегия сначала работает на исторических данных графика, затем переключается в режим Real-Time и добавляет текстовое поле лицензии на панель Chart Trader — убедитесь, что эта панель отображается.
Нажмите, чтобы увеличить
6
Вставьте свою лицензию (её можно найти на странице биллинга) в текстовое поле и нажмите Check License.
Нажмите, чтобы увеличить
7
После проверки кнопка «Check License» становится зелёной, а рядом появляется дата следующей проверки — повторять её нужно только после этой даты.
Нажмите, чтобы увеличить
8
Без активной подписки стратегию всё равно можно запускать в режимах Playback и Historical, чтобы сначала протестировать её.

Часто задаваемые вопросы

Общие

VPS — хорошее решение, но не обязательное: для большинства пользователей достаточно недорогого Windows VPS.

Да, если каждый экземпляр работает с уникальным инструментом. NinjaTrader объединяет ордера в одну позицию на инструмент в рамках счёта, поэтому два экземпляра на одном инструменте работать не будут.

Можно, но обычно лучшим решением является прямой запуск нескольких экземпляров стратегии: лицензия допускает неограниченное количество экземпляров на нескольких компьютерах.

Да — стратегия создана именно для этого и без проблем работает с Rithmic, брокером NinjaTrader, Tradovate или любым другим провайдером, подключённым к вашей платформе NinjaTrader.

Она полностью автоматическая, но кнопки управления также позволяют вручную управлять сделками, если вы предпочитаете полуавтоматический режим.

Автоматические стратегии торгуют круглосуточно, исполняют сделки быстрее и точнее, исключают психологию и эмоции из уравнения и могут масштабироваться до десятков или сотен экземпляров. Это действительно пассивный доход, а не очередная изматывающая ручная работа.

Да — если у вас есть идея, которая может улучшить стратегию, свяжитесь с нами через страницу контактов.

Нет, исходный код защищён по соображениям авторского права.
Оплата

Да, вы можете отменить подписку на странице учётной записи в любое время, чтобы не допустить будущих платежей. Мы не можем вернуть деньги за неиспользованную часть подписки, однако вы сможете пользоваться ей до конца расчётного периода.

Нет, пробного тарифного плана мы не предлагаем, но вы можете скачать продукт и протестировать его в режимах backtest и playback до оформления подписки.

Мы не предоставляем полный или частичный возврат средств, однако вы можете в любое время отменить подписку, чтобы прекратить будущие платежи.
Скептики

Я профессионально занимаюсь разработкой программного обеспечения с 2010 года и создаю автоматические торговые стратегии с 2012 года — как для себя, так и для клиентов по всему миру. Я также работал в сфере финансов и инвестиционного банкинга. Я не маркетолог, и разработку стратегий я не передаю на аутсорсинг.

Я её не продаю, а сдаю в аренду как дополнительный источник дохода наряду с диверсификацией собственной торговли. Стратегия полностью механическая, в ней нет скрытого количественного преимущества, которое тает по мере того, как ею пользуется всё больше людей.

Отложенные (лимитные) ордера обеспечивают лучшее исполнение по цене и некоторую защиту от сбоев связи, но их могут отклонить при высокой волатильности, они требуют активного сопровождения и видны брокеру. Рыночные ордера гарантируют исполнение независимо от волатильности, невидимы для брокера до отправки и исполняются быстрее. Их единственный реальный недостаток в том, что при потере соединения отправить их вообще нельзя. Ордера MIT (market-if-touched) в NinjaTrader — надёжная альтернатива, если вам нужно именно поведение отложенных ордеров.

Мы следуем официальному руководству NinjaTrader по точному бэктестингу с внутрибарной детализацией, используя дополнительные серии тиковых данных. Не верьте нам на слово: запускайте бэктест в конце каждого торгового дня и сравнивайте его с реальными сделками стратегии за тот же день.

Примечания к релизам

  • 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
discord
Присоединяйтесь к нашему сообществу в Discord
Есть вопросы, отзывы или просто хотите пообщаться с другими трейдерами? Заходите.
Присоединиться к Discord
Основные сведения
Платформа NinjaTrader 8
Категория Стратегия
Требуемый план Premium
Последняя версия v1.2.0.1
Последнее обновление 1 год назад
Загрузки 458