Recoil Retrace Engine
- Эксперты
-
Syarief Azman Bin Rosli
Здравствуйте и добро пожаловать в мой официальный профиль MQL5!
Меня зовут Шариф Азман Бин Росли (Syarief Azman Bin Rosli). Я разработчик алгоритмических торговых систем и количественный инженер с более чем десятилетним опытом создания надежных решений для MetaTrader 5 и MetaTrader 4. - Версия: 1.1
- Обновлено: 31 октября 2026
- Активации: 5
Recoil Retrace Engine - советник для MetaTrader 4, который торгует откат после сильного движения. Он находит импульсную ногу, прошедшую от подтверждённого свинга кратное ATR расстояние, ждёт отката цены в зону коррекции (по умолчанию 38,2-61,8 %), входит по направлению ноги, фиксирует часть на экстремуме и ведёт остаток к цели расширения. Одна позиция на символ и magic number; без сетки, мартингейла, усреднения и хеджирования.
Быстрый старт
- Установите советник на один график (рекомендуется H1, H4 и D1 тоже работают) и включите AutoTrading и "Allow live trading".
- Сначала оставьте значения по умолчанию: зона 38,2-61,8, Entry Trigger = Rejection close, риск 1 % на сделку.
- Панель показывает SCANNING, пока нет подходящей ноги, затем ARMED, IN POCKET и IN TRADE.
- Быстрая проверка: визуальный прогон в тестере на EURUSD H1 за два месяца рисует каждую ногу, зону и цель.
- Push: укажите MetaQuotes ID в Сервис > Настройки > Уведомления и установите Push Notifications = true.
Как торгует
Нога: минимум (максимум) свинга - бар, чей минимум (максимум) выходит за Swing Strength баров с каждой стороны; он подтверждён, когда эти бары закрыты. Для покупки начало - последний подтверждённый минимум в пределах Swing Lookback баров, а экстремум - наивысший максимум после него (для продаж зеркально). Нога подходит, если она не меньше Min Impulse Size x ATR (ATR Period, последний закрытый бар) и заняла не больше Max Impulse Bars баров. Если подходят обе стороны, выбирается большая нога. Уже отторгованная нога больше не взводится.
Трендовый фильтр: при Higher-Timeframe Trend Filter покупки разрешены, только пока последний закрытый бар Trend Timeframe закрывается выше своей EMA (Trend EMA Period), продажи - ниже. Current = next higher: M1 в M5, M5 в M15, M15 в H1, M30 и H1 в H4, H4 в D1, D1 в W1, W1 и MN1 в MN1. При недостатке истории на этом таймфрейме фильтр нейтрален.
Откат: измеряется от экстремума (0 %) к началу (100 %). Зона лежит между Pocket Near Edge и Pocket Far Edge. Новый экстремум до входа удлиняет ногу и сдвигает зону. Сетап завершается INVALIDATED, когда бар закрывается за Invalidation Level, и EXPIRED, когда после экстремума закрылось больше Setup Expiry баров.
Entry Trigger:
- Rejection close: закрытый бар зашёл в зону, закрылся по направлению ноги (бычья свеча для покупки), не дальше Pocket Far Edge и в половине своего диапазона, дальней от зоны. Рыночный ордер на открытии следующего бара; если GATE в этот момент закрыт (например, сессия открывается позже), попытки повторяются до конца этого бара.
- Pocket touch: рыночный ордер, как только цена касается Pocket Near Edge. Самый быстрый, без подтверждения.
- Resume break: после бара, коснувшегося зоны, покупка, когда Ask пробивает его максимум (продажа, когда Bid пробивает минимум). Каждый новый касающийся бар сдвигает триггер.
Сетап пропускается, если расстояние до TP1 меньше Min Reward:Risk to TP1 x расстояние стопа (SKIPPED: reward:risk, повтор на следующих барах), если TP2 ближе минимальной дистанции брокера (SKIPPED: target too close) или пока GATE не OPEN.
Выходы:
- Stop Loss Placement: Beyond invalidation level (Invalidation Level минус Stop Buffer x ATR для покупок, плюс для продаж) или Beyond leg origin (начало минус тот же буфер). При необходимости расширяется до минимума брокера.
- TP1 - экстремум ноги. Там закрывается TP1 Partial Close процентов лота (с округлением вниз до шага). Если часть или остаток меньше минимального лота, ничего не закрывается (TP1 REACHED (no split)). 100 закрывает всё (TP1 FULL EXIT), 0 - ничего.
- Breakeven at TP1 затем переносит стоп на цену входа.
- TP2 = экстремум + TP2 Extension процентов ноги, ставится как тейк-профит ордера. 0 ставит TP2 на экстремум.
- Trail After TP1: после TP1 на каждом новом баре стоп = последнее закрытие минус значение x ATR (покупки), только подтягивается.
- Max Bars Before TP1 закрывает сделку по рынку, если TP1 не достигнут за столько баров (TIME STOP).
- Закрытия и изменения стопа отправляются только вне зоны заморозки брокера и внутри торговой сессии; иначе повтор на следующем тике.
Lot Sizing: Fixed lots торгует Fixed Lots. Risk % of balance: лоты = баланс x Risk per Trade / 100 / убыток на лот до стопа. Округление вниз до шага лота и ограничение Max Lots; ниже минимума брокера берётся минимальный лот, поэтому малый счёт может рисковать больше. Перед каждым ордером проверяется свободная маржа, и объём делится пополам, пока не поместится (NO MARGIN, если не хватает даже на минимум).
Рекомендуется: H1 на мажорах и золоте; H4 и D1 торгуют реже. На M15 и ниже спред велик относительно ATR, и Max Spread блокирует большинство входов. Стоит оптимизировать: Min Impulse Size, Swing Strength, обе границы зоны, Entry Trigger, Min Reward:Risk to TP1 и Trail After TP1.
Кнопки панели
- [-] / [+]: свернуть панель в плашку (RECOIL и состояние) или развернуть.
- <>: перенести панель в следующий угол (верх слева, верх справа, низ справа, низ слева).
- PAUSE / RESUME: запретить или разрешить новые входы; открытая сделка сопровождается дальше. Хранится в глобальной переменной и переживает перезапуск, смену таймфрейма и повторную установку.
- ZONES ON / ZONES OFF: показать или скрыть разметку графика. Свёрнутость, угол и разметка возвращаются к входным значениям при повторной установке.
Показания панели
- Индикатор в заголовке: зелёный = GATE OPEN, янтарный = PAUSED, коралловый = входы заблокированы.
- ENGINE STATE: статус SCANNING (ноги нет), ARMED (нога найдена, ждём отката), IN POCKET (цена коснулась зоны, ждём триггер), IN TRADE. Справа: BUY SIDE, SELL SIDE или NO LEG. TREND: таймфрейм, период EMA и BULL, BEAR, NEUTRAL или OFF. GATE: OPEN, PAUSED, ALGO TRADING OFF, MARKET CLOSED, OUT OF SESSION или SPREAD HIGH.
- RECOIL GAUGE: DEPTH - текущий откат в процентах; маркер идёт по шкале: голубая до ближней границы, янтарная по зоне, тёмно-янтарная до уровня отмены и коралловая дальше. LEG - размер ноги в ATR и число её баров. WAITING FOR AN IMPULSE, если ноги нет.
- LEVELS: TP2, TP1, POCKET (диапазон цен), INVALID и STOP с расстоянием от Bid в pts. В сделке TP2 и STOP берутся из ордера, а TP1 показывает DONE после отработки.
- POSITION: FLAT или направление, лоты, цена входа и плавающая прибыль в валюте счёта; стадия TP1 PENDING, TRAILING или RUNNER; пункты и бары в сделке. Без позиции: WAITING FOR SETUP или NEW ENTRIES PAUSED.
- ACTIVITY: три последних события со временем сервера: ARMED, IN POCKET, INVALIDATED, EXPIRED, ENTRY, TP1 PARTIAL, TP1 FULL EXIT, TP1 REACHED (no split), BREAKEVEN, TIME STOP, CLOSED, ORDER FAILED, NO MARGIN, SKIPPED: reward:risk, SKIPPED: target too close, PAUSED by user, RESUMED by user.
- Нижняя строка: TRADES (закрытые сделки, частичные закрытия считаются один раз), WIN в процентах и NET закрытая прибыль со свопом и комиссией, для этого символа и magic number.
Разметка графика
Линия ноги (голубая для покупок, коралловая для продаж) идёт от ORIGIN к экстремуму. Янтарный прямоугольник с пунктиром по ближней границе отмечает POCKET, коралловая штриховая линия - INVALID, зелёный пунктир - TP1 EXTREME, зелёная штрихпунктирная линия - TP2 +27.2 (ваше расширение). Они тянутся до истечения сетапа и рисуются за свечами.
Оповещения
Pop-up Alerts и Push Notifications срабатывают, когда сетап ARMED, при ENTRY, на TP1 и когда сделка CLOSED. В тестере не отправляются.
Побочные эффекты
- Глобальная переменная RRE_PAUSE_<symbol>_<magic> = 1 во время паузы.
- Глобальная переменная RRE_T1_<symbol>_<magic>_<open time> хранит цену TP1 открытой сделки (положительная до отработки, отрицательная после) и удаляется после закрытия. Если её нет, TP1 считается отработанным: без частичного закрытия и безубытка, трейлинг работает.
- Глобальная переменная RRE_LEG_<symbol>_<magic> хранит время начала последней отторгованной ноги (отрицательное для продаж), чтобы после перезапуска одна нога не торговалась дважды.
- Объекты с префиксами RRE_P_ (панель) и RRE_Z_ (разметка), удаляются вместе с советником. Таймер раз в секунду обновляет панель. Без файлов и DLL.
bool paused = GlobalVariableCheck("RRE_PAUSE_EURUSD_26103101"); Входные параметры
Импульсная нога
- Swing Strength (2): баров с каждой стороны свинга.
- Min Impulse Size (2.0): минимальная нога в ATR.
- Max Impulse Bars (20): максимум баров от начала до экстремума.
- Swing Lookback (120): баров для поиска начала.
- ATR Period (14).
Зона и вход
- Pocket Near Edge (38.2) и Pocket Far Edge (61.8): зона в процентах ноги.
- Invalidation Level (78.6): закрытие за ним отменяет сетап.
- Entry Trigger (Rejection close): Rejection close, Pocket touch или Resume break.
- Setup Expiry (30): баров после экстремума.
- Min Reward:Risk to TP1 (0.5): 0 = выкл.
Трендовый фильтр
- Higher-Timeframe Trend Filter (true).
- Trend Timeframe (Current = next higher).
- Trend EMA Period (50).
Выходы
- Stop Loss Placement (Beyond invalidation level): или Beyond leg origin.
- Stop Buffer (0.25): доп. расстояние в ATR.
- TP1 Partial Close (50): процент, закрываемый на TP1.
- Breakeven at TP1 (true).
- TP2 Extension (27.2): процент ноги за экстремумом.
- Trail After TP1 (1.5): множитель ATR, 0 = выкл.
- Max Bars Before TP1 (0): 0 = выкл.
Управление капиталом
- Lot Sizing (Risk % of balance): или Fixed lots.
- Fixed Lots (0.10).
- Risk per Trade (1.0): процент баланса.
- Max Lots (5.0).
Фильтры и исполнение
- Max Spread (30): процент ATR, 0 = выкл.
- Session Start Hour (0) и Session End Hour (0): часы сервера для новых входов; равные значения = 24 ч; можно через полночь.
- Magic Number (26103101): свой на каждом графике одного символа.
- Max Slippage (30): пункты.
- Order Comment (Recoil).
Отображение и оповещения
- Show Panel (true), Draw Leg and Pocket (true), Start Collapsed (false), Panel Scale (1.0, 0.5-2.5).
- Pop-up Alerts (true), Push Notifications (false).
Типовые настройки
- Сбалансированная H1 (мажоры, золото): всё по умолчанию.
- Золото H1 с подтверждением: Entry Trigger = Resume break, Min Impulse Size 2.5, Trail After TP1 2.0.
- Терпеливый свинг H4/D1: Swing Strength 3, Pocket Near Edge 50, Stop Loss Placement = Beyond leg origin, Min Reward:Risk to TP1 0.8.
- Быстрые выходы: TP1 Partial Close 100, Max Bars Before TP1 24, Breakeven at TP1 false.
Примечания
- После перезапуска сетап восстанавливается по истории на следующем баре; открытая сделка продолжается со своим TP1.
- Тестер использует те же правила; панель и разметка видны только в визуальном режиме.
- Сначала проверьте на демо-счёте.
Предупреждение о рисках
Торговля на рынке форекс и CFD с плечом связана с высоким риском потерь. Прошлые или смоделированные результаты не гарантируют будущих. Советник не обещает прибыль; используйте только средства, которые можете позволить себе потерять.
