MultiMartinStrategy
Обзор
MultiMartinStrategy — это порт советника MultiMartin с платформы MQL5 на StockSharp. Оригинальная система работает по принципу реверсной торговли с наращиванием объёма по мартингейлу на нескольких инструментах. Перенос сохраняет ключевую логику управления капиталом и использует высокоуровневый API StockSharp для отправки заявок, контроля позиций, опционального трейлинга и обработки отказов брокера.
Стратегия всегда держит не более одной позиции по выбранному инструменту. После закрытия позиции направление сохраняется, если сделка была прибыльной, или разворачивается, если сделка завершилась убытком. Убыточные сделки запускают шаг мартингейла, увеличивая объём следующего ордера до заданного предела.
Логика работы
- Выбор входа
- Торговля разрешена только внутри заданного временного окна. В остальное время новые сделки не открываются.
- Когда позиция равна нулю и нет активного периода блокировки, стратегия отправляет рыночную заявку в текущую сторону. Первое направление задаётся пользователем (покупка или продажа).
- Мартингейл
- После каждой убыточной сделки объём следующего ордера умножается на коэффициент
Factor. - Количество последовательных увеличений ограничивается параметром
Limit. Если потолок превышен, объём возвращается к базовомуVolume. - Прибыльные сделки всегда сбрасывают объём и сохраняют текущее направление.
- После каждой убыточной сделки объём следующего ордера умножается на коэффициент
- Выход из позиции
- Стоп-лосс и тейк-профит задаются в пунктах и переводятся в абсолютное расстояние с учётом
PriceStepинструмента. - Доступны два режима трейлинга: перевод стопа в безубыток и прямолинейное сопровождение цены.
- Как только экстремумы свечи достигают стопа или цели, стратегия закрывает позицию рыночной заявкой.
- Стоп-лосс и тейк-профит задаются в пунктах и переводятся в абсолютное расстояние с учётом
- Отказы брокера
- При отказе в исполнении рыночного ордера включается пауза, длительность которой задаётся
SkipBadTime. ОпцияForeverполностью блокирует дальнейшие входы до окончания работы стратегии.
- При отказе в исполнении рыночного ордера включается пауза, длительность которой задаётся
Параметры
| Параметр | Описание |
|---|---|
UseTimeFilter |
Включить или отключить внутридневной фильтр времени. |
HourStart |
Час (0-23), начиная с которого разрешена торговля. |
HourEnd |
Час (1-24), после которого торговля запрещена. Поддерживаются ночные окна. |
Volume |
Базовый объём сделки (лоты или контракты). |
Factor |
Множитель объёма после убыточной сделки. |
Limit |
Максимальное число последовательных увеличений объёма перед сбросом. |
StopLossPoints |
Дистанция стоп-лосса в пунктах. Значение 0 отключает стоп. |
TakeProfitPoints |
Дистанция тейк-профита в пунктах. Значение 0 отключает цель. |
StartDirection |
Направление первой сделки (Buy или Sell). |
SkipBadTime |
Интервал блокировки после отказа брокера. Forever выключает дальнейшие входы. |
TrailMode |
Режим трейлинга: None, Breakeven или Straight. |
CandleType |
Тип свечей, используемый для контроля выхода и фильтра времени. |
Отличия от MQL5-версии
- Один экземпляр стратегии работает только с одним инструментом. Для мульти-символьной торговли запустите несколько копий.
- Управление стопами и целями реализовано на уровне стратегии: при касании диапазоном свечи выставляется рыночный приказ на закрытие.
- Пауза после отказа реализована через обработчик
OnOrderFailed, аналогично логике исходного советника. - Трейлинг реализован средствами StockSharp, без прямого изменения активных заявок.
Рекомендации по использованию
- Перед запуском задайте
SecurityиPortfolio. - Убедитесь, что параметр
Volumeсоответствует минимальному шагу и правилам объёма для инструмента. - Значение 0 в
StopLossPointsилиTakeProfitPointsотключает соответствующую защиту. - Для корректного бэктеста выбирайте
CandleType, совпадающий с таймфреймом истории (например, минутные свечи для форекс-пар). - Для имитации мульти-символьной версии запускайте несколько экземпляров стратегии с разными параметрами.
Предупреждение о рисках
Мартингейл предполагает экспоненциальный рост объёма при серии убытков и может быстро исчерпать маржу. Используйте консервативные настройки, тщательно тестируйте стратегию на истории и применяйте дополнительные механизмы риск-менеджмента в реальной торговле.