Drei EMA-Trendfolgestrategien


Erstellungsdatum: 2023-11-10 11:45:30 zuletzt geändert: 2023-11-10 11:45:30
Kopie: 1 Klicks: 723
1
konzentrieren Sie sich auf
1617
Anhänger

Drei EMA-Trendfolgestrategien

Überblick

Die drei EMA-Trend-Tracking-Strategien ermöglichen das Trend-Tracking, indem sie die EMA-Mittellinie für verschiedene Perioden berechnen, um die Richtung der Preisentwicklung zu bestimmen. Die Strategie ist einfach zu implementieren und wirkt in den Varianten, in denen ein Trend sichtbar ist, deutlich.

Strategieprinzip

Die Strategie berechnet drei EMA-Mittellinien für drei verschiedene Perioden, nämlich EMA für 10, 20 und 30 Perioden. Die drei EMA-Mittellinien werden durch die Funktion ema berechnet.

Die Strategie bestimmt hauptsächlich die Richtung der drei Mittellinien. Wenn die drei Mittellinien gleichzeitig steigen, wird ein Mehrwertsignal erzeugt. Wenn die drei Mittellinien gleichzeitig fallen, wird ein Fehlwertsignal erzeugt.

Die Logik für die Beurteilung von Plus- und Minussignalen ist, dass, wenn ema1, ema2 und ema3 gleichzeitig auf der letzten K-Linie steigen, enter_long wahr ist und ein Plussignal erzeugt. Wenn ema1, ema2 und ema3 gleichzeitig auf der letzten K-Linie fallen, ist enter_short wahr und erzeugt ein Minussignal.

Die Strategie errichtet entsprechende Positionen für den Kauf und die Verringerung nach den Signalen für den Kauf und die Verringerung. Im Gegensatz zum Einstiegssignal ist die Platzierungslogik der Fall, wenn die aktuellen K-Linien von ema1, ema2 und ema3 nicht gleichzeitig ansteigen, dann ist exit_long wahr und platziert als Mehrposition.

Auf diese Weise kann die allgemeine Preisentwicklung ermittelt und eine Trendverfolgung ermöglicht werden, indem die Gleichrichtung der drei EMA-Gehälter beurteilt wird.

Strategische Vorteile

  • Die Verwendung von drei EMA-Gehältern ermöglicht eine genauere Beurteilung der Trendrichtung. Im Vergleich zu einer einzigen Durchschnittslinie sind drei EMA-Gehälter zuverlässiger für die Beurteilung von Trends und haben eine geringere Wahrscheinlichkeit für falsche Signale.

  • Die EMA ist empfindlicher auf Preisänderungen und kann Trendwechsel rechtzeitig reflektieren. Im Vergleich zu anderen Mittelwerten wie SMA ist die EMA besser geeignet, die Richtung der Tendenz zu bestimmen.

  • In Kombination mit verschiedenen Perioden EMA kann sowohl kurz- als auch mittelfristige Trends berücksichtigt werden. Die 10-Zyklus-EMA beurteilt die kurzfristigen Trends, die 20-Zyklus- und die 30-Zyklus-EMA die mittelfristigen Trends.

  • Die Strategie ist einfach zu implementieren, leicht zu verstehen und für Anfänger geeignet. Die Parameter können für verschiedene Sorten optimiert und angepasst werden.

  • Die Strategie basiert auf einer EMA-Linienoperation mit geringen Ressourcenverbrauch und ist für den Einsatz in großen Mengen geeignet.

Strategisches Risiko

  • Die Übereinstimmung der drei EMA-Gleichgewichtsrichtungen ist eine notwendige, aber nicht ausreichende Voraussetzung für die Beurteilung eines Trends. Wenn die EMA-Gleichgewichtsrichtung falsch durchbrochen wird, wird ein falsches Signal erzeugt.

  • Bei einer Trendwende ist die EMA-Gehrlinie hinter der Trendwende zurück, was zu Verlusten führen kann, da sie nicht in der Lage ist, die Trendwende rechtzeitig zu reflektieren.

  • Die EMA ist sensibel für Preisänderungen und öffnet häufige Leerpositionen, wenn es häufig zu Überschneidungen und Leerpositionen kommt.

  • In einem stark bewegten Markt kann die EMA-Grenze mehrmals in die Richtung wechseln, um die Trends nicht genau zu beurteilen. Diese Strategie wirkt nicht gut.

  • Die drei EMA-Durchschnittszyklen können entsprechend vergrößert werden, um die Wahrscheinlichkeit eines Fehlsignals zu verringern. Oder andere Indikatoren können gefälschte Durchbrüche filtern.

  • Es ist möglich, Trends zu bestätigen, Trendwendepunkte zu identifizieren und Verluste zu reduzieren. Die Stop-Loss-Punkte können entsprechend gelockert werden.

  • Die EMA-Parameter können angepasst werden, um die Häufigkeit von Off-Positions zu verringern oder durch andere Gleichgewichtsindikatoren zu ersetzen.

  • Wenn Sie einen Marktschock erkennen, können Sie die Strategie aussetzen, um einen ungültigen Handel zu vermeiden.

Optimierungsrichtung

  • Zyklusoptimierung: Anpassung der Zyklusparameter der drei EMA an die Eigenschaften der verschiedenen Sorten.

  • Filterbedingungen: Hinzufügen von MA, BOLL und anderen Indikatoren, um einen falschen EMA-Durchbruch zu vermeiden.

  • Trailing Stops: Schrittweise Verfolgung von Stops, um Gewinne zu schützen.

  • Vermögensverwaltung: Optimierung der Positionsverwaltung und Verringerung der Auswirkungen einzelner Verluste auf die Gesamtheit

  • Beurteilung der Marktentwicklung: Beurteilung der Marktschwankungen anhand von Indikatoren wie der Volatilität und Beteiligung an der Steuerungsstrategie

  • Parameter-Adaption: Die EMA-Zyklusparameter können automatisch optimiert werden, um die Strategie zu optimieren.

Zusammenfassen

Die drei EMA-Trend-Tracking-Strategien beurteilen die Preisentwicklung in Richtung der EMA-Gleichlinie und ermöglichen die automatische Trend-Tracking-Handel. Die Strategie ist einfach und praktisch, die Parameter können leicht angepasst werden und kann für die Merkmale der Sorte optimiert werden.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © QuantCT

//@version=4
strategy("PMA Strategy Idea",
         shorttitle="PMA", 
         overlay=true,
         pyramiding=0,     
         default_qty_type=strategy.percent_of_equity, 
         default_qty_value=100, 
         initial_capital=1000,           
         commission_type=strategy.commission.percent, 
         commission_value=0.075)
         
// ____ Inputs

ema1_period = input(title="EMA1 Period", defval=10)
ema2_period = input(title="EMA2 Period", defval=20)
ema3_period = input(title="EMA3 Period", defval=30)
long_only = input(title="Long Only", defval=false)
slp = input(title="Stop-loss (%)", minval=1.0, maxval=25.0, defval=5.0)
use_sl = input(title="Use Stop-Loss", defval=false)

// ____ Logic

ema1 = ema(hlc3, ema1_period)
ema2 = ema(hlc3, ema2_period)
ema3 = ema(hlc3, ema3_period)
    
enter_long = (rising(ema1, 1) and rising(ema2, 1) and rising(ema3, 1))
exit_long = not enter_long
enter_short = (falling(ema1, 1) and falling(ema2, 1) and falling(ema3, 1))
exit_short = not enter_short

strategy.entry("Long", strategy.long, when=enter_long)
strategy.close("Long", when=exit_long) 
if (not long_only)
    strategy.entry("Short", strategy.short, when=enter_short)
    strategy.close("Short", when=exit_short) 

// ____ SL

sl_long = strategy.position_avg_price * (1- (slp/100))
sl_short = strategy.position_avg_price * (1 + (slp/100))
if (use_sl)
    strategy.exit(id="SL", from_entry="Long", stop=sl_long)
    strategy.exit(id="SL", from_entry="Short", stop=sl_short)

// ____ Plots

colors = 
 enter_long ? #27D600 :
 enter_short ? #E30202 :
 color.orange

ema1_plot = plot(ema1, color=colors)
ema2_plot = plot(ema2, color=colors)
ema3_plot = plot(ema3, color=colors)
fill(ema1_plot, ema3_plot, color=colors, transp=50)