이 전략은 OBV 모멘텀의 경향과 굴곡점을 결정하기 위해 OBV 지표의 MACD 지표를 계산하여 거래 신호를 생성합니다. 핵심 아이디어는 OBV MACD 히스토그램이 음 영역에서 양 영역으로 0 축을 통과 할 때 구매 신호를 생성하고, 긍정적 영역에서 음 영역으로 0 축을 통과 할 때 판매 신호를 생성하는 것입니다.
이 전략의 핵심 지표는 OBV의 MACD 지표이다. OBV 지표는 폐쇄 가격의 변화 방향과 거래량 사이의 관계를 통계적으로 분석하여 상승 동력이 강화되거나 약화되는지를 결정함으로써 주식의 추진 동력을 반영 할 수 있습니다. MACD 지표는 가격 변화의 추진 동력을 반영하기 위해 다른 이동 평균 사이의 차이를 보여줍니다. 따라서 OBV 추진 동력 지표와 MACD 추진 동력 지표를 결합하여 추진 동력의 변화 추세를 더 명확하게 판단 할 수 있습니다.
구체적으로, 이 전략은 먼저 OBV 지표를 계산하여, 일정 기간 동안 폐쇄 가격과 거래량 변화 방향 사이의 관계를 통계적으로 분석하여 OBV 동력선을 계산합니다. 다음으로, OBV 동력선을 기반으로 MACD 지표, MACD 라인, 신호 라인 및 히스토그램을 계산합니다. 마지막으로, macd 히스토그램이 마이너스 영역에서 긍정적 영역으로 0 축을 통과하면 구매 신호가 생성됩니다. 히스토그램이 긍정적 영역에서 마이너스 영역으로 0 축을 통과하면 판매 신호가 생성됩니다.
이러한 방법으로 MACD는 직관적으로 OBV 볼륨의 모멘텀 특성을 표시하고 볼륨 변화의 경향을 판단합니다. MACD의 침투는 거래 결정의 정확성을 향상시킬 수있는 거래 신호를 발행하는 데 사용됩니다.
이 전략은 OBV 볼륨 분석과 MACD 모멘텀 지표를 결합하여 볼륨 및 가격 트렌드 변화에 대한 비교적 정확한 판단을 통해 FALSE 신호를 효과적으로 필터링 할 수 있습니다. 구체적인 장점은 다음과 같습니다.
이 전략은 또한 다음과 같은 측면에서 주로 몇 가지 위험을 가지고 있습니다.
이러한 위험에 대처하기 위해 다음과 같은 조치를 취할 수 있습니다.
이 전략의 더 많은 최적화가 여전히 가능하며, 주로 다음과 같은 방향으로:
지속적인 테스트와 최적화를 통해 이 전략은 안정적이고 효율적인 양적 거래 전략이 될 수 있습니다.
이 전략은 가격 트렌드를 결정하고 거래 신호를 생성하기 위해 볼륨 분석과 모멘텀 지표를 결합한 전형적인 양적 전략이다. 가격 변동의 전환점을 명확하게 식별할 수 있으며 거래 신호는 비교적 신뢰할 수 있다. 합리적인 매개 변수 설정으로 좋은 전략 결과를 얻을 수 있다. 그러나 성능을 향상시키기 위해 지속적인 최적화로 감소해야 하는 몇 가지 위험도 있다. 일반적으로 이 전략은 양적 거래 전략에 대한 전형적인 아이디어를 제공하며, 연구와 적용할 가치가 있다.
/*backtest start: 2023-12-17 00:00:00 end: 2024-01-16 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy(title = "MACD of OBV", overlay = false) //////////////////////// OBV /////////////////////////// src = close obv = cum(change(src) > 0 ? volume : change(src) < 0 ? -volume : 0*volume) //////////////////////// OBV ////////////////////////// //////////////// MACD OF OBV //////////////////////////// sourcemacd = obv fastLength = input(12, minval=1), slowLength=input(26,minval=1) signalLength=input(9,minval=1) fastMA = ema(sourcemacd, fastLength) slowMA = ema(sourcemacd, slowLength) macd = fastMA - slowMA signal = ema(macd, signalLength) delta=macd-signal swap1 = delta>0?green:red plot(delta,color=swap1,style=columns,title='Histo',histbase=0,transp=20) p1 = plot(macd,color=blue,title='MACD Line') p2 = plot(signal,color=red,title='Signal') fill(p1, p2, color=blue) hline(0) /////////////////////////MACD OF OBV ////////////////////////// // Conditions longCond = na sellCond = na longCond := crossover(delta,0) sellCond := crossunder(delta,0) monthfrom =input(6) monthuntil =input(12) dayfrom=input(1) dayuntil=input(31) if ( longCond ) strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY") else strategy.cancel(id="BUY") if ( sellCond ) strategy.close("BUY")