Die MACD-Crossover-Handelsstrategie ist eine Trendfolgestrategie. Sie verwendet das Überschreiten von schnellen und langsamen gleitenden Durchschnittslinien als Kauf- und Verkaufssignale. Wenn die schnellen gleitenden Durchschnittslinien über die langsamen gleitenden Durchschnittslinien kreuzen, wird ein Kaufsignal generiert. Wenn die schnellen gleitenden Durchschnittslinien unter die langsamen gleitenden Durchschnittslinien kreuzen, wird ein Verkaufssignal generiert.
Der MACD-Indikator ist die Differenz zwischen zwei gleitenden Durchschnittslinien mit unterschiedlichen Parametern, die die Veränderungen in der Dynamik der Preise widerspiegeln. Insbesondere ist es die Differenz zwischen der schnellen gleitenden Durchschnittslinie (Standardparameter ist 12-Tage-Linie) und der langsamen gleitenden Durchschnittslinie (Standardparameter ist 26-Tage-Linie), die als MACD-Bar bezeichnet wird. Um Schwankungen zu beseitigen, führt der MACD-Indikator auch eine DEA-Linie oder Signallinie ein, normalerweise der 9-tägige gewichtete gleitende Durchschnitt des MACD.
Wenn der MACD-Streifen die DEA-Linie von unten nach oben durchbricht und in den positiven Bereich eintritt, zeigt er an, dass die kurzfristige Durchschnittslinie über die langfristige Durchschnittslinie kreuzt, was darauf hindeutet, dass sich der Preistrend nach oben dreht und ein Kaufsignal generiert wird. Wenn der MACD von oben nach unten durch die DEA-Linie fällt und in den negativen Bereich eintritt, zeigt er an, dass sich die kurzfristige Durchschnittslinie unter die langfristige Durchschnittslinie kreuzt und der Preistrend nach unten dreht und ein Verkaufssignal generiert.
Die Strategie verwendet die Überschneidung der MACD-Bar und der DEA-Linie, um den Zeitpunkt des Kaufs und Verkaufs zu bestimmen.
Zu den Vorteilen dieser Strategie gehören:
Diese Strategie birgt auch einige Risiken:
Um Risiken zu reduzieren, können Parameter angepasst oder mit anderen Indikatoren wie Volumen- und Volatilitätsindikatoren kombiniert werden.
Diese Strategie kann in folgenden Aspekten optimiert werden:
Parameteroptimierung, um die optimalen Parameter zu finden und gleichzeitig eine Überoptimierung zu vermeiden.
Kombination mit anderen Indikatoren zur Bildung leistungsfähigerer Kombinationsstrategien.
Die richtigen Stop-Loss- und Take-Profit-Punkte setzen, um Risiken effektiv zu kontrollieren.
Adaptive Optimierung zur Anwendung dieser Strategie auf unterschiedliche Märkte und Zeitrahmen basierend auf den tatsächlichen Bedingungen.
Die MACD-Crossover-Handelsstrategie erfasst Trendveränderungen zu geringen Kosten, indem sie den Preistrends folgt. Sie ist einfach, praktisch und einfach umzusetzen, was sie zu einer geeigneten Starterstrategie für Anfänger macht. Aber diese Strategie hat auch einige Mängel. Durch ständige Optimierung und Verbesserung kann die tatsächliche Wirkung dieser Strategie besser sein. Es lohnt sich zu empfehlen.
/*backtest start: 2022-12-29 00:00:00 end: 2024-01-04 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("MACD Strategy by Forbes",default_qty_type=strategy.percent_of_equity, default_qty_value=100, overlay=false) fastLength = input(20) slowlength = input(40) MACDLength = input(4) // === INPUT BACKTEST RANGE === FromYear = input(defval = 2011, title = "From Year", minval = 2009) FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) ToYear = input(defval = 9999, title = "To Year", minval = 2009) ToMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12) ToDay = input(defval = 31, title = "To Day", minval = 1, maxval = 31) // === FUNCTION EXAMPLE === start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window window() => true // create function "within window of time" MACD = ema(close, fastLength) - ema(close, slowlength) aMACD = ema(MACD, MACDLength) delta = MACD - aMACD // Plot colors col_grow_above = #26A69A col_grow_below = #FFCDD2 col_fall_above = #B2DFDB col_fall_below = #EF5350 f1 = plot(MACD,color=red) s1 = plot(aMACD,color=blue) plotColor = if delta > 0 delta > delta[1] ? lime : green else delta < delta[1] ? maroon : red plot(delta, color=plotColor, style=columns) if (crossover(delta, 0)) strategy.entry("Buy", true, when=window(), comment="Buy") if (crossunder(delta, 0)) strategy.close_all(when=window()) //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)