Техническое задание
Представленный ранее Expert Advisor выглядит как очень простая стратегия, замаскированная под более сложного советника. Насколько мы видим, основная логика там построена на фильтре расширения типа Envelope и простом расчёте Points/Second для установки отложенных ордеров.
Исходная концепция, по сути, следующая:
-
обнаружить очень большую / взрывную свечу;
-
измерить скорость движения в points per second;
-
дождаться небольшого отката;
-
установить отложенный ордер;
-
использовать очень маленький Stop Loss;
-
стремиться примерно к соотношению Risk/Reward = 1:4.
Я не хочу воспроизводить эту стратегию один в один. Мне нужна только полезная базовая идея, объединённая с нашим собственным market-physics engine.
Только MT5
Новый Expert Advisor должен разрабатываться исключительно для MetaTrader 5.
1. Жёсткий фильтр взрыва
Первый фильтр должен быть специально очень строгим.
Нужно сравнивать текущую свечу-кандидат с предыдущими 4 полностью закрытыми свечами.
Свеча считается Explosion только в том случае, если её диапазон составляет как минимум:
3.5 × эталонный диапазон / волатильность предыдущих 4 свечей.
Это должен быть именно очень сильный фильтр экстремальной волатильности, а не обычный volatility signal.
Дополнительно должен применяться второй фильтр волатильности непосредственно к самой свечe-кандидату.
Базовая логика:
Previous 4 bars → Reference volatility/range → Candidate candle >= 3.5 × reference → Additional candle-volatility filter → EXPLOSION
2. Points / Second
Мы сохраняем простую исходную идею измерения скорости движения:
PointVelocity = PointsMoved / Seconds
Это является одним из фильтров, но не единственным.
3. Live Peak и Retracement
Во время формирования взрывной свечи необходимо непрерывно отслеживать текущий экстремум.
BUY
LiveHigh = максимальная достигнутая цена Retracement = LiveHigh - текущая цена
SELL
LiveLow = минимальная достигнутая цена Retracement = текущая цена - LiveLow
Когда откат достигает примерно 5 points, создаётся Anchor.
Значение 5 points должно быть параметром входных настроек.
Логика:
EXPLOSION → LIVE PEAK → 5 POINT RETRACEMENT → ANCHOR
4. Anchor → Craw Pending
Anchor является опорной точкой для Craw trailing pending order.
Нам не нужен фиксированный отложенный ордер, который просто остаётся на первоначальном уровне.
Craw должен иметь возможность в зависимости от дальнейшего поведения рынка:
-
приближаться к цене;
-
удаляться от цены;
-
оставаться без изменений;
-
отменяться;
-
создаваться заново.
Поведение Craw должно определяться последующей рыночной динамикой и нашими market-physics measurements.
5. Инвалидация Anchor
Anchor должен становиться недействительным, когда рынок полностью возобновляет предыдущее расширение.
Пример BUY
Explosion → новый HH → откат на 5 points → создаётся Anchor → цена снова растёт и пробивает предыдущий HH → старый Anchor становится недействительным → старый Craw / pending order отменяется
Для SELL всё должно работать абсолютно симметрично.
Это принципиально важно: старый Anchor не должен продолжать оставаться активным после того, как рынок сформировал новое расширение.
6. Density и Market Physics
Именно здесь добавляется наша собственная система.
Нужно использовать tick-based measurements, а не ограничиваться размером свечи.
Минимальный набор:
Ticks Points Seconds Points/Tick Ticks/Second Points/Second Density = Ticks / Points
Затем архитектура должна позволять постепенно добавлять дополнительные показатели силы:
Directional Density Flow Pressure Acceleration Force Efficiency Dominance
У нас есть большое количество дополнительных формул, которые необходимо тестировать, поэтому архитектура должна быть модульной.
Базовый механизм BARON должен оставаться неизменным.
Дополнительные формулы должны выступать в качестве дополнительных фильтров, определяющих, разрешено ли Anchor/Craw переходить в реальную торговую операцию.
7. Selective Execution
Я не хочу, чтобы Expert Advisor открывал сделку каждый раз, когда появляется взрывная свеча.
Философия системы:
EXPLOSION → VOLATILITY → POINT/SECOND → DENSITY → FORCE / FLOW → ANCHOR → CRAW → FINAL FILTER → TRADE
Система должна быть поэтому очень селективной.
Нет полной валидной конфигурации — нет ордера.
8. Ограничение количества сделок
Концепция очень маленького Stop Loss делает чрезмерную торговую активность особенно опасной.
Из-за:
-
spread;
-
slippage;
-
execution latency;
-
broker stop levels;
-
freeze levels;
-
других особенностей исполнения,
необходимо жёстко ограничивать количество сделок и открывать позицию только тогда, когда условия действительно исключительно сильные.
В Expert Advisor должны быть настраиваемые ограничения, например:
Maximum trades per candle Maximum trades per signal Maximum active positions Cooldown after trade One-shot Anchor option
9. Risk / Reward
Исходная идея предполагает примерно:
Risk : Reward = 1 : 4
Например:
SL = 5 points TP = 20 points
Все значения должны быть настраиваемыми.
При этом Expert Advisor не должен предполагать, что теоретическое соотношение 1:4 автоматически будет работать в реальной торговле.
Особенно маленький Stop Loss очень чувствителен к:
-
spread;
-
slippage;
-
latency;
-
особенностям исполнения у брокера.
10. Режимы исполнения
Необходимо реализовать два режима исполнения.
A. Real Pending Order
Craw представлен в виде реального отложенного ордера на стороне брокера.
B. Virtual Craw
Craw существует только как графическая линия на графике.
Когда цена достигает уровня Craw:
price touches virtual Craw → immediate market execution
Этот режим нужен в случаях, когда ограничения брокера делают использование реальных pending orders неудобным или невозможным.
Линии Craw должны быть хорошо видны на графике и иметь разные цвета для BUY и SELL.
11. Опциональный Straddle Mode
Expert Advisor должен поддерживать два режима.
Straddle Mode
BUY CRAW │ ANCHOR │ SELL CRAW
Обе стороны могут работать независимо друг от друга.
Single-side Mode
Поддерживается только соответствующий Craw в зависимости от обнаруженного направления движения.
12. Архитектура
Финальная структура должна быть модульной:
BARON CORE │ ├── Explosion Detector ├── 4-Bar Volatility Filter ├── Candle Volatility Filter ├── Point/Second Engine ├── Tick/Point Density Engine ├── Strength / Force Engine ├── Live Peak Detector ├── Anchor Engine ├── Craw Engine ├── Anchor Invalidation ├── Pending Execution ├── Virtual Craw Execution └── Risk / Trade Management
Главный принцип состоит в том, что я не хочу сложный black-box EA.
Исходная идея BARON на самом деле очень простая:
сильное расширение → live peak → небольшой откат → Anchor → перемещаемый Craw → очень селективное исполнение.
Наше отличие заключается в использовании анализа density / ticks / points / force, который должен определять, насколько движение действительно обладает достаточной рыночной силой для разрешения сделки.
Цель системы — не максимизировать количество сделок.
Цель — жёстко фильтровать сигналы и разрешать торговлю только тогда, когда измеренное расширение показывает достаточную реальную рыночную силу.