Стратегия Ronz Auto SLTP
Описание
Ronz Auto SLTP — это порт MetaTrader 5 советника Ronz Auto SLTP на C#. Стратегия выступает менеджером открытых позиций: автоматически выставляет защитные стопы и тейки, при достижении заданной прибыли подтягивает стоп для фиксации части результата и запускает один из трех вариантов трейлинг-стопа. Реализация построена на высокоуровневом API StockSharp и умеет контролировать как один инструмент, так и весь портфель.
Основные возможности:
- Переключение между серверными стопами и виртуальным (клиентским) закрытием через параметр
UseServerStops. - Расчет стартовых уровней SL/TP в «метатрейдеровских» пунктах с учетом минимального допустимого расстояния брокера.
- Логика фиксации прибыли: после достижения
LockProfitAfterPipsстоп переносится за цену входа наProfitLockPipsпунктов. - Полная поддержка режимов
Classic,StepDistanceиStepByStep, аналогичных оригинальному советнику. - Опция
ManageAllSecuritiesпозволяет отслеживать все позиции портфеля, автоматически подписываясь на Level1 для нужных инструментов. - Виртуальный режим может выводить сообщения в лог при закрытии сделок.
Параметры
| Параметр | Значение по умолчанию | Описание |
|---|---|---|
ManageAllSecurities |
true |
Контролировать все позиции в портфеле. Если false, стратегия управляет только инструментом, указанным в свойстве Security. |
TakeProfitPips |
550 |
Расстояние от цены входа до тейк-профита в пунктах (плюс минимальное расстояние брокера). |
StopLossPips |
350 |
Расстояние от цены входа до стоп-лосса в пунктах (плюс минимальное расстояние брокера). |
UseServerStops |
true |
true — выставлять реальные стоп/лимит заявки, false — закрывать позицию рыночным ордером при срабатывании виртуальных уровней. |
EnableLockProfit |
true |
Включает перенос стопа в прибыльную область. |
LockProfitAfterPips |
100 |
Объем прибыли (в пунктах), после которого активируется блокировка прибыли. 0 — блокировка пропускается и сразу включается трейлинг. |
ProfitLockPips |
60 |
Сколько пунктов фиксированной прибыли сохраняет стоп после срабатывания блокировки. |
TrailingStopMode |
Classic |
Режим трейлинг-стопа: None, Classic, StepDistance, StepByStep. |
TrailingStopPips |
50 |
Базовое расстояние трейлинг-стопа в пунктах. |
TrailingStepPips |
10 |
Шаг, используемый ступенчатыми режимами. |
EnableAlerts |
false |
Записывать ли уведомления в лог при виртуальном закрытии позиций. |
Логика работы
- Начальные уровни. При появлении позиции вычисляются цены SL и TP, исходя из цены входа, шага цены и минимального стоп-уровня биржи/брокера. Если задано
UseServerStops = true, отправляются соответствующие заявки. В противном случае значения сохраняются как виртуальные пороги. - Фиксация прибыли. Как только текущая прибыль по позиции превышает
LockProfitAfterPips, стоп переносится на расстояниеProfitLockPipsпунктов в прибыльную область (для коротких позиций — ниже цены входа). Если фиксация отключена, этот шаг пропускается. - Трейлинг-стоп:
Classic— стоп следует за ценой на фиксированном расстоянииTrailingStopPips.StepDistance— расстояние сокращается наTrailingStepPips, когда цена проходит достаточное количество пунктов.StepByStep— стоп перемещается дискретно, каждый раз наTrailingStepPips, после прохождения очередного интервалаTrailingStopPips.- Если
LockProfitAfterPips = 0, трейлинг активируется сразу, иначе — после превышенияLockProfitAfterPips + TrailingStopPips.
- Виртуальный режим. При
UseServerStops = falseстратегия не выставляет дополнительных заявок, а закрывает позицию рыночным ордером, когда фактическая цена пересекает расчетный стоп или тейк. При включенномEnableAlertsсоответствующее событие фиксируется в журнале. - Поддержка нескольких инструментов. Для каждого инструмента хранится собственное состояние (цены стопа/тейка, направление позиции, параметры трейлинга). Это позволяет одновременно контролировать разнонаправленные позиции по разным инструментам.
Рекомендации по применению
- Убедитесь, что коннектор поставляет Level1-данные (Bid/Ask) по всем торгуемым инструментам — именно они используются для пересчета пунктов и определения прибыли.
- Если брокер предъявляет жесткие требования к минимальным расстояниям, выбирайте более крупные значения
StopLossPips/TakeProfitPips. - В условиях тестирования или при торговле на площадках без поддержки серверных стопов переключайтесь в виртуальный режим (
UseServerStops = false). - StockSharp работает с чистой позицией по инструменту. Если на счете есть несколько хеджирующих сделок, стратегия управляет их суммарным результатом.
Отличия от MQ5-версии
- В MetaTrader каждая позиция (тикет) обрабатывается отдельно. В StockSharp используется агрегированная позиция по инструменту.
- Встроенная в исходный скрипт функция тестовых сделок (автоматическое открытие сделок в тестере) не перенесена.
- Уведомления реализованы через систему логирования StockSharp и не показываются всплывающими окнами.