Стратегия представляет собой портирование советника MQL5 Exp_Trading_Channel_Index на платформу StockSharp. Она использует осциллятор Trading Channel Index (TCI), который измеряет положение цены относительно сглаженного канала и окрашивает бары в пять цветов. Сделки совершаются при изменении цвета на указанном историческом баре, что полностью повторяет оригинальную логику.
Работа ведётся по выбранному таймфрейму свечей (по умолчанию H4). Обрабатываются только завершённые свечи, а все торговые решения принимаются на открытии следующей свечи после фиксации цветового перехода.
Индикатор Trading Channel Index
TCI рассчитывается в три этапа:
Первичное сглаживание выбранной цены с помощью настраиваемого скользящего среднего (SMA, EMA, SMMA, WMA или Jurik), формирующего базовую линию XMA.
Оценка волатильности через сглаживание абсолютного отклонения цены от базовой линии.
Нормализация отклонения с учётом коэффициента и вторичного сглаживания. Полученный показатель сравнивается с уровнями HighLevel и LowLevel, после чего бар получает цветовой код:
0 – значение выше HighLevel.
1 – значение положительное, но ниже HighLevel.
2 – значение близко к нулю.
3 – значение отрицательное, но выше LowLevel.
4 – значение ниже LowLevel.
В реализации StockSharp используются штатные классы индикаторов. Для Jurik Moving Average учитывается параметр Phase, для остальных методов он игнорируется, как и в оригинале.
Правила входа и выхода
Стратегия анализирует бар с номером SignalBar (по умолчанию последний закрытый) и предыдущий бар:
Открытие покупки: два бара назад (SignalBar + 1) имели цвет 0, а последний бар — другой цвет. При наличии короткой позиции она закрывается, затем открывается длинная позиция объёмом TradeVolume.
Открытие продажи: два бара назад имели цвет 4, а последний бар — другой цвет. При наличии длинной позиции она закрывается, после чего открывается короткая.
Закрытие покупки: выполняется, когда старший бар (два бара назад) окрашен в 4.
Закрытие продажи: выполняется, когда старший бар окрашен в 0.
Сначала выполняются условия выхода, затем условия входа. Перед открытием сделки противоположная позиция закрывается, что повторяет логику вспомогательных функций TradeAlgorithms.mqh.
Управление рисками
Стоп-лосс и тейк-профит задаются в шагах цены:
StopLossPoints определяет расстояние от цены входа до стоп-лосса (ниже для покупок и выше для продаж).
TakeProfitPoints задаёт расстояние до тейк-профита.
Проверка защитных уровней выполняется на каждой завершённой свече. При одновременном достижении обоих уровней закрытие происходит по первому сработавшему условию.
Параметры
Trade Volume (TradeVolume) — объём заявки.
Stop Loss (pts) (StopLossPoints) — стоп-лосс в шагах цены.
Take Profit (pts) (TakeProfitPoints) — тейк-профит в шагах цены.
Enable Long Entries/Exits (BuyPositionOpen, BuyPositionClose) — включение сигналов на покупку и их закрытие.
Enable Short Entries/Exits (SellPositionOpen, SellPositionClose) — включение сигналов на продажу и их закрытие.
Signal Bar (SignalBar) — сдвиг по истории, на котором отслеживается смена цвета.
High Level / Low Level (HighLevel, LowLevel) — уровни для окраски индикатора.
Primary / Secondary Method (Method1, Method2) — типы скользящих средних для каждого этапа сглаживания.