Эта стратегия использует перекресток индикатора RSI и его скользящей средней в качестве торговых сигналов, относящихся к общим стратегиям индикатора импульса. Его основной принцип заключается в отслеживании разницы между индикатором RSI и простой скользящей средней SMA_RSI RSI, а затем вычисляет простую скользящую среднюю SMA_RSI2 этой разницы. Когда SMA_RSI2 пересекает порог, идите на длинный. Когда пересекаете порог, закрывайте позицию.
Стратегия использует 3 параметра для расчета индикатора RSI и его двух простых скользящих средних с разными периодами. Во-первых, вычислить регулярный индикатор RSI с длиной периода. Затем вычислить длину2 периода простых скользящих средних SMA_RSI RSI. Наконец, вычислить разницу дельта между RSI и SMA_RSI, а затем вычислить длину3 периода простых скользящих средних SMA_RSI2 дельта. Когда SMA_RSI2 пересекает пределы, определенные пользователем, сделайте длинные сделки. Когда SMA_RSI2 пересекает пределы, закрывайте позиции.
Таким образом, формируется стратегия торгового сигнала, основанная на перекрестке скользящих средних показателей RSI. Поскольку SMA_RSI2 является скользящей средней разницы дельта, он может отражать динамику и изменения тренда индикатора RSI, понимая суть самого индикатора RSI.
Стратегия сочетает в себе преимущества индикаторов RSI и их скользящих средних, чтобы следовать ценовым тенденциям и избегать ввода в заблуждение шумом. Идея вычисления дельты разницы и затем сглаживания генерирует более четкие торговые сигналы. В целом эта стратегия имеет меньшие снижения и более стабильные прибыли.
Конкретные преимущества:
В этой стратегии также имеются определенные риски, которые в основном отражаются на:
Можно улучшить следующие аспекты:
Эта стратегия относительно проста и универсальна. Увеличивая практичность самого индикатора RSI с помощью дельта-арифметических операций и используя перекрестное суждение, она имеет хороший контроль за снижением и является очень практичной стратегией индикатора импульса.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy ("RSI&SMA", overlay=false ) startP = timestamp(input(2017, "Start Year"), input(12, "Month"), input(17, "Day"), 0, 0) end = timestamp((9999), (1), (1), 0, 0) _testPeriod() => true length = input(3, minval=1, title = "RSI period") length2 = input(21, minval=1, title = "RSI SMA-1") length3 = input(13, minval=1, title = "RSI SMA-2") threshold = input(0,step=0.5, title="Threshold") filter = input(false, title="Use filter?") up = rma (max (change (close), 0), length) down = rma (-min (change (close), 0), length) RSI = down == 0? 100: up == 0? 0: 100-100 / (1 + up / down) SMA_RSI = sma(RSI, length2) delta = RSI-SMA_RSI SMA_RSI2 = sma(delta, length3) Long = crossover(SMA_RSI2, threshold) Short = crossunder(SMA_RSI2, threshold) plot(threshold, color=color.silver) plot(SMA_RSI2, color= SMA_RSI2 > 0 ? color.blue : color.purple) //plot(SMA_RSI, color=color.green) //plot(delta, color=color.red) long_condition = Long and (filter ? close > ema(close, 200) : true) and _testPeriod() strategy.entry('BUY', strategy.long, when=long_condition) short_condition = Short strategy.close('BUY', when=short_condition)