Стратегия OB/OS медленного RSI

Автор:Чао Чжан, Дата: 2023-12-28 18:07:48
Тэги:

img

Обзор

Стратегия Slow RSI OB/OS открывает новые торговые возможности, продлевая период обратного отсчета RSI, чтобы уменьшить колебания кривой RSI.

Логика стратегии

Основная идея этой стратегии заключается в том, чтобы по умолчанию продлить период обратного обзора RSI до 500 бар, а затем сгладить кривую RSI с 250-барной SMA. Это может значительно уменьшить колебания RSI и замедлить скорость его реакции, тем самым создавая новые торговые сигналы.

Продленный период обратного обзора ослабляет колебания RSI, поэтому критерии уровня перекупленности и перепродажи также должны быть скорректированы. Стратегия устанавливает настраиваемую линию перекупленности на 52 и линию перепродажи на 48. Долгий сигнал запускается, когда сглаженный RSI пересекает линию перепродажи снизу. Краткий сигнал запускается, когда он пересекает линию перекупленности сверху.

Преимущества

  1. Высоко инновационный, изучая новые торговые идеи в течение длительных периодов
  2. Значительно снижает ложные сигналы и улучшает стабильность
  3. Настраиваемые пороги OB/OS, адаптируемые к различным рынкам
  4. Разрешить пирамиду для повышения рентабельности

Риски

  1. Отсутствие краткосрочных возможностей из-за длительных периодов
  2. Требует терпения в ожидании торговых сигналов
  3. Неправильное установление порога OB/OS может увеличить потери
  4. Риски попасть в ловушку

Решения:

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

Руководство по оптимизации

  1. Оптимизировать параметры RSI для поиска наилучшей комбинации периодов
  2. Испытать различные периоды сглаживания SMA
  3. Оптимизировать параметры OB/OS для различных рынков
  4. Добавление стратегий стоп-лосса для контроля одиночных потерь

Заключение

Стратегия Slow RSI OB/OS успешно исследовала новые торговые идеи путем продления периодов и использования SMA для подавления колебаний. При надлежащей настройке параметров и контроле рисков стратегия имеет потенциал для достижения устойчивой и прибыльной избыточной доходности. В заключение, стратегия является очень инновационной и ценной в использовании.


/*backtest
start: 2023-12-20 00:00:00
end: 2023-12-27 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/


// Wilder was a very influential man when it comes to TA. However, I'm one to always try to think outside the box. 
// While Wilder recommended that the RSI be used only with a 14 bar lookback period, I on the other hand think there is a lot to learn from RSI if one simply slows down the lookback period 
// Same applies for MACD.
// Every market has its dynmaics. So don't narrow your mind by thinking my source code input levels are the only levels that work.
// Since the long lookback period weakens the plot volatility, again, one must think outside the box when trying to guage overbought and oversold levels. 

// Good luck and don't bash me if some off-the-wall FA spurned divergence causes you to lose money.
// And NO this doesn't repaint and I won't answer those who ask. 
//@version=4

strategy("SLOW RSI OB/OS Strategy", overlay=false)
price = input(ohlc4, title="Price Source")
len = input(500, minval=1, step=5,  title="RSI Length")
smoother = input(250, minval=1, step=5, title="RSI SMA")
up = rma(max(change(price), 0), len)
down = rma(-min(change(price), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
EmaRSI = ema(rsi,smoother)
plot(EmaRSI, title="EmaRSI", style=line, linewidth=1, color=yellow)


OB = input(52, step=0.1)
OS = input(48, step=0.1)
hline(OB, linewidth=1, color=red)
hline(OS,linewidth=1, color=green)
hline(50,linewidth=1, color=gray)


long = change(EmaRSI) > 0 and EmaRSI <= 50 and crossover(EmaRSI, OS)
short = change(EmaRSI) < 0 and EmaRSI >= 50 and crossunder(EmaRSI, OB)


strategy.entry("Long", strategy.long, when=long) //_signal or long) //or closeshort_signal)
strategy.entry("Short", strategy.short, when=short) //_signal or short) // or closelong_signal)

// If you want to try to play with exits you can activate these!

//closelong = crossunder(EmaRSI, 0) //or crossunder(EmaRSI, OS)
//closeshort = crossover(EmaRSI, 0) //or crossover(EmaRSI, OB)

//strategy.close("Long", when=closelong)
//strategy.close("Short", when=closeshort)




Больше