이 전략은 RSI와 스토카스틱 RSI 조합 전략 (RSI and Stochastic RSI Combination Strategy) 이라고 불린다. 이 전략은 상대 강도 지수 (RSI) 와 스토카스틱 RSI의 장점을 결합하여 과소매와 과소매 기회를 식별한다. 이 전략은 모든 암호화폐에 적합하지 않은 EOS/BTC 및 BTC/USDT의 5분 차트에서 잘 작동한다.
이 전략은 RSI 지표와 스토카스틱 RSI 지표를 모두 사용합니다. RSI 매개 변수는 10 기간의 길이가 있으며, 60에서 과잉 구매 수준과 20에서 과잉 판매 수준입니다. 스토카스틱 RSI 매개 변수는 3에서 K 라인의 평면화 기간, 3에서 D 라인의 평면화 기간, 14의 RSI 계산 길이가 있으며, 스토카스틱 RSI K 및 D 값이 모두 20 이하일 때 과잉 판매를 식별하며, 스토카스틱 RSI K 및 D 값이 모두 80 이상일 때 과잉 구매를 나타냅니다. 거래 신호는 과잉 구매 및 과잉 판매 수준에서 생성됩니다.
이 전략은 RSI 지표와 스토카스틱 RSI 지표의 장점을 결합합니다. RSI는 과잉 구매 및 과잉 판매 상황을 식별하는 데 효과적입니다. 스토카스틱 RSI는 모멘텀을 통합하여 전환점을 더 일찍 감지 할 수 있습니다. 조합은 보다 신속한 거래 신호를 생성하기 위해 가격과 모멘텀 요인을 모두 고려하여 더 잘 작동합니다.
이 전략은 너무 많은 거래와 거래 당 적당한 이익 마진의 위험에 직면 할 수 있습니다. 해결책은 거래 빈도를 낮추는 데 매개 변수를 적절히 조정하고 더 큰 가격 변동이있는 제품을 선택하는 것을 포함합니다. 또한 거래 비용은 최종 이익에도 영향을 줄 수 있습니다. 낮은 수수료 또는 적절한 규모의 포지션 크기를 가진 거래 플랫폼을 선택하는 것이 좋습니다.
이 전략의 매개 변수들은 RSI 매개 변수, 스토카스틱 RSI 매개 변수, 과잉 구매/ 과잉 판매 임계 값 등을 조정하는 것과 같이 더 이상 최적화 될 수 있다. 또한, EMA와 같은 다른 지표들은 신호를 필터링하고 품질을 향상시키기 위해 결합될 수 있다. 다른 제품들 사이의 상관관계를 활용하기 위해 여러 제품 조합을 시도하는 것도 보다 안정적인 전체 수익을 얻는 데 도움이 될 수 있다.
이 전략은 상대적으로 과반 구매 및 과반 판매 수준에서 거래 신호를 생성하기 위해 RSI 지표와 스토카스틱 RSI 지표의 장점을 통합합니다. 매개 변수는 추가로 조정하고 다른 제품에 대한 거래 규칙을 사용자 정의 할 수 있습니다. 다른 전략 또는 지표와의 조합도 탐구 할 수 있습니다. 전반적으로,이 전략은 단기 거래 기회를 식별하려는 양적 거래자에게 적합합니다.
/*backtest start: 2023-11-29 00:00:00 end: 2023-12-01 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("RSI+STOCHRSI", overlay=true) length = input( 10) overSold = input( 20 ) overBought = input( 60 ) price = close vrsi = rsi(price, length) smoothK = input(3, minval=1) smoothD = input(3, minval=1) lengthRSI = input(14, minval=1) lengthStoch = input(14, minval=1) src = input(close, title="RSI Source") rsi1 = rsi(src, lengthRSI) k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK) d = sma(k, smoothD) srsilow=input(20) srsiup=input(80) sourceup = high sourcelow = low source=close yearfrom = input(2018) yearuntil =input(2019) monthfrom =input(1) monthuntil =input(12) dayfrom=input(1) dayuntil=input(31) if ( (d<srsilow) and (k<srsilow) and (vrsi<overSold)) strategy.entry("MMAL", strategy.long, stop=close, oca_name="TREND", comment="AL") else strategy.cancel(id="MMAL") if ( (d> srsiup ) and (k>srsiup ) and (vrsi >overBought) ) strategy.entry("MMSAT", strategy.short,stop=close, oca_name="TREND", comment="SAT") else strategy.cancel(id="MMSAT")