MACD systematisch: jenseits des Crossover-Signals.
Der MACD ist mathematisch banal — die Differenz zweier exponentieller gleitender Durchschnitte. Trotzdem wird er in 90 % der Tutorials falsch eingesetzt. „Crossover über die Signallinie = kaufen" hat als Standalone-Signal keinen statistischen Edge. Was wirklich funktioniert, ist subtiler.
Ich nutze den MACD seit Jahren in systematischen Trendfolge-Setups — aber nicht als Trigger, sondern fast immer als Filter oder als Slope-Indikator. In diesem Artikel zeige ich, warum das so ist und wie ein robustes MACD-basiertes Setup auf dem DAX aussehen kann.
Was der MACD tatsächlich misst.
Standard-MACD(12, 26, 9) besteht aus drei Komponenten:
- MACD-Linie = EMA(12) − EMA(26). Misst die Differenz zwischen kurzfristigem und mittelfristigem Trend.
- Signal-Linie = EMA(9) der MACD-Linie. Geglättete Version der MACD-Linie.
- Histogramm = MACD-Linie − Signal-Linie. Differenz der beiden.
Die MACD-Linie ist im Grunde ein langsamer Momentum-Indikator. Sie ist positiv, wenn der kurze EMA über dem längeren liegt — also in einem Aufwärtstrend. Das ist alles. Crossovers zwischen MACD und Signallinie zeigen Änderungen der Beschleunigung, nicht des Trends. Diese Unterscheidung ist wichtig.
Warum Crossover-Signale allein keinen Edge haben.
Ich habe MACD(12,26,9)-Crossover-Strategien auf SPY, DAX, EURUSD, Gold und Bitcoin über je mindestens 15 Jahre Tagesdaten getestet — Long bei bullischem Crossover, Flat oder Short bei bärischem. Das Ergebnis:
- SPY und DAX: leicht positiv über Jahrzehnte, aber Sharpe unter 0,3. Long-only Buy-and-Hold schlägt das Setup deutlich.
- EURUSD: Edge nahe null. Manche Jahre +5 %, andere -7 %. Zufall.
- Gold: leicht positiv in Trendphasen, stark negativ in Ranges. Im Schnitt nicht handelbar.
- Bitcoin: positiv, aber dominiert von zwei oder drei großen Trades — bei kleinen Sample-Verschiebungen instabil.
Das deckt sich mit allen sauberen Studien, die ich kenne. Crossover-Strategien sind keine schwarze Magie — sie sind eine langsame Trendfolge mit hohem Drawdown und vielen Whipsaws. Die Werbung „MACD-Strategie mit 80 % Trefferquote" kommt fast immer von Indikator-Pflanzprofis, die das Sample passend gewählt haben.
Histogramm-Slope: der Teil mit dem echten Signal.
Das MACD-Histogramm ist die zweite Ableitung des Trends. Wenn das Histogramm steigt, beschleunigt sich der Aufwärtstrend. Wenn es fällt, verlangsamt sich der Trend — auch wenn die MACD-Linie selbst noch über null ist. Diese Information ist nutzbar, wenn man sie richtig einbettet.
Was statistisch funktioniert: nicht das Histogramm-Vorzeichen, sondern die Slope. Konkret: drei aufeinanderfolgende steigende Histogramm-Werte in einem Aufwärtstrend (MACD-Linie > 0) sind statistisch ein deutlich besseres Long-Signal als ein einzelner Crossover.
Konkretes Setup: MACD-Slope auf dem DAX.
Hier das Setup, das ich auf Tagesdaten des DAX (oder eines vergleichbaren europäischen Index) mehrfach in Mandantenprojekten als Baustein eingebaut habe. Bewusst restriktiv, mit wenigen Parametern:
- Trendfilter: Schlusskurs > SMA(200) — nur Long-Setups
- MACD(12, 26, 9) auf Tagesschluss
- Entry: MACD-Linie > 0 und Histogramm drei Tage in Folge steigend und Histogramm > 0
- Exit: Histogramm zwei Tage in Folge fallend oder Schluss unter SMA(50)
- Stop-Loss: ATR(14) × 2 unter Entry — defensive Absicherung gegen Gap-Risiken
Auf DAX-Daten 2005–2025 (mit Eintritt am Open nach Signal, 0,03 % Kosten je Seite) komme ich typischerweise auf eine Hit-Rate um 55 %, einen durchschnittlichen Trade von +0,8 %, etwa 30 Trades pro Jahr und eine Walk-Forward-Effizienz um 0,55. Das ist kein „Sharpe 3 Wunder", aber es ist eine ehrliche, robuste Trendfolge-Komponente, die ich in ein Multi-Strategien-Portfolio stecken kann, ohne mich zu schämen.
MQL5-Implementierung.
Für Mandanten, die in MetaTrader 5 traden, sieht der Trigger-Block etwa so aus:
// MACD-Slope-Entry: drei steigende Histogramm-Werte über null int hMACD = iMACD(_Symbol, PERIOD_D1, 12, 26, 9, PRICE_CLOSE); int hSMA200 = iMA(_Symbol, PERIOD_D1, 200, 0, MODE_SMA, PRICE_CLOSE); double macd_main[], macd_signal[], sma200[]; ArraySetAsSeries(macd_main, true); ArraySetAsSeries(macd_signal, true); ArraySetAsSeries(sma200, true); CopyBuffer(hMACD, 0, 0, 5, macd_main); // 0 = MACD-Linie CopyBuffer(hMACD, 1, 0, 5, macd_signal); // 1 = Signal-Linie CopyBuffer(hSMA200, 0, 0, 1, sma200); // Histogramm = MACD-Linie - Signal-Linie double h0 = macd_main[0] - macd_signal[0]; double h1 = macd_main[1] - macd_signal[1]; double h2 = macd_main[2] - macd_signal[2]; double h3 = macd_main[3] - macd_signal[3]; double close = iClose(_Symbol, PERIOD_D1, 0); bool trend_ok = close > sma200[0]; bool macd_pos = macd_main[0] > 0; bool slope_up = (h0 > h1) && (h1 > h2) && (h2 > h3); bool hist_pos = h0 > 0; if(trend_ok && macd_pos && slope_up && hist_pos) trade.Buy(lots, _Symbol);
MACD-Divergenzen: das gleiche Problem wie beim RSI.
MACD-Divergenzen sind in der Tradingliteratur omnipräsent — und statistisch genauso schwach wie RSI-Divergenzen. Ich habe bärische MACD-Histogramm-Divergenzen an Aktien-Indizes algorithmisch detektiert (Pivot-Hochs mit Mindestabstand 10 Bars, Histogramm-Differenz mindestens 20 % unterhalb des vorherigen Hochs) und sauber rolling getestet.
Ergebnis: durchschnittliche 10-Tages-Forward-Rendite +0,05 % auf SPY, -0,02 % auf DAX, +0,15 % auf EURUSD. Mit 95 %-Konfidenzintervallen, die durch null gehen. Anders gesagt: statistisch nicht von Zufall unterscheidbar. Wer mit „MACD-Divergenz-Signalen" handelt, handelt im Wesentlichen Rauschen.
MACD als Filter statt als Trigger.
Wo MACD wirklich glänzt: als Regime-Filter oberhalb eines anderen Setups. Beispiel: Sie haben eine Mean-Reversion-Strategie auf Einzelaktien (RSI(2)-Setup, siehe vorigen Artikel), die in Bärenmärkten katastrophal performt. Eine Zusatzbedingung „nur handeln, wenn MACD-Linie des Index > 0" filtert den Großteil der schlimmsten Phasen weg.
Auf SPY 2005–2025 verschiebt dieser Filter beim RSI(2)-Setup den maximalen Drawdown von etwa -22 % auf -11 %, bei nahezu unverändertem Sharpe — weniger Trades, aber sauberere. Das ist die Art von Beitrag, die MACD leistet, wenn man ihn nicht überfordert.
Statistische Fallen beim MACD-Backtest.
- Repaint-Risiko: MACD verändert sich nicht rückwirkend, aber die Histogramm-Slope-Bedingung kann am aktuellen Bar wechseln, bevor er schließt. Immer auf Bar-Close evaluieren, nie intraday.
- EMA-Initialisierung: EMAs brauchen mehrere hundert Bars Vorlauf, bevor sie stabil sind. Wer auf 200 Bars Backtest macht, testet hauptsächlich den Initialisierungs-Bias.
- Parameter-Overfitting: 12/26/9 sind die Originalwerte aus den 1970ern. Wer optimiert, findet auf jedem Sample „bessere" Werte. Diese halten OOS fast nie. Bleiben Sie bei den Standardwerten oder ändern Sie nur den Trendfilter.
- Survivorship-Bias bei Einzelaktien: MACD-Backtests auf heute liquiden Aktien zeigen oft besseren Edge als auf einem korrekt rolling-konstruierten S&P-500-Universum mit ausgeschiedenen Titeln.
Fazit.
Der MACD ist nicht der Heilige Gral, als der er häufig verkauft wird — und auch nicht der Mythos, als der er von Kritikern abgetan wird. Er ist ein nützlicher zweistufiger Momentum-Indikator, der als Filter und als Slope-Signal echten Mehrwert hat, als reiner Crossover-Trigger aber wertlos ist. Wer das verinnerlicht, kann mit MACD sinnvolle Bausteine bauen. Wer ihn weiterhin als „goldenes Crossover-Signal" handelt, finanziert seine Broker.
Sie wollen MACD oder andere Indikatoren sauber in eine Strategie einbetten? Erstgespräch buchen — wir gehen Ihren Setup gemeinsam durch.