EMA-Tendenz nach Handelsstrategie

Schriftsteller:ChaoZhang, Datum: 2023-09-19 19:38:53
Tags:

Übersicht

Diese Strategie ist eine typische EMA-Trend-Folge-Strategie. Sie verwendet das goldene Kreuz einer schnellen EMA und einer langsamen EMA, um Aufwärtstrends zu bestimmen, und das Todeskreuz, um Abwärtstrends zu bestimmen, entsprechend für lange und kurze Trades. Die Strategie verfolgt mittel- bis langfristige Trends zuverlässig und eignet sich für den Swing-Trading.

Strategie Logik

Die Kernlogik lautet:

  1. Berechnung der schnellen EMA, z. B. 12-Perioden-EMA
  2. Berechnung der langsamen EMA, z. B. der 26-Perioden-EMA
  3. Wenn der schnelle EMA den langsamen EMA überschreitet, wird ein Aufwärtstrend für einen langen Einstieg bestimmt.
  4. Wenn der schnelle EMA unter den langsamen EMA überschreitet, wird ein Abwärtstrend für einen kurzen Einstieg ermittelt
  5. Ausgang der aktuellen Position, wenn der schnelle EMA wieder unter den langsamen EMA fällt

Die Verwendung von EMAs mit unterschiedlichen Geschwindigkeiten kann effektiv Trendveränderungen erkennen. Die schnelle EMA reagiert schnell auf Preisveränderungen zur frühzeitigen Trenderkennung, während die langsame EMA falsche Signale herausfiltert, um die Trendbestätigung zu gewährleisten. Zusammen bilden sie ein zuverlässiges Trendsystem.

Goldene Kreuze signalisieren den Beginn eines Aufwärtstrends für Longs, während Todekreuze den Beginn eines Abwärtstrends für Shorts signalisieren.

Vorteile

  • Die EMA identifizieren mittelfristige und langfristige Trends wirksam
  • Schnelle und langsame EMAs kombinieren sich zu einem zuverlässigen Trendsystem
  • Einfache Logik, einfach umzusetzen
  • Konfigurierbare EMA-Parameter für verschiedene Instrumente
  • Die Risikopositionen werden in den folgenden Kategorien aufgelistet:

Risiken und Minderungsmaßnahmen

  • Nicht in der Lage, Trendumkehrpunkte im Voraus vorherzusagen, einige Verluste
  • Eine schlechte Auswahl der EMA-Parameter kann die Trendwechselpunkte verpassen
  • Die EMA-Parameter müssen an Veränderungen der Marktbedingungen angepasst werden

Abmilderung:

  1. Verwenden Sie Range-Stopps, um Verluste zu begrenzen
  2. Hinzufügen anderer Indikatoren zur Erkennung potenzieller Trendumkehrungen
  3. Optimierung der Parameter für eine bessere Trendenerkennung

Möglichkeiten zur Verbesserung

Die Strategie kann in folgenden Bereichen verbessert werden:

  1. Maschinelles Lernen zur automatischen Abstimmung von EMA-Parametern für eine bessere Anpassungsfähigkeit

  2. Volatilitätsbasierte Positionsgrößerung zur Anpassung an die Volatilität des Marktes

  3. Oszillatoren wie RSI zur Feinabstimmung von Einstiegspunkten

  4. Hinzufügen von Trailing Stops, Profit-taking Stops für ein besseres Risikomanagement

  5. Volumenanalyse zur Ermittlung von Ein- und Ausflüssen von Fonds zur Trendprüfung

  6. Portfolio-Kombinationen mit nicht korrelierten Strategien zur Verringerung der Zinsrücknahmen und zur Steigerung der Rendite-Stabilität

Schlussfolgerung

Die EMA-Trend-Folge-Strategie ist eine einfache und praktische Möglichkeit, mittel- bis langfristige Trends zu verfolgen. Sie verwendet schnelle und langsame EMA-Kreuzungen für den Einstiegszeitplan. Einfach umzusetzen, sie kann auch in mehreren Dimensionen erweitert werden, um eine größere Anpassungsfähigkeit zu erzielen.


/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-18 00:00:00
period: 10m
basePeriod: 1m
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/
// © HomoDeus666

//@version=5

strategy("EMA12/26 with date backtest range (BTCpair)", overlay=true,initial_capital = 1,commission_type = strategy.commission.percent,currency = currency.BTC)

//input date and time
useDateFilter = input.bool(true, title="Filter Date Range of Backtest",
     group="Backtest Time Period")
backtestStartDate = input(timestamp("1 Jan 2021"), 
     title="Start Date", group="Backtest Time Period",
     tooltip="This start date is in the time zone of the exchange " + 
     "where the chart's instrument trades. It doesn't use the time " + 
     "zone of the chart or of your computer.")
backtestEndDate = input(timestamp("1 Jan 2022"),
     title="End Date", group="Backtest Time Period",
     tooltip="This end date is in the time zone of the exchange " + 
     "where the chart's instrument trades. It doesn't use the time " + 
     "zone of the chart or of your computer.")
     
//check date and time option
inTradeWindow =  true
/// plot and indicator
fastEMA = ta.ema(close,12), slowEMA=ta.ema(close,26)
plot(fastEMA,color=color.green,linewidth = 2)
plot(slowEMA,color=color.red,linewidth=2)

//entry when condition
longCondition = ta.crossover(fastEMA,slowEMA)
if (longCondition) and inTradeWindow
    strategy.entry("buy", strategy.long)

if ta.crossunder(ta.ema(close, 12), ta.ema(close, 26)) and inTradeWindow
    strategy.close("buy")
    
// trades and cancel all unfilled pending orders
if not inTradeWindow and inTradeWindow[1]
    strategy.cancel_all()
    strategy.close_all(comment="Date Range Exit")

Mehr