
반전 피셔 RSI 평균 실제 범위 다중 시간 프레임 전략은 역조정된 RSI 지표의 이동 평균을 더 높은 시간 프레임에 계산하여 시장의 가능한 반전점을 발견하기 위해 시도하는 양적 거래 전략이다.
이 전략은 먼저 RSI의 지표인 RSI를 계산합니다._pm은 RSI의 주기 길이를 계산하는 것을 나타냅니다. 그리고 IF라는 수학 함수를 사용하여 원시 RSI를 역정합니다. IF는 () = > () exp () 2*input)-1)/(exp(2*input) +1) ᆞ 조정된 RSI 지표가 변수 IF로 전달된다_RSI。
너무 많은 소음을 필터링하기 위해, IF는_RSI를 기준으로 계산하면_ps 주기적인 이동 평균, 최종적으로 구매/판매 지점을 판단하는 지표 wma_RSI. 이 지표는 0-100의 범위에 다시 매핑된다.
마지막으로, 전략은 지표를 더 높은 시간 프레임에 그려서 0.8 및 -0.8의 절벽선을 설정합니다. 지표선이 아래에서 위쪽으로 0.8 수준을 돌파하면 구매 신호가 발생하며, 지표선이 위에서 아래로 -0.8 수준을 돌파하면 판매 신호가 발생합니다.
이 전략은 RSI 움직임을 듀얼 플레잉 방식으로 처리하여 과도한 잡음을 효과적으로 필터링하여 비교적 명확한 반전 신호를 잠금합니다. 듀얼 플레잉은 원시 RSI 지표와 절대값 조정 후의 RSI 지표에 각각 적용됩니다. 이 방법은 지표의 평균 회귀 특성을 강화하여 비교적 신뢰할 수있는 거래 신호를 생성합니다.
또한, 이 전략은 다중 시간 프레임 분석 방법을 사용하여 더 높은 수준의 시간 프레임에 대한 지표의 돌파구를 식별하여 장시간에 대한 역전 기회를 잠금하여 과도한 단기 시장 소음으로 방해받지 않도록합니다.
이 전략은 평평선 지표에 의존하여 매매점을 판단하는데, 약간의 지연이 존재한다. 장기적인 황소 시장에서 지표 조정 후 상승 공간이 제한되어 트렌드 기회를 충분히 포착할 수 없다.
다른 한편으로, 지표의 조정이 짧은 선 조정이 된 후의 반발 기회를 놓칠 수도 있습니다. 지표 매개 변수를 적절하게 최적화하지 않으면 특정 전략적 위험에 직면 할 수 있습니다.
시장 환경에 더 잘 적응하도록 지표 매개 변수를 적절하게 조정할 수 있습니다. 예를 들어, 다른 RSI 계산 주기, 부드러운 주기 매개 변수를 테스트하여 최적의 매개 변수 조합을 찾을 수 있습니다.
또 다른 보조 지표와 결합하여 신호를 검증하는 것도 고려할 수 있으며, 전략의 안정성을 높일 수 있다. 예를 들어, 거래량 지표, 브린 라인 등이 트렌드 신호의 강도를 판단할 수 있다.
반전된 피셔 RSI 평균 실제 범위 다중 시간 프레임 전략은 전반적으로 안정적이지만 더 넓은 시장 상황에 맞게 최적화되어야 합니다. 추가 테스트와 개선이 필요하며 신뢰할 수있는 양적 거래 전략이 될 수 있습니다.
/*backtest
start: 2022-11-14 00:00:00
end: 2023-11-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title = "Inverse Fisher RSI-MTF2", shorttitle="INRSIM2",overlay=true)
//Inputs
RSI_pm = input(5, title="RSI Main Period",minval=2)
RSI_ps = input(1, title="RSI Smooth Period",minval=0)
//Functions
IF(input)=>(exp(2*input)-1)/(exp(2*input)+1)
//RSI Calculation
raw_RSI=0.1*(rsi(close,RSI_pm)-50)
wma_RSI=wma(raw_RSI,RSI_ps)*100
IF_RSI = IF(wma_RSI)
resCustom = input(title="Timeframe", defval="1440" )
v=request.security(syminfo.tickerid, resCustom,IF_RSI)
a=v>0.8
b=v<-0.8
z=0.8
buy = crossover(v,z)
sell=crossunder(v,b)
plotshape(sell, title="sell", style=shape.triangledown,location=location.abovebar, color=red, transp=0, size=size.small)
plotshape(buy, title="buy", style=shape.triangleup,location=location.belowbar, color=green, transp=0, size=size.small)
//Strategy
golong = crossover(v,z)
goshort = crossunder(v,b)
strategy.entry("Buy",strategy.long,when = golong)
strategy.entry("Sell",strategy.short,when = goshort)