Стратегия RSI-диапазонного торгового шока используется для получения прибыли от колебаний цены путем обратной торговли, когда RSI достигает диапазона перекупа и перепродажи. Стратегия основана на предположении, что цены никогда не будут только вверх или вниз, чтобы получить прибыль, захватив возможность отклонения цены, когда RSI достигает диапазона перекупа и перепродажи.
Стратегия определяет, достигла ли цена пределов перекупа или перепродажи, рассчитывая показатель RSI. В частности, стратегия сначала рассчитывает длину RSI на 2 цикла. Затем устанавливает линию RSI на 91 и линию RSI на 11.
Для управления рисками, в стратегии также установлены методы остановки убытков. В частности, при сборе, если цена движется вниз более чем на 0,5% от длинной цены, остановка убытков; при сборе, если цена движется вверх более чем на 0,5%, остановка убытков. Это позволяет избежать убытков, вызванных резким односторонним прорывом цены.
В целом, основная логика стратегии заключается в следующем: мониторинг RSI-индикатора для определения ситуации, когда цена перекупает, перепродает, в соответствии с конфигурированными параметрами RSI совершает обратную торговлю, а также устанавливает стоп-лосс для контроля риска.
Это более классический и надежный торговый сигнал, использующий RSI для определения перекупа и перепродажи.
Обратная торговля сверхпокупает и сверхпродает, при условии, что цены не будут постоянно повышаться или снижаться в одностороннем порядке, и может быть выгодна для колебаний в ценовом диапазоне.
Установка стоп-лосса для контроля потери от одной сделки.
Фреймворк для отслеживания стратегии прост и понятен, его легко понять и изменить.
RSI параметры и Stop Loss могут быть настроены гибко, чтобы адаптироваться к изменениям рынка.
RSI, как индикатор тренда, может привести к непрерывным потерям, если будет наблюдаться устойчивая тенденция цен, а не колебание.
Неправильно настроенные параметры RSI могут привести к увеличению торгового сигнала, но с низкой вероятностью победы.
Неправильная установка стоп-лосса может привести к тому, что стоп-лосса будет вызвана небольшим количеством цен или слишком большим количеством потерь.
Эта стратегия лучше подходит для рыночных условий с шокирующим отскоком, и может не работать на рынках с заметной тенденцией.
Слишком большие позиции также могут привести к увеличению убытков.
Можно рассмотреть возможность создания комбинационного сигнала с RSI в сочетании с другими индикаторами, такими как MACD, для повышения точности принятия торговых решений.
Можно исследовать статистические характеристики RSI при различных параметрах, чтобы найти оптимальное сочетание параметров.
Можно установить механизм динамической корректировки пропорции позиции, чтобы проверить его эффективность в обратном измерении.
Можно рассматривать возможность расчета величины стоп-убытков с помощью таких показателей, как ATR, чтобы сделать стоп-убытки более адаптивными.
Оптимистические комбинации параметров могут быть найдены с использованием методов машинного обучения и т.д.
Можно исследовать другие стратегии обратного трейдинга в сочетании с RSI, чтобы создать более стабильную торговую систему.
RSI-диапазонная торговая стратегия для реверсивной торговли с помощью простого RSI-индиката, который определяет, что цена перекупается и перепродается, и устанавливает риск контроля за убытками. Эта стратегия подходит для рыночной среды с шокирующим отскоком, чтобы получить прибыль от захвата колебаний цен в диапазоне.
/*backtest
start: 2022-10-30 00:00:00
end: 2023-11-05 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Simple RSI Strategy", overlay=true)
var rsiLength = input(2, title = "rsi Length")
var float rsiBuyLevel = input(11, title = "What rsi level triggers a long")
var float rsiShortLevel = input(91, title = "What rsi level triggers a short")
var float maxRisk = input(.05, title="Maximum risk/ trade")
var chartEntryStop = input(.005, title="Max Movment in the opposite direction / trade")
var float longEntryPrice = na
var float shortEntryPrice = na
rsiValue = ta.rsi(close, rsiLength)
var float maxRiskValue = (strategy.equity * maxRisk) / chartEntryStop
var float maxRsi = 0
//Conditions
// Strategy Execution
if( close <= longEntryPrice-(longEntryPrice*chartEntryStop ))
strategy.close("Long")
if( close >= shortEntryPrice+(shortEntryPrice*chartEntryStop ))
strategy.close("Short")
if (rsiValue <= rsiBuyLevel and maxRsi == rsiShortLevel)
maxRsi := rsiBuyLevel
strategy.close("Short")
strategy.entry("Long", strategy.long)
longEntryPrice := close
else if (rsiValue >= rsiShortLevel and maxRsi == rsiBuyLevel)
maxRsi := rsiShortLevel
strategy.close("Long")
strategy.entry("Short", strategy.short)
shortEntryPrice := close
else if (rsiValue >= rsiShortLevel )
maxRsi := rsiShortLevel
strategy.close("Long")
else if (rsiValue <= rsiBuyLevel )
maxRsi := rsiBuyLevel
strategy.close("Short")