Стратегия двойной перекупленности/перепроданности на основе индикатора RSI
Название этой стратегии — «Стратегия двойной перекупленности/перепроданности на основе индикатора RSI». Данная стратегия одновременно использует индикатор RSI и индикатор Stoch RSI для определения состояний перекупленности и перепроданности, что обеспечивает более надёжные торговые сигналы.
Индикатор RSI отражает уровень перекупленности или перепроданности цены. RSI выше 70 указывает на перекупленность, ниже 30 — на перепроданность. Индикатор Stoch RSI оценивает, вошёл ли сам RSI в состояние перекупленности или перепроданности.
Логика торговли по данной стратегии:
Когда RSI пересекает установленную пользователем линию перекупленности снизу вверх, это сигнализирует о входе в зону перекупленности — рассматривается открытие короткой позиции;
Когда RSI пересекает установленную пользователем линию перепроданности сверху вниз, это сигнализирует о входе в зону перепроданности — рассматривается открытие длинной позиции;
При этом Stoch RSI также должен показывать сигнал перекупленности или перепроданности, чтобы подтвердить соответствующий сигнал на вход.
Такое двойное условие позволяет отфильтровать больше неопределённых сигналов и избежать ложных пробоев.
Преимущество данной стратегии заключается в использовании различных производных индикаторов RSI для более точного определения зон перекупленности и перепроданности. Однако следует учитывать риск подгонки под кривую из-за чрезмерной оптимизации. Стоп-лосс также обязателен.
В целом, комбинированное использование индикаторов требует осторожного подхода. Разумное применение может повысить эффективность, но также несёт риск излишней оптимизации. Трейдеру необходимо сохранять гибкость в принятии решений.
/*backtest
start: 2023-01-01 00:00:00
end: 2023-09-12 00:00:00
period: 4d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("test1","t1",overlay=true, default_qty_type = strategy.percent_of_equity,default_qty_value=100,initial_capital=200, currency=currency.USD)
//user input
k_param = input(title = "k length", type = input.integer, defval = 14)- 1
