이중 이동 평균 변동성 추적 전략은 골든 크로스 데드 크로스 및 이동 평균 변동성 추적 전략의 아이디어를 통합합니다. 다른 기간과 간단한 이동 평균 (SMA) 의 교차를 계산함으로써 트렌드를 판단하기 위해 황금 십자가와 죽은 십자가를 실현합니다. 한편, 볼링거 밴드와 VIDYA 인덱스를 결합하여 시장 추세와 변동성을 판단하여 효과적인 트렌드 식별과 주요 전환점을 효율적으로 캡처합니다.
이 전략의 핵심 지표는 단순 이동 평균 (SMA), 볼링거 밴드 및 변수 지수 동적 평균 (VIDYA) 이다. 이 전략은 서로 다른 기간으로 빠른 SMA와 느린 LMA를 설정한다. 빠른 및 느린 라인의 황금 십자가는 긴 신호로 작용하고, 죽음의 십자가는 출구 신호로 작용한다. 한편, 그것은 보유 기간 동안 볼링거 밴드 이상 또는 아래에 가격의 돌파를 모니터링한다. 변동성 정보를 통합하는 VIDYA는 현재 트렌드 방향과 힘을 판단한다.
특히, 긴 신호 논리는 빠른 SMA가 느린 LMA를 넘어서고 가격이 VIDYA 곡선 위에있을 때 발생하며 상승 추세와 변동성 확장을 나타냅니다. 빠른 SMA가 느린 LMA를 넘어서거나 가격이 VIDYA 곡선 아래에 떨어지면 출구 신호가 발생하여 트렌드 역전 또는 변동성 수축을 암시합니다.
이 전략의 가장 큰 장점은 시장 상황을 판단하기 위해 이중 지표를 결합하여 의사 결정의 정확성을 향상시키는 것입니다. 구체적으로 장점은 다음과 같습니다.
요약하자면,이 전략은 트렌드, 리버전 및 변동성 차원의 정보를 통합합니다. 시장 변화에 더 빨리 반응하고 알파를 생성 할 수있는 가능성이 더 높습니다.
이 전략은 많은 장점을 가지고 있지만, 여전히 주의해야 할 몇 가지 위험이 있습니다.
위의 위험을 완화하기 위해 매개 변수 최적화, 신호 간의 우선 순위 규칙, 미끄러짐 제어 및 다른 시장 환경에서 견고성 테스트가 권장됩니다.
주요 최적화 차원은 매개 변수 조정 및 필터 상태 설정에 있습니다.
매개 변수 최적화와 규칙 정밀화 조합은 안정성과 수익성을 더욱 향상시킬 수 있습니다.
이중 이동 평균 변동성 추적 전략은 시장 조건을 결정하기 위해 여러 지표를 활용하여 가격 변동 상황을 모니터링하는 동안 트렌드 전환점을 포착합니다. 위험과 수익을 균형 잡는 매력적인 전략입니다. 매개 변수 최적화 및 워크 포워드 분석에 대한 더 많은 탐구는 라이브 거래에서 만족스러운 수익을 얻을 것으로 예상됩니다.
/*backtest start: 2024-01-29 00:00:00 end: 2024-02-28 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Combined Golden Cross and Progressive Trend Tracker", shorttitle="GCC-PTT", overlay=true) // Inputs fastMA_period = input(50, title="Fast MA Period") slowMA_period = input(200, title="Slow MA Period") src = input(close, title="Source") lengthBB = input(20, title="Bollinger Bands Length") mult = input(2.0, title="Bollinger Bands Multiplier") mavType = input.string(title="Moving Average Type", defval="VAR", options=['SMA', 'EMA', 'WMA', 'TMA', 'VAR', 'WWMA', 'ZLEMA', 'TSF']) // Calculate Moving Averages for Golden Cross fastMA = ta.sma(src, fastMA_period) slowMA = ta.sma(src, slowMA_period) bullish_cross = ta.crossover(fastMA, slowMA) bearish_cross = ta.crossunder(fastMA, slowMA) // Progressive Trend Tracker Components (Adjusted for NA assignment issue) Var_Func(src, length) => valpha = 2 / (length + 1) vud1 = src > src[1] ? src - src[1] : 0 vdd1 = src < src[1] ? src[1] - src : 0 vUD = math.sum(vud1, length) vDD = math.sum(vdd1, length) vCMO = (vUD - vDD) / (vUD + vDD) VAR = 0.0 // Adjusted here, assign an initial value VAR := ta.ema(src * math.abs(vCMO), length) VAR VAR = Var_Func(src, 14) // Example VAR calculation, adjust as needed // Bollinger Bands for dynamic support and resistance BBandTop = fastMA + mult * ta.stdev(src, lengthBB) BBandBot = fastMA - mult * ta.stdev(src, lengthBB) // Plotting plot(fastMA, color=color.blue, title="Fast MA") plot(slowMA, color=color.red, title="Slow MA") plot(BBandTop, color=color.green, title="Bollinger Band Top") plot(BBandBot, color=color.red, title="Bollinger Band Bottom") plot(VAR, color=color.purple, title="VAR", linewidth=2) // Strategy Logic (Adjusted for strategy use) // Long Entry when bullish cross and close above VAR // Exit when bearish cross or close below VAR if (bullish_cross and close > VAR) strategy.entry("CGC_PTT_Long", strategy.long) if (bearish_cross or close < VAR) strategy.close("CGC_PTT_Long")