Схема стратегии с защитными заявками, собранными вручную
Эта схема открывает или полностью разворачивает позицию по подтверждённым пересечениям EMA(14)/EMA(50) и строит защиту из явных кубиков жизненного цикла заявки. Принятое исполнение входа фиксирует оба защитных уровня. После паузы в 100 свечей один раз регистрируется лимитный тейк-профит от цены входа; последующие перестановки сохраняют ту же целевую цену, а стоп или допустимый разворот сначала отправляет запрос на отмену рабочего тейка, затем без ожидания подтверждения отмены запускает рыночное изменение позиции.
Обзор стратегии
- Завершённые пятиминутные свечи поступают в быструю EMA 14 и медленную EMA 50, выдающие только сформированные значения. Crossing создаёт событие вверх, когда быстрая EMA поднимается над медленной, и событие вниз, когда опускается ниже неё.
- Пересечение вверх разрешает действие только при Position <= 0, а пересечение вниз — только при Position >= 0. Сравнения позиции направляют сигнал из нулевой позиции в одну рыночную заявку фиксированного Volume. При встречной позиции ветка разворота последовательно запускает две рыночные заявки того же Volume: первая закрывает существующую сторону, а вторая сразу открывает новую без ожидания исполнения первой.
- Каждое новое исполнение из Strategy trades сбрасывает счётчик в 0 и заново запускает паузу. Ровно следующие 100 завершённых свечей блокируют новые входы, регистрацию и перестановку тейка, а также проверки стопа; обработка возобновляется на 101-й свече, если другое исполнение не запустит окно заново.
- Когда пауза завершена, одноразовый флаг регистрирует тейк фиксированного Volume. Готовность нужной стороны стакана не требуется для первой регистрации: она разрешает только последующие перестановки, тактируемые завершёнными свечами. Для лонга это лимитная продажа по Entry Price * (1 + Take Profit fraction), для шорта — лимитная покупка по Entry Price * (1 - Take Profit fraction).
- Combination только объединяет заявку первичной регистрации и клоны перестановок в один поток заявок. Последнюю переданную заявку запоминают подключённые входы replaceOrder.order и cancelOrder.order. Ветка стакана намеренно упрощена: BestBid и BestAsk только разрешают последующие перестановки по такту завершённых свечей и той же фиксированной цели, но никогда не сдвигают её. Стоп или допустимый разворот сначала запрашивает отмену тейка, затем без ожидания подтверждения запускает рыночное действие.
Правила входа и выхода
- Вход в лонг: При подтверждённом пересечении EMA вверх, если Position <= 0 и пауза завершена, из нулевой позиции схема отправляет одну рыночную покупку Volume. Из шорта она сначала запрашивает отмену тейка шорта, затем запускает две рыночные покупки того же Volume: первая закрывает шорт, а вторая сразу открывает лонг без ожидания закрывающего исполнения. Entry Price берётся только из исполнения входа из нулевой позиции или из второй, открывающей заявки разворота.
- Вход в шорт: При подтверждённом пересечении EMA вниз, если Position >= 0 и пауза завершена, из нулевой позиции схема отправляет одну рыночную продажу Volume. Из лонга она сначала запрашивает отмену тейка лонга, затем запускает две рыночные продажи того же Volume: первая закрывает лонг, а вторая сразу открывает шорт без ожидания закрывающего исполнения. Entry Price берётся только из исполнения входа из нулевой позиции или из второй, открывающей заявки разворота.
- Выход: После паузы ветка лонга удерживает одну лимитную продажу фиксированного Volume по Entry Price * (1 + 0.006), а ветка шорта — одну лимитную покупку фиксированного Volume по Entry Price * (1 - 0.006). Завершённое закрытие на уровне или ниже Entry Price * (1 - 0.003) останавливает лонг; закрытие на уровне или выше Entry Price * (1 + 0.003) останавливает шорт. Стоп сначала запрашивает отмену рабочего тейка, затем без ожидания подтверждения отправляет одну встречную рыночную заявку того же фиксированного Volume. Допустимое встречное пересечение использует то же правило «запрос, затем запуск» перед разворотом из двух заявок.
Параметры
| Параметр | По умолчанию | Описание |
|---|---|---|
| Candles | 00:05:00 | Пятиминутный таймфрейм; только завершённые свечи запускают EMA-сигналы, отсчёт паузы, проверки стопа и такт жизненного цикла заявки. |
| Fast EMA Length | 14 | Длина быстрой ExponentialMovingAverage; выдаются только сформированные значения. |
| Slow EMA Length | 50 | Длина медленной ExponentialMovingAverage; выдаются только сформированные значения. |
| Take Profit fraction | 0.006 | Благоприятная доля от Entry Price. Значение 0.006 равно 0.6% и даёт соотношение стопа к тейку 1:2. |
| Stop fraction | 0.003 | Неблагоприятная доля от Entry Price. Значение 0.003 равно 0.3%. |
| Volume | 1 | Фиксированный объём каждой заявки входа, регистрации и перестановки тейка, а также рыночного стопа. Разворот отправляет две отдельные рыночные заявки этого же Volume: сначала закрытие, затем открытие. |
| Cooldown | 100 | Число последующих завершённых свечей, заблокированных после каждого исполнения Strategy trades. Каждое новое исполнение сбрасывает счётчик в 0; обработка возобновляется на 101-й свече, если более позднее исполнение не запустит окно заново. |
Детали диаграммы
- Кубик Свечи выдаёт только завершённые пятиминутные свечи. Конвертер цены закрытия и два кубика Индикатор, ограниченные сформированными значениями, предоставляют закрытие, ExponentialMovingAverage 14 и ExponentialMovingAverage 50.
- Пересечение, Позиция и Сравнение формируют зеркальные входные гейты Position <= 0 и Position >= 0.
- Отдельные кубики Изменение позиции реализуют OpenPosition из нулевой позиции и NoCondition для закрывающей и открывающей частей разворотов. Каждый кубик получает один и тот же фиксированный Volume. Закрывающая часть запускается первой, но открывающая следует сразу без ожидания её исполнения, поэтому асинхронное выполнение может дать гонку. Кубики Formula рассчитывают состояние паузы, тейк и стоп, но никогда не объём заявки.
- Сделки стратегии используются только для сброса паузы после каждого собственного исполнения и вывода сделки на график. Только выход сделки кубика входа из нулевой позиции и выход сделки второй, открывающей части разворота передают принятую Trade.Price в соответствующее состояние защиты лонга или шорта; первое, закрывающее исполнение разворота исключено.
- Стакан предоставляет готовность BestBid и BestAsk. Ни одна котировка не входит в формулы цены тейка: цели лонга и шорта остаются привязаны к Entry Price.
- Формулы цен лонга и шорта поступают в соответствующие кубики лимитной Регистрации заявки. Флаг разрешает одну регистрацию после паузы, а каждая последующая перестановка повторно использует ту же рассчитанную цену и тот же фиксированный Volume.
- Заявка первичной регистрации и каждый клон перестановки поступают в шину Combination
, которая только объединяет и пересылает их. Последнюю переданную заявку запоминают подключённые входы replaceOrder.order и входы cancelOrder.order кубиков Отмена заявки. Пока перерегистрация ещё выполняется, отмена поэтому может обратиться к ссылке на ранее переданную заявку. При стопе или развороте сначала отправляется запрос отмены, а сразу после него без ожидания подтверждения запускается рыночный стоп фиксированного Volume или две фиксированные заявки разворота; атомарность не гарантируется.
Использование
Импортируйте файл .json в Designer, прогоните схему на исторических данных в тестере, затем подстройте параметры или сами кубики под свой инструмент, прежде чем торговать вживую.