다변수 지표 융합 전략

저자:차오장, 날짜: 2023-09-28 12:01:57
태그:

전반적인 설명

다변수 지표 융합 전략은 다양한 유형의 여러 기술적 지표를 결합하여 각자의 강점을 활용하여 더 정확하고 포괄적인 시장 평가를 수행하여 거래 결과를 향상시킵니다.

전략 논리

이 전략은 세 가지 기술 지표를 이용합니다. 변수 지수 (VI), ROC-RSI, 가격 변화율 (Price ROC).

첫째, 전략은 긍정적 변화 지표 VIP 및 부정적인 변화 지표 VIM로 구성된 VI를 계산합니다. VIP 및 VIM은 가격의 상승과 하락 힘을 개별적으로 측정합니다. VIP 및 VIM 사이의 변화율을 비교하면 미래의 가격 상승 또는 하락의 가능성을 나타냅니다.

둘째, 전략은 ROC와 RSI를 ROC-RSI 지표로 결합합니다. ROC는 더 긴 기간 동안의 가격 움직임을 측정하고, RSI는 더 짧은 기간 동안의 과잉 구매/ 과잉 판매 수준을 반영합니다. ROC-RSI는 현재 가격이 비합리적인 극단적인 영역에 있는지 여부를 결정하기 위해 두 정보를 통합합니다.

마지막으로, 가격 ROC는 VI와 ROC-RSI와 달리 가격 자체에서 동향을 평가하여 가격 움직임의 힘을 직접 반영합니다.

이 전략은 세 가지 지표가 일치할 때만 거래 신호를 생성합니다. 이것은 잠재적으로 잘못된 신호를 필터링하고 신뢰성을 향상시킵니다.

전략 의 장점

이 다변화 전략의 가장 큰 장점은 보다 포괄적이고 정확한 평가를 위해 다양한 지표의 강점을 통합하는 것입니다.

특히, VI는 구매/판매 세력을 측정하여 트렌드 변화를 포착합니다. ROC-RSI는 가격이 과열되거나 과판되는지 판단합니다. 가격 ROC는 가격 트렌드를 직접 반영합니다. 지표는 오류를 피하기 위해 서로를 확인합니다.

여러 표시자의 일치가 필요하다는 것은 또한 잘못된 신호를 필터링함으로써 신호 품질을 향상시킵니다.

요약하자면, 다변화 전략은 개별 지표의 강점을 활용하여 더 신뢰할 수 있고 정확한 거래를 위해 상호 검증을 제공합니다.

위험 과 최적화

주요 위험은 잘못된 매개 변수 설정으로 인한 상반된 지표입니다.

예를 들어, VI와 가격 ROC가 상향 신호를 주지만 ROC-RSI가 과잉 구매되면 구매 기회가 놓칠 수 있습니다.

이 전략 을 최적화 하기 위해 다음 과 같은 것 들 을 고려 해 보십시오.

  1. 거래 신호의 적절한 조화를 위해 지표 매개 변수를 조정합니다.

  2. 최적의 조합을 찾기 위해 지표와 유형을 추가/제어, 예를 들어 이동 평균을 추가합니다.

  3. 신호의 논리를 바꾸고, 대다수 신호에 거래하는 것 처럼요.

  4. 하락률을 제한하기 위해 스톱 로스를 포함합니다.

  5. 포지션 사이즈와 같은 자금 관리 최적화

  6. 다른 도구와 시간 프레임에 적용 가능한 테스트.

지속적인 최적화는 안정적인 성능을 위한 다변화 전략의 잠재력을 극대화 할 수 있습니다.

결론

다변수 지표 융합 전략은 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)
    

더 많은