리소스 로딩... 로딩...

MACD 트렌드 전략

저자:차오장날짜: 2023-11-24 15:51:39
태그:

img

전반적인 설명

MACD 트렌드를 따르는 전략은 수익 트렌드를 따르기 위해 MACD 지표와 신호 라인의 황금 십자 및 죽은 십자 계산을 통해 트렌드를 판단합니다.

전략 원칙

이 전략은 트렌드 방향을 결정하기 위해 MACD 지표에 기반합니다. MACD 지표는 트렌드를 따르는 모멘텀 지표이며, MACD 라인, 신호 라인 및 히스토그램으로 구성됩니다. MACD와 신호 라인의 황금 십자가는 잠재적 인 황소 시장을 시사하고, 죽은 십자가는 잠재적 인 곰 시장을 시사합니다. 히스토그램은 두 라인 사이의 차이를 나타내고 색상의 변화를 통해 분리를 나타내고 속도를 변화시킵니다.

히스토그램이 음에서 양으로 상승할 때, 상승 추세가 시작될 수 있음을 나타내는 황금 십자 신호가 생성되며, 긴 포지션이 구축될 수 있습니다. 히스토그램이 긍정적에서 부정으로 전환되면, 상승 추세가 최고가 될 수 있음을 나타내는 죽은 십자 신호가 생성되며, 긴 포지션이 종료되거나 짧은 포지션이 구축 될 수 있습니다.

이점 분석

  • 비교적 높은 승률을 가진 트렌드를 판단하기 위해 이중 평형 라인의 황금 / 죽은 교차를 사용
  • 히스토그램은 MACD 지표의 진행과 속도를 명확하게 나타냅니다.
  • 최적화를 위한 큰 매개 변수 조정 공간
  • 가짜 신호를 필터링하기 위해 다른 지표와 결합 할 수 있습니다.

위험 과 최적화

  • 어느 정도 뒤떨어져 있습니다.
  • 가짜 신호를 생성할 수 있습니다.
  • MA, KD 등으로 트렌드를 확인해보세요.
  • 최적의 구성을 위해 매개 변수를 조정

결론

전략에 따른 MACD 트렌드는 전반적으로 트렌드를 결정하는 비교적 신뢰할 수있는 방법입니다. 매개 변수를 최적화하고 다른 지표와 확인함으로써 가짜 신호 비율이 크게 감소하여 더 높은 전략 이윤을 얻을 수 있습니다. 전략 논리는 간단하고 이해하기 쉽기 때문에 알고리즘 트레이딩 초보자의 첫 번째 선택입니다.


/*backtest
start: 2022-11-17 00:00:00
end: 2023-11-23 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("MACD")

// Getting inputs
fastLength = input(title="Fast Length",  defval=12)
slowlength = input(title="Slow Length",  defval=26)
src = input(title="Source",  defval=close)
signalLength = input(title="Signal Smoothing",  minval = 1, maxval = 50, defval = 9)

// Calculating
macd = ema(close, fastLength) - ema(close, slowlength)
signal = ema(macd, signalLength)
delta = macd - signal

// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00

// Plot histogram
plot(delta, title="Histogram", style=columns, color=(delta>=0 ? (delta[1] < delta ? col_grow_above : col_fall_above) : (delta[1] < delta ? col_grow_below : col_fall_below) ), transp=0 )
plot(macd, title="MACD", color=col_macd, transp=0)
plot(signal, title="Signal", color=col_signal, transp=0)

// Plot orders
if (crossover(delta, 0))
    strategy.entry("buy", strategy.long)
if (crossunder(delta, 0))
    strategy.entry("sell", strategy.short)







더 많은