MACD 추세 추종 전략


생성 날짜: 2023-11-15 17:08:15 마지막으로 수정됨: 2023-11-15 17:08:15
복사: 0 클릭수: 743
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

MACD 추세 추종 전략

개요

이 전략은 MACD 트렌드 추적 전략이라고 불리며, MACD 지표를 사용하여 가격 트렌드를 판단하고 트렌드를 따라 거래하는 양적 전략이다. 이 전략은 중·장기 트렌드를 포착하고, 트렌드가 변할 때 적시에 포지션을 조정하는 것을 목표로 한다.

전략 원칙

이 전략은 MACD 지표를 사용하여 가격 추세를 판단한다. MACD 지표는 단선 EMA ((12일) 와 느린 선 EMA ((26일) 로 구성된 돌파 지표이며, 이들의 이차 값은 MACD 기둥 모양의 선을 구성하며, 기둥 모양의 선의 9일 EMA는 MACD의 신호 라인을 구성한다. MACD 라인에 신호 라인을 통과하면 금 포크가 상승 추세에 있음을 나타냅니다. MACD 라인에 신호 라인을 통과하면 사다리 포크가 다운 추세에 있음을 나타냅니다.

이 전략은 먼저 MACD 라인과 신호 라인을 계산한 다음 MACD 라인과 신호 라인의 차등값 델타를 계산한다. 델타가 0을 통과할 때 구매 신호가 발생하고, 델타가 0을 통과할 때 판매 신호가 발생하며, 이 두 신호에 따라 포지션을 조정한다. 노이즈를 필터링하기 위해, 전략은 또한 EMA 평준선을 도입하여, 가격이 그 평준선을 돌파할 때만 진정한 거래 신호를 발생시킨다.

이 전략의 논리는 다음과 같습니다.

  1. MACD 라인, 신호 라인, 변수 델타를 계산합니다.
  2. 델타가 0이거나 0이 될 때 트렌드 회전을 확인합니다.
  3. 필터로 EMA 평균선을 계산합니다.
  4. 델타가 0을 넘어서 EMA보다 높을 때 구매 신호가 생성됩니다.
  5. 델타가 0을 넘어서 EMA보다 낮을 때 판매 신호가 발생합니다.

이러한 설계로, 이 전략은 중·장선 추세에 따라 거래할 수 있고, 추세가 변할 때 적시에 포지션을 조정할 수 있으며, 단기시장 소음으로 오해받지 않도록 한다.

전략적 이점

이 전략에는 다음과 같은 장점이 있습니다.

  1. MACD를 사용하여 트렌드 전환점을 판단하여 구매 및 판매 시기를 정확하게 판단합니다.
  2. EMA 필터를 사용하여 단기시장 소음에 방해받지 마십시오.
  3. 중·장기적 추세에 따라 거래하고, 변동하는 시장에 갇히지 마십시오.
  4. 거래 논리는 간단하고 명확하며, 코드를 쉽게 이해하고 수정할 수 있습니다.
  5. 파라미터를 통해 자유 제어 전략의 거래 빈도를 조정할 수 있습니다.
  6. 자금 사용률이 높아서 중·장기 추세를 충분히 추적할 수 있다.

전략적 위험

이 전략에는 몇 가지 위험도 있습니다.

  1. MACD는 트렌드를 따르는 지표로, 변동이 있을 때 잘못된 신호가 발생하기 쉽다.
  2. EMA 필터는 일부 거래 기회를 필터링 할 수 있습니다.
  3. 잘못된 매개 변수 설정으로 인해 거래 빈도가 너무 높거나 너무 낮을 수 있습니다.
  4. 단기 시장 변화에 반응할 수 없고, 급격한 사건에 민감하지 않다.
  5. 트렌드 전환을 놓칠 수 있는 최적의 시점

대책:

  1. 최적화 변수, EMA 필터 변수를 조정하여 오판을 줄인다
  2. 다른 지표들과 함께 더 많은 거래 기회를 발견할 수 있습니다.
  3. 단위 손실을 제어하기 위해 중지 설정
  4. 적당히 짧은 지분 기간, 전략의 유연성을 보장

전략 최적화

이 전략은 다음과 같은 부분에서 최적화될 수 있습니다.

  1. 다른 지표 판단을 추가하여 지표 포트폴리오를 형성하고 정확도를 향상시킵니다.
  2. 더 나은 리스크 관리에 대한 스티커스 스톱 패스 메커니즘
  3. 거래량 지표와 결합하여 가짜 돌파구를 피하십시오.
  4. 시장 환경에 따라 적응하는 매개 변수, 전략의 적응력을 높이는
  5. 구매 및 판매의 구체적인 논리를 최적화하고 출입 및 출퇴근 시간을 개선합니다.
  6. 단계적으로 창고를 짓고, 트렌드를 더 잘 추적하고, 위험을 줄여라

지표 조합, 손해 차단, 적응 파라미터 등의 방법을 최적화함으로써 이 전략의 효과를 크게 향상시킬 수 있다.

요약하다

전체적으로, 이 MACD 트렌드 추적 전략은 간단한 효과적인 MACD 지표로 중장선 트렌드를 판단하고, 보다 명확한 트렌드 추적 거래 논리를 설계했다. 그것은 트렌드를 포착하는 능력과 특정 위험 제어 조치를 가지고 있다. 추가적인 최적화 및 개선으로, 이 전략은 매우 실용적인 정량 거래 시스템이 될 수 있다.

전략 소스 코드
/*backtest
start: 2022-11-14 00:00:00
end: 2023-10-27 05:20:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title = "Noro's MACD Strategy v1.0", shorttitle = "MACD str 1.0", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value=100.0, pyramiding=0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(false, defval = false, title = "Short")
usefil = input(false, defval = false, title = "Use EMA filter")
lenfil = input(5, defval = 5, minval = 1, maxval = 50, title = "EMA filter period")

fastLength = input(12)
slowlength = input(26)
MACDLength = input(9)

MACD = ema(close, fastLength) - ema(close, slowlength)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD

//Signals
ema = ema(close, lenfil)
trend = crossover(delta, 0) == true ? 1 : crossunder(delta, 0) == true ? -1 : trend[1]
up = trend == 1 and (low < ema or usefil == false) ? 1 : 0
dn = trend == -1 and (high > ema or usefil == false) ? 1 : 0

plot(ema, color = black, transp = 0)

if (up == 1)
    strategy.entry("Long", strategy.long, needlong == false ? 0 : na)

if (dn == 1)
    strategy.entry("Short", strategy.short, needshort == false ? 0 : na)