Fair Value Gap Scalper Strategy
Создано: 02 июн 2024
·
Обновлено: 05 апр 2025
Стратегия Fair Value Gap Scalper — это механическая стратегия уровня Premium для платформы NinjaTrader 8. Её можно использовать для прохождения оценочных челленджей проп-фирм.
Требования
Чтобы правильно использовать эту стратегию, вам понадобятся следующие компоненты.
- NinjaTrader 8, с любым типом лицензии. Нажмите здесь, чтобы скачать
- Учётная запись automated-trading.ch с действующей подпиской Premium
Важное предупреждение
Настоятельно рекомендуем никогда не запускать свои алгоритмические торговые системы на реальные деньги, заработанные с трудом. Всегда минимизируйте риски и запускайте стратегии на программах финансирования трейдеров, чтобы максимальная сумма, которую вы можете потерять, равнялась ежемесячной плате за подписку на эти программы.
Эта стратегия имеет два сетапа входа, оба основаны на совпадении Fair Value Gaps на старшем таймфрейме и на младшем таймфрейме.
Стратегия анализирует два таймфрейма одновременно и ищет точки входа на основе Fair Value Gaps, которые возникают на обоих. Оба таймфрейма должны быть одного типа — оба временные, оба диапазонные, оба тиковые и так далее. Стратегия работает на младшем (более быстром) таймфрейме, а старший (более медленный) таймфрейм выбирается как параметр — например, младшим таймфреймом может быть 30 секунд, а старшим — 5 минут.
Вот алгоритм, по которому стратегия находит точки входа:
- Стратегия ищет Fair Value Gap на старшем таймфрейме.
-
После того как этот FVG появился, стратегия реагирует на один из двух возможных исходов:
- Цена уходит от FVG старшего таймфрейма, не откатываясь к нему и не проверяя его повторно, — FVG считается недействительным, и стратегия продолжает искать другой FVG на старшем таймфрейме.
- Цена возвращается к FVG старшего таймфрейма, и затем на младшем таймфрейме возникает другой FVG — стратегия входит в лонг или в шорт в зависимости от типа этого FVG.
Вариант этого сетапа, режим входа HTF Pullback, не требует второго FVG на младшем таймфрейме для открытия сделки: как только цена откатывается и повторно проверяет FVG старшего таймфрейма, сделка открывается, как только свеча закрывается выше (для лонга) или ниже (для шорта) зоны FVG старшего таймфрейма.
Примеры настройки входа
Давайте посмотрим на примеры графиков. Эти примеры не призваны показать, что стратегия приносит прибыль: сделки отобраны вручную, чтобы наглядно проиллюстрировать точки входа без путаницы. Если вы запустите стратегию самостоятельно, то увидите, что многие из тех же сетапов приводят и к убыточным сделкам. Это реальность трейдинга, и цель — ожидаемая прибыльность в долгосрочной перспективе, несмотря на отдельные убытки.
Пример #1: вход HTF Pullback + LTF FVG на MES
Стратегия работает на 1-минутном таймфрейме на инструменте MES, старший таймфрейм установлен на 15 минут. После того как на старшем таймфрейме сформировался Fair Value Gap, стратегия ждёт FVG на младшем таймфрейме. Как только этот FVG на младшем таймфрейме закрывается, открывается лонг со стоп-лоссом на нижней границе FVG старшего таймфрейма и тейк-профитом 2:1. Позже цена вернулась на старший таймфрейм и повторно проверила зону, после чего появился ещё один FVG на младшем таймфрейме, подтвердивший второй вход.
Вот второй похожий пример:
Пример #2: только вход HTF Pullback на MES
Работа на MES на 1-минутном таймфрейме со старшим таймфреймом 15 минут и режимом входа HTF Pullback. Цена откатилась к ранее сформированному FVG старшего таймфрейма, затем свеча закрылась выше верхнего уровня FVG, что запустило вход в лонг. Стоп-лосс был установлен на нижнем уровне FVG, а тейк-профит — 2:1.
Пример #3: режим Invert на откате к FVG старшего таймфрейма
Этот пример демонстрирует логику инверсного входа. Как и в предыдущем примере, цена откатилась и повторно проверила FVG старшего таймфрейма и закрылась над ним бычьей свечой. Но с включённым параметром Invert Entries стратегия открыла шорт вместо лонга, а уровни стоп-лосса и тейк-профита были инвертированы вместе с ним: тейк-профит был установлен на нижней границе FVG, а стоп-лосс рассчитан с соотношением выигрыша и проигрыша 1:1. Такая инверсная логика полезна на нестабильных рынках.
Пример #4: нет входа, цена уходит от FVG старшего таймфрейма
Этот пример иллюстрирует случай, когда после формирования FVG на старшем таймфрейме цена уходит от него без отката и повторной проверки — FVG помечается как недействительный, и сделка не открывается.
Возможности
Стратегия FVG Scalper обладает набором уникальных возможностей:
- Отложенные ордера не выставляются — только рыночные ордера
- Полностью автоматическая стратегия, которую можно масштабировать на несколько экземпляров
- Точные возможности бэктестинга по официальным рекомендациям NinjaTrader, позволяющие точно тестировать входы и выходы на уровне тиков
- Собственная надёжная библиотека управления ордерами, устойчивая к потере соединения и одинаково хорошо работающая со счетами Rithmic и брокерскими счетами NinjaTrader
Динамический объём и управление рисками
Как и во всех наших стратегиях, здесь реализованы два метода определения объёма открытых позиций:
- Fixed Quantity: используется одинаковый объём для каждой позиции. Если стоп-лосс меняется от позиции к позиции, суммы выигрыша и проигрыша тоже будут различаться.
- Dynamic Risk-Adjusted Quantity: объём каждой позиции рассчитывается по её стоп-лоссу, максимальному риску (в $) на одну позицию и максимально допустимому объёму. Это даёт одинаковые суммы выигрыша и проигрыша по всем позициям независимо от ширины стоп-лосса.
Управление позицией
Как и во всех наших стратегиях, здесь реализовано несколько методов управления позицией:
- ATM Strategy: полностью передайте управление позицией вашей собственной ATM-стратегии, выбрав её из выпадающего списка.
- Dollar Cost Averaging (Grid): увеличивает объём позиции по мере движения цены против неё, что приближает среднюю цену входа к текущей цене и позволяет закрыть позицию в безубыток при откате.
- Classical Trailing Stop: подтягивает стоп-лосс на основе триггера и величины трейлинга.
Стратегия также позволяет задавать стоп-лосс на основе нескольких стратегий, а тейк-профит — на основе соотношения. Подробности см. в разделе «Параметры».
Управление счётом
Стратегия реализует дневные триггеры остановки торговли по количеству чистых прибыльных позиций, количеству чистых убыточных позиций или по целевой чистой реализованной прибыли или убытку.
Параметры
Мы стараемся сводить количество параметров к минимуму — открыты только самые важные.
| General | |
| Execute Historical Trades | Включает исполнение сделок, когда стратегия работает в режимах Historical, Backtest или Optimization. При работе в Live параметр следует отключить. |
| Daily TakeProfit Target | Стратегия прекращает торговлю на день, как только достигнута эта дневная сумма тейк-профита. При значении 0 игнорируется. |
| Daily StopLoss Limit | Стратегия прекращает торговлю на день, как только достигнут дневной лимит убытка (указывается положительным значением — например, 300 означает остановку торговли, когда реализованный PnL ≤ -$300). При значении 0 игнорируется. |
| Stop @ Daily Winning Count | Прекращает торговлю на день, когда количество чистых прибыльных сделок достигает этого значения. При значении 0 игнорируется. |
| Stop @ Daily Losing Count | Прекращает торговлю на день, когда количество чистых убыточных сделок достигает этого значения. При значении 0 игнорируется. |
| Render Opacity (1-100) | Непрозрачность, используемая для отрисовки объектов на графике. Рекомендуется значение 20. |
| Execute on Different Instrument | Исполняет сделки на инструменте, отличном от инструмента активного графика, — например, логика рассчитывается на Minis, а исполнение идёт на Micros для лучшего контроля риска. Весь расчёт риска выполняется на инструменте исполнения, а сделки на другом инструменте на графике не отображаются. |
| Execution Instrument | Выберите из списка Micros, доступных в вашем подключении NinjaTrader, — на этом инструменте будут исполняться сделки. В этом случае исторические и live-сделки на графике не отображаются. |
| Market Structure | |
| Higher TimeFrame | Выбирает старший таймфрейм, на котором выполняется анализ сетапов входа. Он должен быть выше таймфрейма активного графика и того же типа — например, нельзя выбрать тиковый старший таймфрейм, если график работает на минутном таймфрейме. |
| Higher TimeFrame Period | Задаёт период старшего таймфрейма. |
| Draw Higher Timeframe Candles | Включает отрисовку свечей старшего таймфрейма поверх активного графика. |
| Swings Period | Также известен как Swing Sensitivity. После закрытия каждой свечи может быть обнаружен свинг (более высокий максимум, более высокий минимум, более низкий максимум или более низкий минимум), а следующая свеча может отменить его, сформировав новый свинг того же типа. Этот параметр задаёт, сколько свечей должно разделять два свинга одного типа. Увеличение значения уменьшает общее количество обнаруживаемых свингов, уменьшение — увеличивает. Типичные значения: 3, 6 или 12. |
| Ignore FVG Older Than (X) Days | Исключает из логики входа FVG старше указанного количества дней. Такие FVG по-прежнему отображаются на графике, но сделки по ним не открываются. |
| Entry Setup | |
| Time Zone |
Часовой пояс, используемый для параметра Trade Time ниже. Фьючерсные рынки работают по восточному времени США (EST), поэтому этот параметр позволяет задавать торговый интервал относительно часового пояса вашего компьютера.
|
| Trade Time |
Задаёт временные интервалы, в которые стратегия может выставлять сделки. Примеры:
|
| Quantity Strategy |
|
| Max Qty | Максимально допустимый объём при выборе Risk Adjusted — полезно, поскольку некоторые проп-фирмы устанавливают ограничения на объём ордеров, нарушение которых может привести к аннулированию счёта. |
| Invert Entries | Инвертирует входы: лонг становится шортом и наоборот. Стоп-лосс, тейк-профит и риск сначала рассчитываются без инверсии, а затем тип сделки инвертируется на последнем шаге — поэтому стоп-лосс становится тейк-профитом и наоборот, а риск инвертируется соответственно (например, тейк-профит 2:1 превращается в тейк-профит 1:2, что увеличивает риск). Учитывайте это перед включением. |
| Long/Short Entry Mode |
Полезно, если у вас уже есть направленный дневной bias и вы хотите ограничить торговлю одним направлением.
|
| Trade Entry Mode |
|
| Order Qty | Используется только когда Quantity Strategy установлена в Fixed — фиксированный объём на сделку (и на каждое увеличение объёма, если механизм управления ордерами наращивает позицию). Обычно 1 или 2. |
| Higher TF Invalidate Setup Points | На сколько пунктов цена должна уйти от FVG старшего таймфрейма, чтобы сделать текущий активный сетап входа недействительным и сбросить его. |
| Previous Swing Breakout Filter | Включает фильтр входа, сравнивающий текущую цену с максимумом/минимумом предыдущей свечи старшего таймфрейма: для лонга цена должна быть выше него, для шорта — ниже. Это может улучшить качество сделок, поскольку торговля ведётся только в направлении пробоя на старшем таймфрейме. |
| Fair Value Gap | |
| Type of Min. Gap for HTF |
Единица измерения минимального гэпа для старшего таймфрейма.
|
| Min. Gap for HTF | Минимальный гэп, при котором FVG на старшем таймфрейме учитывается, — например, при значении 10 и типе Points FVG с гэпом меньше 10 пунктов отфильтровываются. |
| Max. Gap (Points) for HTF | Максимальный гэп, при котором FVG на старшем таймфрейме учитывается, — например, при значении 50 FVG с гэпом больше 50 пунктов отфильтровываются. |
| Type of Min. Gap for LTF |
Единица измерения минимального гэпа для младшего таймфрейма.
|
| Min. Gap for LTF | Минимальный гэп, при котором FVG на младшем таймфрейме учитывается, — та же логика фильтрации, что и для старшего таймфрейма. |
| Max. Gap (Points) for LTF | Максимальный гэп, при котором FVG на младшем таймфрейме учитывается, — та же логика фильтрации, что и для старшего таймфрейма. |
| Order Management | |
| 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 |
|
| Target Risk Per Trade ($) | Максимальный риск в долларах на одну позицию — проверяется перед открытием сделки: если рассчитанный стоп-лосс не укладывается в этот лимит, сделка пропускается. Также используется для расчёта объёма, когда стратегия объёма динамическая. |
| Max Allowed Risk Per ($) | Используется только с Risk Adjusted объёмом — определяет, насколько фактический расчётный риск может отклоняться от целевого риска (точное совпадение почти никогда невозможно; например, цель $250 может дать объём 3 и реальный риск $257). |
| Stop Loss Points | Доступен, когда стратегия стоп-лосса установлена в Points. |
| Take Profit Currency | Сумма тейк-профита в долларах, используется при выборе стратегии Fixed Currency Value. |
| Take Profit Points | Доступен, когда стратегия тейк-профита установлена в Points. |
| Scale out % Qty at % Target | Закрывает процент объёма позиции, как только цена достигает процента от целевой прибыли (при дробном результате округляется вниз — например, 50% от позиции в 5 контрактов закроют 2 контракта). |
| Scale out at % Target | Процент от целевой прибыли, при котором срабатывает частичное закрытие. |
| Scale out % Qty | Процент объёма, закрываемый при частичном закрытии. |
| DCA (Grid) Parameters | |
| Breakeven Profit Shift | Используется с методом управления позицией DCA — добавляет небольшую прибыль к определению безубытка, что полезно для покрытия комиссий при закрытии сетки в безубыток. |
| Grid Size to Breakeven | Используется с методом управления позицией DCA — количество увеличений объёма, необходимое до того, как позицию можно закрыть в безубыток. |
| Min Grid Gap (Point) | Используется с методом управления позицией DCA — минимальный интервал в пунктах между двумя ордерами сетки. |
| Bar Close Trigger | Используется с методом управления позицией DCA — ордера сетки открываются по закрытию свечи в направлении сделки. |
| Trailing Stop Parameters | |
| Trailing Stop Strategy |
Используется с методом управления позицией Classic Trail Stop.
|
| Trailing Stop Trigger | Используется с методом Classic Trail Stop — триггер (в пунктах или в соотношении). |
| Trail Amount | Используется с методом Classic Trail Stop — величина (в пунктах или в соотношении), на которую подтягивается стоп-лосс после срабатывания триггера. |
| Command Buttons | |
Стратегия выводит на панель Chart Trader ручные командные кнопки — убедитесь, что эта панель отображается на вашем активном графике.![]() | |
| Arm/Disarm Buttons | Вручную включают/выключают вход в лонг или шорт — полезно, если у вас есть направленный bias или уверенность в направлении. |
| Close Position Button | Немедленно закрывает позицию по активному инструменту без перезапуска стратегии, которая после этого продолжает искать новые сделки. |
| Increase Qty Button | Увеличивает объём текущей активной позиции на величину, заданную в Order Qty, — полезно для ручного усреднения или для добавления к прибыльной позиции. |
| Set Breakeven Button | Переносит стоп-лосс открытой позиции в безубыток, если это улучшит его. |
Отчёты о результатах
Прошлые результаты не гарантируют будущих результатов. Все результаты бэктестинга приведены исключительно для ознакомления.
Для этой стратегии пока не загружено ни одного отчёта о результатах.
Инструкции по загрузке и установке
Требования к лицензии
На automated-trading.ch вы можете либо оформить ежемесячную подписку для использования наших продуктов Premium, либо пользоваться бесплатными продуктами без подписки.
В обоих случаях вам нужно создать учётную запись, чтобы получить лицензию, которую можно использовать как для продуктов Premium, так и для бесплатных продуктов.
Чтобы получить лицензию, просто зарегистрируйтесь, а затем получите её на странице оплаты.
Скачать
Вы также можете скачать эту стратегию, а также любую другую стратегию или индикатор automated-trading.ch, в любое время из централизованной страницы загрузок.
Шаги установки
Часто задаваемые вопросы
Общие
Оплата
Скептики
Примечания к релизам
- Bug Fix: Error when using ATM Strategy
- Fixed Entry bug making entry in only one direction; Various code optimizations; Added Decrease quantity button
- Complete makeover with new parameters added/removed
- Bug Fix on bearish FVG detection
- Added possibility to execute trades on micro instruments
- Fixed Take Profit value when in Points mode; Fixed very critical error on short FVG+FVG entries; Added FVG filter as new parameter
- Fixed installation issue
- First Release of the strategy
