다중 지표 융합 전략은 여러 가지 유형의 기술 지표를 조합하여 각각의 장점을 결합하여 거래의 승률을 높이기 위해 더 정확하고 포괄적인 시장 판단을 수행합니다.
이 전략은 세 가지 다른 기술 지표를 동시에 사용합니다. 변동률 지수 (VI), ROC-RSI 및 가격 변동률 (Price ROC).
우선, 전략은 VI를 계산합니다. 이는 긍정적으로 변화하는 지표 VIP와 부정적으로 변화하는 지표 VIM로 구성됩니다. VIP와 VIM은 각각 가격의 상승 세력과 하락 세력을 측정합니다. VIP와 VIM의 변화율을 비교하여 미래의 가격 상승 또는 하락 가능성을 판단 할 수 있습니다.
둘째, 이 전략은 ROC와 RSI를 결합하여 ROC-RSI 지표를 형성한다. ROC는 더 긴 기간 동안의 가격 변화를 측정하며, RSI는 더 짧은 기간 동안의 가격의 과매매를 반영한다. ROC-RSI는 두 가지 측면의 정보를 통합하여 현재 주가 가격이 비합리적인 극단 영역에 있는지 판단한다.
마지막으로, 가격 ROC는 가격 변화의 강도를 직접 반영한다. VI와 ROC-RSI와 달리, 가격 자체의 관점에서 추세를 판단한다.
이 전략은 위의 세 가지 지표를 조합하여 구매 또는 판매 신호를 동시에 발송할 때만 거래 명령을 생성합니다. 이것은 몇 가지 가능한 가짜 신호를 필터링하여 신호의 신뢰성을 향상시킬 수 있습니다.
이러한 다중 지표 조합 전략의 가장 큰 장점은 다양한 지표의 장점을 통합하여 보다 포괄적이고 정확한 판단을 내릴 수 있다는 것입니다.
구체적으로, VI는 구매와 판매의 힘을 반영하여 트렌드 전환을 잡을 수 있습니다. ROC-RSI는 가격이 너무 추워서 너무 뜨겁지 않은지 판단 할 수 있습니다.
동시에, 여러 지표가 동시에 신호를 발송하도록 요구하여 가짜 신호를 필터링 할 수 있으며, 이는 거래 신호의 질을 향상시킵니다.
결국, 다중 지표 조합 전략은 각 지표의 장점을 활용하여 상호 보완적 인 검증을 통해 더 신뢰할 수있는 정확한 거래 전략을 구현 할 수 있습니다.
이 전략의 주요 위험은 각 지표의 매개 변수가 잘못 설정되어 지표들 사이에 충돌을 초래하는 것이다.
예를 들어, VI와 Price ROC가 상승세를 판단하고 ROC-RSI가 너무 높으면 매매 신호를 보내면 구매 기회를 놓칠 수 있습니다.
이 전략의 최적화를 위해서는 다음과 같은 것들이 필요합니다.
각 지표의 매개 변수를 조정하여 일관된 거래 신호를 발산할 수 있도록 합니다.
사용된 지표의 수와 유형을 늘리거나 줄여서 최적의 지표 조합을 찾습니다. 이동 평균과 같은 추세 지표는 포함될 수 있습니다.
지표 신호의 결합 논리를 조정합니다. 예를 들어, 다수 지표가 신호를 발산할 때 거래합니다.
단편적 손실을 통제하기 위해 손해 차단 장치를 추가합니다.
포지션 크기 설정과 같은 자금 관리 전략을 최적화하십시오.
다양한 품종과 거래시기에 적합성을 테스트하십시오.
지속적인 최적화를 통해 다중 지표 조합 전략을 극도로 발휘하여 안정적으로 초과 수익을 얻을 수 있습니다.
다중 지표 포지션 전략은 VI, ROC-RSI 및 가격 ROC와 같은 지표의 장점을 결합하여 더 신뢰할 수 있고 포괄적인 시장 판단을 구현하여 거래의 승률을 높입니다. 가장 큰 장점은 지표가 서로 검증하여 단일 지표의 오류를 피하는 것입니다. 동시에 지표 포지션을 최적화하는 것은 전략의 최대 효과를 달성하는 열쇠입니다. 지속적으로 테스트 및 최적화를 통해 다중 지표 포지션 전략은 거래 효과를 효과적으로 향상시킬 수 있습니다.
/*backtest
start: 2022-09-21 00:00:00
end: 2023-09-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("drnkk Strategy", overlay=true)
//IF Function
IF(input)=>(exp(2*input)-1)/(exp(2*input)+1)
//VI Inputs
VI_pm = input(4, title="VI Period",minval=2)
VI_ps = input(3, title="VI Smoothing Period",minval=0)
//VI Calculation
VMP = sum( abs( high - low[1]), VI_pm )
VMM = sum( abs( low - high[1]), VI_pm )
STR = sum( atr(1), VI_pm )
VIP = VMP / STR
VIM = VMM / STR
//VI Smoothing
wmaVIP = (wma(VIP-1,VI_ps))*10
wmaVIM = (wma(VIM-1,VI_ps))*10
//VI IF Transform
IF_VIP=IF(wmaVIP)*100
IF_VIM=IF(wmaVIM)*100
roc_VIP =(wmaVIP - wmaVIP[VI_ps]) / VI_ps
plot(roc_VIP ? roc_VIP : na, color=lime)
roc_VIM = (wmaVIM - wmaVIM[VI_ps]) / VI_ps
plot(roc_VIM ? roc_VIM : na, color=purple)
//ROC-RSI Inputs
RSI_pm = input(2, title="ROC-RSI Period",minval=2)
RSI_ps = input(2, title="Smooth Period",minval=0)
//ROC Calculation and Smoothing
raw_ROC=(close - close[RSI_pm])/RSI_pm
wma_ROC=wma(raw_ROC,RSI_ps)
IF_ROC = IF(wma_ROC)*100
//RSI Calculation, Smoothing, Inverse Fisher Transformation
raw_RSI=0.1*(rsi(close,RSI_pm)-50)
wma_RSI=wma(raw_RSI,RSI_ps)
IF_RSI = IF(wma_RSI)*100
VI_long = roc_VIP >roc_VIM
VI_short = roc_VIM >roc_VIP
RSI_long = IF_RSI > 80
RSI_short = IF_RSI < -80
ROC_long = IF_ROC > 75
ROC_short = IF_ROC < -75
longCondition = year >= 2018 and VI_long and ROC_long and RSI_long
if (longCondition)
strategy.entry("BUY", strategy.long)
shortCondition = year >= 2018 and VI_short and ROC_short and RSI_short
if (shortCondition)
strategy.entry("SELL", strategy.short)