
Двойная стратегия торговли RSI - это количественная стратегия торговли, основанная на относительно сильном и слабом индексе (RSI). Эта стратегия использует одновременно быстрый и медленный RSI в качестве торговых сигналов для двойного подтверждения, чтобы повысить качество сигнала и отфильтровать ложные сигналы.
Стратегия использует два различных цикла RSI в качестве основных торговых показателей. Быстрый RSI имеет 5-дневный цикл, который используется для захвата краткосрочных сверхпокупок и сверхпродаж; медленный RSI имеет 14-дневный цикл, который используется для определения среднесрочных тенденций и ключевых сопротивлений.
Конкретные правила торговли таковы:
Эта стратегия, используя комбинацию быстрого и медленного RSI, обеспечивает взаимозависимость между различными циклами и позволяет эффективно идентифицировать перекуп и перепродажу, а также подтверждает среднесрочную тенденцию, что приводит к высококачественному торговому сигналу. Двойной механизм фильтрации RSI также позволяет уменьшить шум торговли, вызванный ложными прорывами.
Наибольшим преимуществом стратегии двойного RSI является возможность эффективно фильтровать ложные сигналы, повышать качество сигнала, тем самым уменьшая ненужные сделки и снижая частоту торгов. Конкретные преимущества таковы:
Существуют определенные риски, связанные с двухуровневой стратегией RSI, в основном в следующих аспектах:
Вы можете снизить эти риски следующими способами:
Есть место для дальнейшей оптимизации стратегии двухуровневого RSI. Основные направления включают:
В результате вышеуказанных оптимизаций можно еще больше повысить рентабельность, устойчивость и адаптивность стратегии.
Двойная стратегия RSI в целом является очень практичной количественной торговой стратегией. Она объединяет механизмы, такие как отслеживание тенденций, выявление перепродажи и двойной фильтрации, и образует относительно полную торговую систему. Эта стратегия демонстрирует выдающиеся результаты в области управления рисками, снижения частоты торгов и т. Д.
/*backtest
start: 2023-12-30 00:00:00
end: 2024-01-29 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Ankit_Quant
//@version=4
// ********************************************************************************************************
// This was coded live during webinar on Backtesting in Tradingview
// That was held on 16-Jan-21
// Aim of this strategy is to code a Double Decker RSI Strategy - Rules of Strategy are given in Description
// *********************************************************************************************************
// Identifier of strategy or an indicator (study())
strategy(title="Strategy- Double Decker RSI",shorttitle='Strategy - Double Decker RSI',overlay=true)
// ********************
// INPUTS
// ********************
// RSI Lookback Periods
slowRSI=input(defval=14,title='Slow RSI Period',type=input.integer)
fastRSI=input(defval=5,title='Fast RSI Period',type=input.integer)
// Time Period Backtesting Input
start_year=input(defval=2000,title='Backtest Start Year',type=input.integer)
end_year=input(defval=2021,title='Backtest End Year',type=input.integer)
//Specific Years to Test Starategy
timeFilter=true
// Trade Conditions and signals
long = rsi(close,fastRSI)>70 and rsi(close,slowRSI)>50
short = rsi(close,fastRSI)<40 and rsi(close,slowRSI)<50
long_exit=rsi(close,fastRSI)<55
short_exit=rsi(close,fastRSI)>45
//positionSize - 1 Unit (also default setting)
positionSize=1
// Trade Firing - Entries and Exits
if(timeFilter)
if(long and strategy.position_size<=0)
strategy.entry(id='Long',long=strategy.long,qty=positionSize)
if(short and strategy.position_size>=0)
strategy.entry(id="Short",long=strategy.short,qty=positionSize)
if(long_exit and strategy.position_size>0)
strategy.close_all(comment='Ex')
if(short_exit and strategy.position_size<0)
strategy.close_all(comment='Ex')
// Plot on Charts the Buy Sell Labels
plotshape(strategy.position_size<1 and long,style=shape.labelup,location=location.belowbar,color=color.green,size=size.tiny,text='Long',textcolor=color.white)
plotshape(strategy.position_size>-1 and short,style=shape.labeldown,location=location.abovebar,color=color.red,size=size.tiny,text='Short',textcolor=color.white)
plotshape(strategy.position_size<0 and short_exit?1:0,style=shape.labelup,location=location.belowbar,color=color.maroon,size=size.tiny,text='ExShort',textcolor=color.white)
plotshape(strategy.position_size>0 and long_exit?1:0,style=shape.labeldown,location=location.abovebar,color=color.olive,size=size.tiny,text='ExLong',textcolor=color.white)