Стратегия TradeXpert Manual Trading Panel
Обзор
Исходный советник TradeXpert для MQL5 — это панель ручной торговли с набором кнопок для открытия позиций, размещения отложенных заявок, установки защитных уровней и мгновенного разворота позиции. В версии на StockSharp все эти функции реализованы через параметры стратегии. Стратегия не генерирует собственных сигналов: она ждет ваших команд, исполняет соответствующие заявки и контролирует защитные выходы по мере поступления новых свечей.
Воссозданные возможности
- Рыночные действия. Одноразовые команды
BuyиSellс использованием заданного объема. - Отложенные заявки. Единоразовая постановка лимитных и стоп-заявок для покупки и продажи с абсолютной ценой либо с вычислением цены по смещению от последнего закрытия.
- Управление защитой. Стоп-лосс и тейк-профит задаются в абсолютных значениях или как смещения от цены входа. Если экстремумы свечи пробивают указанный уровень, стратегия закрывает позицию рыночной заявкой.
- Ручное закрытие и разворот. Параметры для мгновенного закрытия или разворота позиции воспроизводят кнопки Close и Reverse из MQL-панели.
Логика работы стратегии
- Стратегия подписывается на тип свечей, выбранный в параметре
CandleType, и использует поток для расчета смещений и проверки защитных уровней. - На каждой закрывшейся свече стратегия:
- Обновляет свойство
Volumeактуальным значениемTradeVolume. - Обрабатывает запросы на закрытие или разворот, даже если индикаторы еще не сформированы.
- После проверки готовности рынка исполняет запрошенные рыночные сделки, отправляет отложенные заявки и проверяет условия срабатывания стоп-лосса и тейк-профита.
- Обновляет свойство
- При любом изменении величины позиции (открытие, наращивание, сокращение) обновляется сохраненная цена входа, чтобы смещения защитных уровней учитывали последнюю сделку.
- Защитная логика ориентируется на максимум и минимум свечи. При пробитии уровня стратегия отправляет противоположную рыночную заявку объемом, равным текущей позиции, чтобы полностью ее закрыть.
Параметры
CandleType— тип свечей для расчета смещений и контроля рисков.TradeVolume— объем каждой рыночной и отложенной заявки (должен быть > 0).EntryAction— селектор рыночных действий (None,BuyMarket,SellMarket). При выборе значения, отличного отNone, заявка исполняется один раз, после чего параметр возвращается вNone.PendingAction— селектор отложенных заявок (None,BuyLimit,BuyStop,SellLimit,SellStop). После успешной постановки заявки значение очищается.PendingPrice— абсолютная цена отложенной заявки. При0используетсяPendingOffset.PendingOffset— смещение от последнего закрытия при отсутствии абсолютной цены. Знак автоматически подбирается в зависимости от выбранного типа заявки.UseStopLoss/StopLossPrice/StopLossOffset— включение и настройка стоп-лосса. При нулевом абсолютном значении цена стопа рассчитывается по смещению от зафиксированного входа.UseTakeProfit/TakeProfitPrice/TakeProfitOffset— аналогичные параметры для тейк-профита.ClosePositionRequest— установкаtrueинициирует немедленное закрытие всей позиции рыночной заявкой; после обработки флаг сбрасывается.ReversePositionRequest— установкаtrueразворачивает позицию: текущая позиция закрывается, затем открывается противоположная с объемомReverseVolume, после чего флаг сбрасывается.ReverseVolume— объем новой позиции после разворота. Чтобы получить симметричный разворот, задайте значение, равное текущему абсолютному объему позиции.
Рекомендации по использованию
- Подберите
CandleTypeв соответствии с тем, как вы хотите измерять смещения и контролировать риск. По умолчанию используется минутная свеча, что соответствует изначальной панели, реагировавшей на поток тиков. - Установите
TradeVolumeи при необходимости задайте защитные уровни (StopLoss*,TakeProfit*). При значении 0 для абсолютных параметров будут задействованы смещения. - Для отложенных заявок решите, нужна ли фиксированная цена (
PendingPrice) или динамический расчет по смещению (PendingOffset). Итоговая цена вычисляется в момент постановки заявки. - Отправляйте команды, изменяя
EntryAction,PendingAction,ClosePositionRequestилиReversePositionRequest. Каждый параметр работает как кнопка: после выполнения он автоматически возвращается в исходное состояние и не повторяет действие на следующей свече. - При открытой позиции стратегия отслеживает цену и срабатывание защитных уровней. После закрытия по стопу или тейку триггеры отключаются до следующего входа, чтобы избежать повторных заявок.
Отличия от оригинального MQL-варианта
- Графическая панель заменена набором параметров стратегии, которые можно менять через интерфейс StockSharp или внешние скрипты.
- Вместо размещения отдельных стоп- и тейк-заявок стратегия закрывает позицию рыночными ордерами при достижении уровней. Это полностью соответствует высокоуровневому API и не требует сопровождать дополнительные заявки.
- Расчет смещений выполняется по закрывшимся свечам, а не по каждому тику, что повышает воспроизводимость поведения в тестах и на реальном рынке.
Примечания
- В течение одной свечи можно отправить несколько команд (например, купить и сразу запросить установку тейк-профита). Стратегия обработает их последовательно на следующей закрывшейся свече.
- Чтобы повторить действие, выберите требуемое значение повторно — внутренняя логика обнаружит изменение и выполнит новую команду.
- При изменении размера позиции сохраненная цена входа обновляется до закрытия свечи, в которой зафиксировано изменение. При необходимости скорректируйте смещения защитных уровней, чтобы сохранить нужные расстояния.