Стратегия следования за трендом на основе Momentum Enhanced Simple Moving Average и RSI

SMA RSI MA SL TP Trend momentum CROSSOVER
Дата создания: 2025-02-24 10:19:03 Последнее изменение: 2025-02-24 10:19:03
Копировать: 1 Количество просмотров: 450
2
Подписаться
319
Подписчики

Стратегия следования за трендом на основе Momentum Enhanced Simple Moving Average и RSI Стратегия следования за трендом на основе Momentum Enhanced Simple Moving Average и RSI

Обзор

Эта стратегия представляет собой торговую систему для отслеживания тенденций, которая сочетает в себе простые скользящие средние ((SMA) и относительно слабые показатели ((RSI)). Она идентифицирует направление тенденции с помощью пересечения краткосрочных и долгосрочных скользящих средних и использует RSI для подтверждения динамики, чтобы найти высоковероятные торговые возможности на рынке.

Стратегический принцип

Основная логика стратегии основана на комбинированном использовании двух технических индикаторов:

  1. Двойная равнолинейная система: использует простые движущиеся средние с 8 и 21 циклами, чтобы идентифицировать изменение тенденции через перекрестный пересечение равнолинейных линий. При пересечении долгосрочной равнолинейной линии вверх короткие средние линии генерируют многосигналы, а при пересечении долгосрочной средней линии вниз - пустые сигналы.
  2. RSI-фильтр: для подтверждения динамики используется 14-циклический индикатор RSI. Завышение выполняется только при RSI ниже 70, а выручка - выше 30, чтобы избежать торговли в зоне чрезмерной покупки или продажи.
  3. Управление рисками: на каждой сделке установлен уровень стоп-лосса 1% и стоп-стоп 2% для защиты безопасности средств и блокировки прибыли.

Стратегические преимущества

  1. Преимущества портфеля индикаторов: в сочетании с отслеживанием тенденций и динамическими индикаторами, позволяет более точно идентифицировать рыночные переломные моменты.
  2. Управление рисками: встроенные механизмы остановки и остановки, которые позволяют эффективно контролировать риски.
  3. Гибкость параметров: все ключевые параметры могут быть оптимизированы в соответствии с различными рыночными условиями.
  4. Широкая применимость: может применяться для нескольких рынков и нескольких временных периодов.
  5. Логика ясна и проста: правила стратегии ясны, их легко понять и выполнить.

Стратегический риск

  1. Риск колебаний рынка: часто могут возникать ложные сигналы на рынках с горизонтальными колебаниями.
  2. Риск отставания: сам по себе движущийся средний имеет отставание и может упустить часть возможностей для получения прибыли.
  3. Чувствительность параметров: в различных рыночных условиях может потребоваться корректировка параметров для поддержания эффективности стратегии.
  4. Трендозависимость: стратегия работает лучше в сильно трендовых рынках, но может не работать в других рыночных условиях.

Направление оптимизации стратегии

  1. Внедрение механизмов идентификации рыночных условий с использованием различных комбинаций параметров в различных рыночных условиях.
  2. Повышение показателей загрузки в качестве вспомогательного подтверждающего сигнала.
  3. Оптимизация механизма остановки убытков, можно рассмотреть возможность использования динамической программы остановки убытков.
  4. Добавление фильтра силы тренда, чтобы торговать только на рынке сильной тенденции.
  5. Разработка механизмов самостоятельной корректировки параметров адаптации для повышения адаптивности стратегии.

Подвести итог

Это целостная, логически ясная стратегия отслеживания тенденций. Благодаря сочетанию SMA и RSI, можно как улавливать тенденции, так и избегать торговли в чрезмерно торгуемых зонах. Встроенный механизм управления рисками обеспечивает стабильность стратегии.

Исходный код стратегии
/*backtest
start: 2025-02-16 00:00:00
end: 2025-02-23 00:00:00
period: 6m
basePeriod: 6m
exchanges: [{"eid":"Binance","currency":"SOL_USDT"}]
*/

//@version=6
strategy("WEN - SMA with RSI Strategy", overlay=true)

// Define input parameters
// SMA Inputs
shortLength = input(8, title="Short MA Length")
longLength = input(21, title="Long MA Length")

// RSI Inputs
rsiLength = input(14, title="RSI Length")
rsiOverbought = input(70, title="RSI Overbought")
rsiOversold = input(30, title="RSI Oversold")

// Calculate indicators
// Moving Averages
shortMA = ta.sma(close, shortLength)
longMA = ta.sma(close, longLength)

// RSI
rsi = ta.rsi(close, rsiLength)

// Plot indicators
plot(shortMA, title="Short MA", color=color.blue)
plot(longMA, title="Long MA", color=color.red)
// RSI is typically plotted in a separate panel in trading platforms

// Entry conditions with RSI confirmation
smaLongCondition = ta.crossover(shortMA, longMA)
smaShortCondition = ta.crossunder(shortMA, longMA)

rsiLongCondition = rsi < rsiOverbought  // Not overbought for long entry
rsiShortCondition = rsi > rsiOversold   // Not oversold for short entry

// Combined entry conditions
longCondition = smaLongCondition and rsiLongCondition
shortCondition = smaShortCondition and rsiShortCondition

// Execute trades
if (longCondition)
    strategy.entry("Long", strategy.long)
if (shortCondition)
    strategy.close("Long")
    strategy.entry("Short", strategy.short)

// Set stop loss and take profit
stopLoss = input(1, title="Stop Loss (%)") / 100
takeProfit = input(2, title="Take Profit (%)") / 100

longStopLossPrice = strategy.position_avg_price * (1 - stopLoss)
longTakeProfitPrice = strategy.position_avg_price * (1 + takeProfit)
shortStopLossPrice = strategy.position_avg_price * (1 + stopLoss)
shortTakeProfitPrice = strategy.position_avg_price * (1 - takeProfit)

strategy.exit("Take Profit / Stop Loss", from_entry="Long", stop=longStopLossPrice, limit=longTakeProfitPrice)
strategy.exit("Take Profit / Stop Loss", from_entry="Short", stop=shortStopLossPrice, limit=shortTakeProfitPrice)