PulseStrike — это скальпер, работающий на основе тиков. Он не дожидается закрытия свечи. Он отслеживает короткое скользящее окно ценового движения (по умолчанию 4 секунды) и строит в режиме реального времени статистическую базовую линию, отражающую, как выглядит нормальное движение в течение этого окна для текущего символа. Новое движение считается торгуемым всплеском только в том случае, если оно является подлинным выбросом по отношению к этой базовой линии (пороговое значение z-score, по умолчанию — 3,0 стандартных отклонения). Это заменило более раннюю версию, в которой использовалась фиксированная доля ATR. Та версия срабатывала на обычный тиковый шум и несла значительные убытки по всем тестируемым основным валютным парам.
Доступны два режима. Режим «Моментум» торгует в направлении всплеска. Режим «Реверсия» торгует против него. Советник не предполагает, какой режим подходит для данного инструмента. Протестируйте оба.
Каждый вход сначала проходит несколько фильтров. Расстояние до тейк-профита должно быть целым кратным текущего спреда. Стоп-лосс и тейк-профит масштабируются по ATR. Сделка принудительно закрывается, если она не завершилась в течение заданного количества секунд. Существует дневной лимит сделок и лимит убытка, достижение которых приостанавливает открытие новых позиций до конца дня. Перед попыткой ручного закрытия советник также проверяет, не достигла ли позиция своего собственного стоп-лосса или тейк-профита, чтобы избежать конфликта с исполнением со стороны брокера.
Одновременно удерживается только одна позиция, а не несколько. Большинство розничных счетов MT5 работают в режиме неттинга, при котором второй ордер по тому же символу просто объединяется с существующей позицией. Вместо того чтобы создавать механизм, который будет работать некорректно на счетах с неттингом, в данном случае используется быстрый цикл одной сделки (проверки на уровне тиков, короткий период ожидания), чтобы добиться того же практического эффекта.
Результаты бэктеста приведены ниже. Использованные настройки: все символы Market Watch, график M1, моделирование каждого тика, исполнение со случайной задержкой, период с 01.01.2026 по 08.09.2026, входные параметры по умолчанию (InpZScoreThreshold 3,0, InpBurstWindowSeconds 4, InpTakeProfitATRMult 0,35, InpStopLossATRMult 0,55).
Символ Прибыль Сделки Коэффициент прибыльности Ожидаемая выгода Просадка, %
EURUSD 182740,71 5557 1,30 32,88 10,33
AUDUSD 145 066,46 6 933 1,27 20,92 7,21
USDJPY 98 592,56 7 240 1,37 13,62 3,50
USDCHF 92761,53 5732 1,32 16,18 5,37
GBPUSD 42170,70 7991 1,25 5,28 54,07
NZDUSD 30031,92 4735 1,16 6,34 42,41
USDCAD 27956,54 3756 1,29 7,44 20,64
Начальный баланс 10000 во всех прогонах.
Следует честно отметить две вещи. Во-первых, пары GBPUSD и NZDUSD демонстрируют положительный коэффициент прибыльности, но очень высокий просадку (54% и 42%). Прибыльный конечный результат всё же может сопровождаться неровной кривой капитала. Во-вторых, это результаты только одного периода бэктеста. Стратегия ещё не прошла проверку на отдельном вневыборочном периоде. Стратегия, которая выглядит хорошо на данных, на которых она была настроена, не является доказательством реального преимущества, пока она не подтвердит свою эффективность на данных, с которыми ранее не сталкивалась. Я публикую текущую версию с этими результатами в том виде, в каком они есть, а не жду, и обновлю эту запись, как только будет завершено тестирование на вневыборочном периоде.
Результаты по инструментам, не относящимся к валютному рынку (акции, экзотические пары), полученные в ходе того же теста, сюда не включены. Количество сделок по ним было слишком малым, чтобы иметь какое-либо значение, и данный советник не разрабатывался с учётом этих инструментов.
Ключевые параметры:
- InpBurstWindowSeconds, InpStatsSampleCount, InpZScoreThreshold, InpModeIsMomentum
- InpVolATRPeriod, InpRiskPercent, InpTakeProfitATRMult, InpStopLossATRMult, InpMinTPToSpreadRatio, InpMaxSpreadPoints, InpMaxHoldSeconds, InpCooldownSeconds
- InpMaxTradesPerDay, InpDailyLossLimitPercent
- InpUseSessionFilter, InpSessionStartHour, InpSessionEndHour
Прежде всего протестируйте на демо-счете. Результаты прошлых бэктестов не являются гарантией будущих результатов. Приветствуются отзывы.
— Али Раджпут