EMA und MACD Quantitative Strategie mit doppelter Funktion und Marktführerschaft

Schriftsteller:ChaoZhang, Datum: 2023-12-12 12:13:25
Tags:

img

Übersicht

Diese Strategie verwendet hauptsächlich die gleitende Durchschnittslinie der EMA und den MACD-Indikator, um die Veränderungen in den Marktmustern zu bestimmen und Impulshandelsstrategien durchzuführen. Die Kernidee besteht darin, lang zu gehen, wenn die kurzfristige EMA-Linie über die langfristige EMA-Linie kreuzt und die MACD gleichzeitig über 0 kreuzt, und kurz zu gehen, wenn die kurzfristige EMA unter die langfristige EMA und die MACD gleichzeitig unter 0 kreuzt.

Grundsätze

Diese Strategie integriert den gleitenden Durchschnittslinieindikator und den MACD-Indikator.

Zunächst verwendet es zwei EMA-Indikatoren mit unterschiedlichen Zykluslängen, einer ist die 25-Zyklus-EMA-Linie und der andere ist die 50-Zyklus-EMA-Linie. Die 25-Zyklus-EMA-Linie kann kurzfristige Trends widerspiegeln, während die 50-Zyklus-EMA-Linie mittelfristige und langfristige Trends widerspiegelt. Wenn die kurzfristige EMA-Linie über die langfristige EMA-Linie von unten kreuzt, zeigt sie an, dass sich der Markt von Abstieg nach Aufwärts dreht, was ein goldenes Kreuzsignal für den Long-Going ist. Wenn die kurzfristige EMA von oben unter die langfristige EMA kreuzt, zeigt sie an, dass sich der Markt von oben nach unten dreht, was ein Todeskreuzsignal für den Shorting ist.

Gleichzeitig enthält die Strategie auch MACD-Indikatorsignale. Der MACD-Indikator enthält eine DIF-Linie und eine DEA-Linie, die den Unterschied zwischen kurzfristigen und langfristigen exponentiellen gleitenden Durchschnitten darstellen, berechnet durch doppelte EMAs. Diese Strategie setzt den DIF als den Unterschied zwischen 12-Tage-EMA und 26-Tage-EMA. Die DEA-Linie ist der 9-Tage-exponentielle gleitende Durchschnitt des DIF. Die DIF-Linie repräsentiert die Dynamik, während die DEA-Linie den MACD-Durchschnitt darstellt. Wenn der DIF von unten über die DEA-Linie kreuzt, erzeugt er ein Kaufsignal.

Bei der Kombination dieser beiden Indikatoren wird ein langes Eingangssignal erzeugt, wenn die 25-Tage-EMA ein goldenes Kreuz der 50-Tage-EMA hat, während die MACDs DIF-Linie über die DEA-Linie kreuzt.

Analyse der Vorteile

Dies ist eine sehr typische Doppelspurstrategie, die mit dem MACD-Indikator integriert wird, um zuverlässigere Handelssignale mit folgenden Vorteilen zu generieren:

  1. Die Verwendung von doppelten EMA-Linien kann Whipsaws und falsche Ausbrüche vermeiden, um zuverlässigere Handelssignale zu generieren.

  2. Durch die Integration des MACD-Indikators können Handelssignale weiter überprüft und das Risiko falscher EMA-Doppelspursignale vermieden werden, wodurch die praktische Wirksamkeit der Strategie verbessert wird.

  3. Bei der Verwendung der 25- und 50-Tage-Linie als schnelle und langsame Linie ist die Parameterwahl genauer und kann bedeutende Trendveränderungen in mittelfristigen und kurzfristigen Zyklen erfassen.

  4. Durch die Verfolgung von Dynamik und einer Mindset der mittleren Umkehrung kann diese Strategie den Referenzindex übertreffen und bei starken Auf- und Abwärtstrends auf dem breiteren Markt erhebliche Renditen erzielen.

  5. Die Strategielogik ist einfach und unkompliziert, leicht verständlich und umsetzbar, für quantitative Anfänger geeignet.

  6. Die Parameter können sorgfältig optimiert werden, um die Strategie besser an verschiedene Produkte und Marktumgebungen anzupassen.

Risikoanalyse

Für diese Strategie gibt es noch einige Risiken, die es zu beachten gilt:

  1. Die Möglichkeit falscher EMA-Signale bleibt bestehen, bei gewaltsamen Marktbewegungen kann es jedoch noch vorkommen.

  2. Die MACD-Parameter müssen kontinuierlich optimiert und angepasst werden, da sonst falsche Signale oder Signalverzögerungen auftreten können.

  3. Es ist vorsichtig zu sein, ob die Einstellung des Stop-Loss-Punkts angemessen ist, um ineffektive Durchbrüche zu vermeiden, die größere Verluste verursachen.

  4. Es ist notwendig, auf Veränderungen des Marktes und des politischen Umfelds zu achten, um systemische Risiken zu vermeiden, die größere Verluste verursachen.

  5. Notwendigkeit, die Größe der Positionen und den Hebelwert zu kontrollieren, um das Risiko einer Zwangsliquidation durch einseitige Trends zu vermeiden.

Optimierungsrichtlinien

Diese Strategie kann auch in folgenden Aspekten optimiert werden:

  1. Testen Sie genauere Parameterkombinationen mit höherer praktischer Effizienz, z. B. mit 20- und 60-Tage-EMA-Linien als Handelsspuren, wobei DIF die Differenz zwischen 10-Tage-EMA und 20-Tage-EMA darstellt.

  2. Erhöhung der Bestätigung durch Handelsvolumenindikatoren, um falsche Ausbrüche mit geringem Volumen zu vermeiden.

  3. Einbeziehung von Volatilitätsindikatoren wie ATR zur Bestimmung wissenschaftlicher Stop-Loss-Methoden.

  4. Verwenden von Algorithmen für maschinelles Lernen, um Parameter automatisch zu optimieren, um sich dynamisch an sich ändernde Marktumgebungen anzupassen.

  5. Hinzufügen eines Positionsgrößenkontrollemoduls zur dynamischen Anpassung der Größen auf der Grundlage von Strategieleistung und Metriken.

  6. Kann Strategiesignale auf höheren Zeitplänen graphisieren, um Entscheidungen über längerfristige Richtungen zu unterstützen.

Zusammenfassung

Diese Strategie integriert die Stärken von gleitenden Durchschnittslinie-Indikatoren und MACD-Indikatoren, indem sie qualitativ hochwertigere Kerzenmuster durch doppelte EMA-Linien beurteilt, kombiniert mit DIF und DEA, die auf der MACD-Impulsrichtung übereinstimmen, um eine stabile und effiziente Impulshandelsstrategie zu bilden. Die Logik ist einfach und leicht zu verstehen und zu optimieren, sehr geeignet für Quant-Händler, um zu beginnen und umzusetzen. Durch kontinuierliches Testen und Optimieren kann diese Strategie zu einer der Wertstrategien werden, die Indizes übertrifft.


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

//@version=4
strategy(title="EMA+MACD", shorttitle="EMA+MACD", overlay=true)
// Getting inputs
fast_length = input(title="Fast Length", type=input.integer, defval=12)
slow_length = input(title="Slow Length", type=input.integer, defval=26)
src = input(title="Source", type=input.source, defval=close)


signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9)
sma_source = input(title="Oscillator MA Type", type=input.string, defval="EMA", options=["SMA", "EMA"])
sma_signal = input(title="Signal Line MA Type", type=input.string, defval="EMA", options=["SMA", "EMA"])

fast_ma = sma_source == "SMA" ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source == "SMA" ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal == "SMA" ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal
len1 = input(title="Len Ema 1 ",type=input.integer,defval=25)
len2 = input(title="Len Ema 2 ",type=input.integer,defval=50)
ema1 = ema(src,len1)
ema2 = ema(src,len2)

bull = crossover(ema1,ema2) and macd > 0
bear = crossover(ema2,ema1) and macd < 0
l1 = bull ? label.new(x=bar_index,y=low,yloc=yloc.belowbar,text="BUY",color=color.green,textcolor=color.white,style=label.style_triangleup) : na
l2 = bear ? label.new(x=bar_index,y=high,yloc=yloc.abovebar,text="SELL",color=color.red,textcolor=color.white,style=label.style_triangledown) : na


strategy.entry("LONG",strategy.long,when=bull)
strategy.entry("SHORT",strategy.short,when=bear)




Mehr