Die MACD-Trend-Folge-Strategie beurteilt den Trend durch Berechnung des goldenen Kreuzes und des toten Kreuzes des MACD-Indikators und seiner Signallinie, um dem Trend zum Gewinn zu folgen.
Der MACD-Indikator ist ein trendfolgende Dynamik-Indikator, bestehend aus der MACD-Linie, Signallinie und Histogramm. Das goldene Kreuz der MACD- und Signallinien deutet auf einen potenziellen Bullenmarkt hin, während das tote Kreuz auf einen potenziellen Bärenmarkt hindeutet. Das Histogramm stellt den Unterschied zwischen den beiden Linien dar, der ihre Divergenz und sich verändernde Geschwindigkeit durch Farbwechsel anzeigt.
Wenn das Histogramm von negativ auf positiv steigt, wird ein goldenes Kreuzsignal erzeugt, das anzeigt, dass der Aufwärtstrend gerade erst begonnen hat und lange Positionen aufgebaut werden können.
Der MACD-Trend nach der Strategie insgesamt ist eine relativ zuverlässige Möglichkeit, Trends zu bestimmen. Durch die Optimierung von Parametern und die Bestätigung mit anderen Indikatoren kann die falsche Signalrate weitgehend reduziert werden, was zu einem höheren Strategiegewinn führt. Die Strategielogik ist einfach und leicht zu verstehen, was sie zur ersten Wahl für algorithmische Handelsbeginnern macht.
/*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)