Стратегия Peter Panel
Peter Panel Strategy переносит ручную панель MetaTrader 5 «Peter Panel» в экосистему StockSharp. В оригинальном советнике на графике находились три горизонтальные линии (вход, тейк-профит, стоп-лосс) и блок кнопок. Торговец нажимал нужную кнопку — и заявка отправлялась на основе текущих линий. Перевод на C# сохраняет ту же логику, но вместо интерфейсных кнопок использует параметры стратегии. Как и в исходной панели, установка булевого параметра в значение true сразу выполняет действие, после чего параметр автоматически возвращается в false.
Основные идеи
- Ассистент для ручной торговли – стратегия не генерирует собственных сигналов; решение принимает трейдер, переключая параметры.
- Общие ценовые линии – бирюзовая линия входа, зелёная линия тейк-профита и красная линия стоп-лосса представлены тремя числовыми параметрами. Их можно задать вручную или пересчитать относительно текущей середины спрэда с помощью
ResetCommand. - Полный набор ордеров – реализованы все шесть операций из панели: покупка и продажа по рынку, buy stop, buy limit, sell stop и sell limit. После каждой сделки выставляются защитные ордера, имитирующие заполнение полей TP/SL в MetaTrader.
- Массовая модификация – параметр
ModifyCommandповторно применяет текущие уровни ко всем активным отложенным ордерам и защитным стопам/тейкам открытой позиции. - Одно нажатие – полный выход –
CloseCommandотменяет отложенные ордера, снимает защитные заявки и закрывает совокупную позицию по рынку.
Сравнение с оригинальным советником
| Возможность | MetaTrader 5 Peter Panel | StockSharp Peter Panel Strategy |
|---|---|---|
| Интерфейс | Графический диалог с кнопками и полями ввода | Параметры стратегии в менеджере S# |
| Управление линиями | Перетаскивание линий или кнопка «Reset» | Редактирование параметров или ResetCommand |
| Отправка заявок | Кнопка вызывает OrderSend |
Переключатель вызывает метод Buy/Sell и сохраняет ссылку на ордер |
| Тейк/стоп | Заполняются в MqlTradeRequest.tp/sl |
Выставляются отдельными стоп- и лимит-заявками после сделки |
| Модификация | Выбор тикета и кнопка «Modify» | ModifyCommand отменяет и пересоздаёт все отложенные заявки, обновляя защиту |
| Закрытие | Кнопка «Close» для выбранного тикета | CloseCommand закрывает всю позицию и очищает ордеры |
| Список ордеров | Таблица на панели | Состояние отслеживается через журналы и стандартные отчёты StockSharp |
Важно: в MetaTrader трейдер выбирал конкретный тикет. В параметрах стратегии подобный выбор невозможен, поэтому все операции применяются ко всем ордерам, созданным стратегией.
Параметры
| Параметр | Описание |
|---|---|
Volume |
Объём сделки в лотах. Проверяется на соответствие минимальному объёму и шагу инструмента. |
EntryLevel |
Цена для отложенных ордеров (бирюзовая линия). |
TakeProfitLevel |
Зелёная линия. Для длинных позиций – тейк-профит, для коротких – уровень защитного стопа. |
StopLossLevel |
Красная линия. Для длинных – стоп-лосс, для коротких – целевой тейк. |
BuyMarketCommand |
Отправляет рыночный ордер на покупку и сбрасывается. |
BuyStopCommand |
Размещает buy stop на EntryLevel. |
BuyLimitCommand |
Размещает buy limit на EntryLevel. |
SellMarketCommand |
Отправляет рыночный ордер на продажу. |
SellStopCommand |
Размещает sell stop на EntryLevel. |
SellLimitCommand |
Размещает sell limit на EntryLevel. |
ModifyCommand |
Повторно применяет уровни ко всем отложенным заявкам и защитным ордерам. |
CloseCommand |
Снимает отложенные заявки, удаляет защиту и закрывает позицию. |
ResetCommand |
Пересчитывает уровни вокруг текущего mid-цены (среднее между bid и ask). |
Последовательность работы
- Подключите инструмент и портфель, затем запустите стратегию. При старте оформляется подписка на Level1, чтобы
ResetCommandполучал актуальный спред. - Установите цены линий вручную или воспользуйтесь
ResetCommand, который центрирует уровни вокруг текущего рынка. - Активируйте нужный торговый параметр. После выполнения действие параметр автоматически сбрасывается в
false. - После исполнения ордера стратегия выставляет защитные заявки: для длинной позиции это sell stop на красной линии и sell limit на зелёной; для короткой – зеркальная комбинация.
- Измените уровни и нажмите
ModifyCommand, чтобы обновить активные заявки без перезапуска стратегии. - По завершении торговли включите
CloseCommandдля полного выхода и очистки очереди ордеров.
Отличия от оригинала
- Нет визуального списка тикетов. Информацию о состоянии можно получить через логи, отчёты и собственные пользовательские панели.
- StopLoss/TakeProfit реализованы как отдельные заявки, поскольку StockSharp не позволяет передать их в базовом ордере, но итоговое поведение идентично.
- При модификации используется схема «снять и заново выставить», что упрощает поддержку разных торговых шлюзов.
Рекомендации по эксплуатации
- Свяжите параметры стратегии с пользовательской панелью или горячими клавишами, чтобы повторить оригинальный опыт взаимодействия.
- Стратегия не ставит действия в очередь. Если нужно выполнить серию команд, дождитесь, когда предыдущий параметр снова станет
false. - Защитные заявки создаются только при ненулевой позиции. Если была выставлена отложенная заявка и она исполнилась позже, нажмите
ModifyCommand, чтобы гарантированно обновить стопы и тейки.
Меры предосторожности
- Перед отправкой ордеров убедитесь, что заданы портфель и инструмент, а также известен шаг цены; при отсутствии данных стратегия выдаёт предупреждение.
- Если объём после приведения к шагу оказывается равен нулю, заявка не отправляется, а в журнале появляется предупреждение.
- При выполнении
CloseCommandпорядок действий следующий: сначала снимаются защитные заявки, затем отложенные ордера, после чего позиция закрывается по рынку. Это повторяет консервативную схему из оригинального советника.