
Überblick
Die Multiple Average Line Return MACD-Trendbestätigungsstrategie ist ein Trend-Trading-System, das ein Ebenen-System, eine Preisrückkehr und einen MACD-Indikator kombiniert. Die Kernidee der Strategie besteht darin, Handelschancen in der Nähe des Preisrückgangs auf die langfristige Mittellinie (die 200⁄250-Mittellinie) zu suchen und den MACD-Indikator als Einstiegsbestätigungssignal zu verwenden. Die Strategie verwendet gleichzeitig mehrere versteckte Ebenen als Hilfsfilterbedingungen und eine dynamische Stop-Loss- und Fixed-Risk-Return-Verhältnis-Einstellung auf Basis von ATR, um ein vollständiges Handelssystem zu bilden.
Strategieprinzip
Die Strategie basiert auf folgenden Kernprinzipien:
- Trendbeurteilung: Die relative Position der 20er- und 250er-Grenze wird verwendet, um die Gesamttrend des Marktes zu bestimmen. Wenn die 20er-Grenze oberhalb der 250er-Grenze liegt, wird der Markt als aufsteigend angesehen. Wenn die 20er-Grenze unterhalb der 250er-Grenze liegt, wird der Markt als absteigend angesehen.
- Preisrückkehr: Die Strategie sucht nur nach Einstiegsmöglichkeiten, wenn der Preis in der Nähe des langfristigen Durchschnitts zurückkehrt (das 250-Tage-Durchschnitts), basierend auf der Durchschnittsrückkehrtheorie, dass der Preis schließlich zum Durchschnittswert zurückkehrt.
- Eintrittsbedingungen: Durch MACD-Kreuzung als Eintrittssignal ausgelöst, kombiniert mit einer linearen Positionsfilterung.
- Hidden Average Filter: Die Strategie verwendet drei zusätzliche “Hidden Average Lines” (die 2-Tage-, 100-Tage- und 300-Tage-Mittel), um eine Einstiegsfenster zu erstellen, bei dem der Preis zwischen einer bestimmten Mittellinie liegen muss.
- Risikomanagement: Dynamische Stop-Loss-Anforderungen basierend auf der ATR, mit dem Default-ATR von 5x, und automatische Berechnung des Gewinnziels mit dem vorgegebenen Risiko-Rendite-Verhältnis (Default 1.5)
Mehrfache Teilnahmebedingungen:
- 20 liegt oberhalb der 250 (Bestätigung des Aufwärtstrends)
- Die 2-Tage-Durchschnittslinie liegt oberhalb der 300-Tage-Durchschnittslinie und die 2-Tage-Durchschnittslinie liegt unterhalb der 100-Tage-Durchschnittslinie.
- MACD-Linien durch Signallinien (Beweis der Dynamikveränderung)
Eintrittsbedingungen:
- 20 liegt unterhalb der 250 (bestätigt Abwärtstrend)
- Die 2-Tage-Mittellinie liegt unter der 300-Tage-Mittellinie und die 2-Tage-Mittellinie liegt über der 100-Tage-Mittellinie (Bestätigung der Preisrückkehrzone)
- MACD unterhalb der Signallinie (Beweis der Dynamikveränderung)
Strategische Vorteile
- Die Strategie respektiert die Richtung des mittleren und langen Trends (durch die 20⁄250-Gewinnlinie) und erfasst die besseren Einstiegspunkte bei einer Preisrückkehr, wodurch das Risiko eines Aufholens oder eines Abschreibens verringert wird.
- Genaue Eintrittsbereiche: Durch die Kombinationsfilterung von mehreren Gleichlinien wird ein relativ genaues Eintrittsfenster geschaffen, wodurch Fehlsignale reduziert werden.
- Dynamisches Risikomanagement: Die Stop-Loss-Einstellung basierend auf ATR ermöglicht es der Strategie, die Risikotheke automatisch an die Marktvolatilität anzupassen, indem sie einen lockeren Stop-Loss in einem hoch-volatilen Markt und einen festeren Stop-Loss in einem niedrig-volatilen Markt setzt.
- Systematische Gewinnziele: Subjektive Beurteilungen werden durch die automatische Berechnung des Zielpreises vermieden.
- Signalfiltermechanismus: Cross-Verifizierung von mehreren Bedingungen (Gleichlinienposition + MACD-Kreuzung) verringert die Wahrscheinlichkeit eines falschen Signals.
- Visuelle Unterstützung: Die Strategie erlaubt es dem Händler, die Eintrittschancen visuell zu erkennen, indem er die Hintergrundfarben markiert, wenn die Eintrittsbedingungen erfüllt sind.
Strategisches Risiko
- Durchschnittliche Verzögerung: Durchschnittliche Verzögerung ist ein Verzögerungsindikator, der in einem sich schnell verändernden Markt möglicherweise nicht rechtzeitig auf Preisänderungen reagiert, was zu einer Verzögerung der Ein- und Ausstiegssignale führt. Lösung: Eine Anpassung der Parameter der Durchschnittlichen Verzögerung kann in Betracht gezogen werden, z. B. mit einem kürzeren EMA1 oder einer höheren Gewichtung wie der Hull-Durchschnittliche.
- Komplexe Bedingungen führen zu seltenen Handelsmöglichkeiten: Die Überlagerung von mehreren Einstiegsbedingungen kann dazu führen, dass die tatsächlichen Handelssignale relativ selten sind, insbesondere in einem bewegten Markt. Lösungsvorschlag: Die Einstiegsbedingungen können für verschiedene Marktbedingungen optimiert oder zusätzliche Einstiegslogiken hinzugefügt werden.
- Einschränkungen der festen RRR: Die vorgegebenen festen RRRs sind möglicherweise nicht für alle Marktumstände geeignet, können bei starken Trends zu früh profitieren und können in schwankenden Märkten dazu führen, dass die Zielpreise schwer zu erreichen sind. Lösungen: Es kann in Erwägung gezogen werden, die RRRs dynamisch anzupassen oder eine Batch-Profit-Strategie einzuführen.
- Parameteränderungsempfindlich: Die Strategie verwendet mehrere Mittellinien und MACD-Parameter, und eine Überoptimierung kann zu einem Risiko einer Überpassung führen. Lösung: Stabilitätstests durchführen, um sicherzustellen, dass die Strategie bei geringen Parameteränderungen stabil bleibt.
- Fehlende Marktumfeldfilterung: Die Strategie identifiziert keine Mechanismen für die Gesamtmarktumgebung (z. B. Trendstärke, Schwankungsbereich usw.) und kann unter unangemessenen Marktbedingungen Signale erzeugen. Lösung: Hinzufügen von Filtern für die Marktumgebung, wie z. B. ADX-Indikatoren, um die Trendstärke zu bestimmen oder die Schwankungsrate zu kontrollieren.
Richtung der Strategieoptimierung
- Dynamische Anpassung des Risikos an die Rendite: Das Risikos an die Rendite kann automatisch an die Marktvolatilität oder die Trendstärke angepasst werden, z. B. mit einem höheren Risikosatz in einem starken Trendmarkt und einem niedrigeren Risikosatz in einem wackligen Markt. Dadurch kann die Strategie besser an unterschiedliche Marktumstände angepasst werden und die Anpassungsfähigkeit verbessert werden.
- Erhöhung der Marktumgebung Filter: Die Einführung von zusätzlichen Indikatoren wie ADX (Average Trend Indicator), um die Stärke des Trends zu beurteilen, und nur dann zu handeln, wenn der Trend eindeutig ist. Sie können auch auf der Grundlage von VIX oder ATR-Bereich, um die Umgebung der Volatilität zu beurteilen, um zu vermeiden, in einem Markt zu handeln, in dem zu viel oder zu wenig Volatilität ist.
- Die Strategie des Teilgewinns: Es kann eine Strategie des Teilgewinns implementiert werden, z. B. das Auslagern eines Teils der Positionen, wenn das Ziel von 0.5R, 1R und Endziel erreicht wird, um einen Teil des Gewinns zu sperren und einen Teil der Positionen weiterhin potenzielle Gewinne zu erzielen.
- Verbesserte Durchschnittslinien: Versuchen Sie, eine Adaptive Durchschnittslinie wie die KAMA (Kafman Adaptive Moving Average) oder die Hull Durchschnittslinie als Ersatz für die Standard-EMA zu verwenden, um die Rückständigkeit der Durchschnittslinie zu verringern und auf Preisänderungen schneller zu reagieren.
- Integrierte Verkehrsbestätigung: Erhöhung der Verkehrsbestätigungsbedingungen bei der Erzeugung des Eingangssignals, z. B. die Anforderung einer zusätzlichen Verkehrsbestätigung bei der MACD-Kreuzung, um die Signalzuverlässigkeit zu erhöhen.
- Zeitfilter hinzugefügt: Ein Zeitfilter kann hinzugefügt werden, um zu vermeiden, dass der Handel in Zeiten mit hoher Volatilität oder schlechter Liquidität stattfindet, wie etwa eine Stunde vor dem Markteintritt oder -schluss.
- Optimierte Stop-Loss-Mechanismen: Es kann ein Tracking-Stop statt eines festen Stop-Losses implementiert werden, insbesondere nach Erreichen eines gewissen Niveaus der Gewinne, um den Schutz von bereits profitablen Aktien zu maximieren.
Zusammenfassen
Die MACD-Strategie ist ein integriertes Handelssystem, das mehrere Methoden der technischen Analyse miteinander verbindet. Ihr Hauptvorteil liegt in der Kombination von Trendurteilung, Preisrückgangstheorie, Dynamikbestätigung und systematischem Risikomanagement. Die Strategie identifiziert die Richtung des Gesamttrends durch ein Gleichgewichtssystem, sucht nach Eintrittspunkten mit hoher Gewinnrate durch einen Mechanismus in der Nähe der Rückkehr des Preises zum langfristigen Mittelwert und verwendet die MACD als Dynamikbestätigungssignal, um falsche Signale zu reduzieren.
Diese Strategie ist besonders geeignet für mittel- und langfristige Trendmärkte und bietet die Möglichkeit, nach einer Preisrückführung in einem starken Trend die Richtung des Trends zu verfolgen. Die Strategie birgt jedoch auch potenzielle Risiken wie Durchschnittsrückstand, geringe Handelsmöglichkeiten und muss durch Filterung der Marktumgebung und dynamische Risikomanagement optimiert werden.
Durch die Hinzufügung von Filtermechanismen für die Marktumgebung, die dynamische Anpassung des Risikorendite-Verhältnisses und die Verbesserung des Gleichgewichtssystems wird die Strategie die Stabilität und Anpassungsfähigkeit weiter verbessern und zu einem umfassenderen und effektiveren Handelssystem werden. Für Investoren, die systematische Geschäfte anstreben, bietet diese Strategie, die mehrere technische Kennzahlen kombiniert und über eine vollständige Risikomanagement-Mechanismus verfügt, einen Handelsrahmen, der in Betracht gezogen werden sollte.
Strategiequellcode
/*backtest
start: 2025-01-01 00:00:00
end: 2025-03-27 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Price Near 200 EMA", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// === User Inputs ===
ema1Length = input(20, title="EMA 1 Length") // Main EMA (Trend)
ema2Length = input(250, title="EMA 2 Length") // Long-term EMA
macdFastLength = input(12, title="MACD Fast Length")
macdSlowLength = input(26, title="MACD Slow Length")
macdSignalLength = input(9, title="MACD Signal Length")
rrRatio = input.float(1.5, title="Risk to Reward Ratio", minval=1, step=0.1)
atrMultiplier = input.float(5, title="ATR Multiplier for SL", minval=1, step=0.1) // Default to 5x ATR
atrLength = input(14, title="ATR Length") // User-defined ATR length
// === Hidden EMA Lengths (Hardcoded) ===
ema3Length = 2 // Fast EMA (Hidden)
ema4Length = 100 // Medium EMA (Hidden)
ema5Length = 300 // Long EMA (Hidden)
// === EMA Calculations ===
ema1 = ta.ema(close, ema1Length) // 20 EMA
ema2 = ta.ema(close, ema2Length) // 250 EMA
ema3 = ta.ema(close, ema3Length) // 2 EMA (Hidden)
ema4 = ta.ema(close, ema4Length) // 100 EMA (Hidden)
ema5 = ta.ema(close, ema5Length) // 300 EMA (Hidden)
// === MACD Calculation ===
[macdLine, signalLine, _] = ta.macd(close, macdFastLength, macdSlowLength, macdSignalLength)
macdBullish = ta.crossover(macdLine, signalLine)
macdBearish = ta.crossunder(macdLine, signalLine)
// === ATR for Dynamic Stop Loss ===
atrValue = ta.atr(atrLength)
// === Long Conditions ===
bullishCondition1 = ema1 > ema2
bullishCondition2 = ema3 > ema5 and ema3 < ema4
bullishEntry = bullishCondition1 and bullishCondition2 and macdBullish
// === Short Conditions ===
bearishCondition1 = ema1 < ema2
bearishCondition2 = ema3 < ema5 and ema3 > ema4
bearishEntry = bearishCondition1 and bearishCondition2 and macdBearish
// === Calculate Stop Loss and Target Using ATR ===
longStopLoss = close - atrValue * atrMultiplier
longTargetPrice = close + (close - longStopLoss) * rrRatio
shortStopLoss = close + atrValue * atrMultiplier
shortTargetPrice = close - (shortStopLoss - close) * rrRatio
// === Entry and Exit Logic ===
if bullishEntry
strategy.entry("Buy", strategy.long)
strategy.exit("TP Long", "Buy", limit=longTargetPrice, stop=longStopLoss, comment="SL/TP Long")
if bearishEntry
strategy.entry("Sell", strategy.short)
strategy.exit("TP Short", "Sell", limit=shortTargetPrice, stop=shortStopLoss, comment="SL/TP Short")
// === Plotting Only Visible EMAs ===
plot(ema1, title="EMA 1", color=color.blue)
plot(ema2, title="EMA 2", color=color.red)
// === Background Highlight for Entries ===
bgcolor(bullishEntry ? color.new(color.green, 90) : na, title="Bullish Background")
bgcolor(bearishEntry ? color.new(color.red, 90) : na, title="Bearish Background")