Стратегия Two MA One RSI
Эта стратегия переносит советник MetaTrader 5 «Two MA one RSI» на платформу StockSharp. Используется пересечение быстрой и медленной скользящих средних, подтверждённое значением RSI на предыдущей закрытой свече. Набор булевых параметров позволяет быстро инвертировать каждое сравнение без правок кода.
Подробности
- Условия входа:
- Для покупок требуется, чтобы две свечи назад быстрая MA находилась ниже медленной, на последней закрытой свече — выше, а RSI предыдущей свечи оказался выше верхнего уровня. Любое сравнение можно инвертировать соответствующим флагом.
- Продажи зеркально проверяют обратные отношения скользящих средних и падение RSI ниже нижней границы.
- Обе MA используют один тип сглаживания; период медленной всегда равен
FastMaPeriod * SlowPeriodMultiplier. Дополнительные сдвиги по горизонтали полностью повторяют MT5-логику чтения значений несколько баров назад.
- Направление: Торговля ведётся в обе стороны. Параметр
CloseOppositePositionsзадаёт, нужно ли закрывать противоположную позицию перед открытием новой сделки. - Условия выхода:
- Фиксированный стоп-лосс и тейк-профит в пипсах.
- Опциональный трейлинг, который переносит стоп только после движения минимум на
TrailingStopPips + TrailingStepPipsот цены входа. ProfitCloseотслеживает плавающий результат (через стоимость шага цены) и закрывает все позиции при достижении целевой прибыли в валюте счёта.
- Стопы: Если
StopLossPips = 0, стратегия опирается исключительно на модуль трейлинг-стопа. При включённом трейлинге обязательно положительное значениеTrailingStepPips, как и в оригинальном советнике. - Параметры по умолчанию:
FastMaPeriod = 10,SlowPeriodMultiplier = 2.FastMaShift = 3,SlowMaShift = 0.RsiPeriod = 10,RsiUpperLevel = 70,RsiLowerLevel = 30.StopLossPips = 50,TakeProfitPips = 150,TrailingStopPips = 15,TrailingStepPips = 5.MaxPositions = 10,ProfitClose = 100,TradeVolume = 1.
- Фильтры: Шесть булевых переключателей (
BuyPreviousFastBelowSlow,BuyCurrentFastAboveSlow,BuyRequiresRsiAboveUpper,SellPreviousFastAboveSlow,SellCurrentFastBelowSlow,SellRequiresRsiBelowLower) задают направление каждого сравнения.
Параметры
| Имя | Описание |
|---|---|
CandleType |
Тип свечей (таймфрейм), используемый в расчётах. |
MaType |
Вид скользящей средней (SMA, EMA, Smoothed, WMA, VWMA). |
FastMaPeriod |
Период быстрой MA. |
SlowPeriodMultiplier |
Множитель периода медленной MA (slow = fast * multiplier). |
FastMaShift, SlowMaShift |
Горизонтальные сдвиги, имитирующие параметр shift в MT5. |
RsiPeriod |
Период RSI (значение берётся с предыдущей закрытой свечи). |
RsiUpperLevel, RsiLowerLevel |
Пороговые значения RSI для лонга и шорта. |
BuyPreviousFastBelowSlow, BuyCurrentFastAboveSlow, BuyRequiresRsiAboveUpper |
Флаги, задающие условия входа в лонг. |
SellPreviousFastAboveSlow, SellCurrentFastBelowSlow, SellRequiresRsiBelowLower |
Аналогичные флаги для входа в шорт. |
StopLossPips, TakeProfitPips |
Стоп-лосс и тейк-профит в пипсах (пип определяется по шагу цены инструмента). |
TrailingStopPips, TrailingStepPips |
Дистанция и минимальный шаг трейлинг-стопа. |
MaxPositions |
Максимальное число одновременных позиций на направление (0 — без ограничения). |
ProfitClose |
Целевой размер плавающей прибыли для принудительного закрытия всех сделок. |
CloseOppositePositions |
Закрывать ли встречные позиции перед новым входом. |
TradeVolume |
Базовый торговый объём; синхронизируется со свойством Volume стратегии. |
Особенности реализации
- Все решения принимаются только на закрытых свечах, что соответствует «работе на новом баре» в MT5.
- Пип вычисляется как шаг цены инструмента. Для инструментов с дробными пипами необходимо настроить параметры инструмента, чтобы добиться поведения как в оригинале (
digits_adjust). - Трейлинг активируется только после движения цены на
TrailingStopPips + TrailingStepPipsи далее держит стоп на расстоянииTrailingStopPips, обновляя его лишь при улучшении минимум наTrailingStepPips. ProfitCloseрассчитывает прибыль с использованиемPriceStepиStepPrice. Убедитесь, что эти величины заданы корректно.