Gleitende Durchschnitt-Crossover-Trendfolgestrategie


Erstellungsdatum: 2023-12-06 16:58:20 zuletzt geändert: 2023-12-06 16:58:20
Kopie: 0 Klicks: 651
1
konzentrieren Sie sich auf
1619
Anhänger

Gleitende Durchschnitt-Crossover-Trendfolgestrategie

Überblick

Die Strategie basiert auf der Kreuzung von Moving Averages und ist eine Trend-Tracking-Strategie. Sie verwendet zwei unterschiedliche Perioden des Index-Moving Averages. Sie ist typisch für die Trend-Tracking-Strategie, wenn Sie über den Short-Periodic Moving Average über den Long-Periodic Moving Average und unter den Short-Periodic Moving Average über den Long-Periodic Moving Average gehen.

Strategieprinzip

Die Strategie verwendet zwei Moving Averages mit 20 und 50 Perioden. Zuerst werden diese beiden Moving Averages berechnet und dann ihre Kreuzungspunkte als Handelssignale gesucht. Ein Kaufsignal wird erzeugt, wenn der 20-Perioden-Moving Average über dem 50-Perioden-Moving Average durchbricht.

Nach der Erzeugung eines Handelssignals ordnet die Strategie nach einer festen Stop-Loss- und Stop-Out-Marge. Zum Beispiel wird nach dem Kauf ein Stop-Loss von 0,4% und ein Stop-Loss von 0,7% gesetzt; nach dem Verkauf wird ein Stop-Loss von 0,4% und ein Stop-Loss von 0,7% gesetzt. Durch das Setzen eines Stop-Loss-Stops werden die Risiken und die Erträge eines einzelnen Handels kontrolliert.

Strategische Vorteile

Diese Strategie hat folgende Vorteile:

  1. Die Bedienlogik ist einfach, klar, leicht zu verstehen und zu implementieren
  2. Zuverlässige Erfassung von Wendepunkten in Markttrends
  3. Ein Stop-Loss-Stopp, um das Risiko eines einzelnen Handels zu kontrollieren

Strategisches Risiko

Die Strategie birgt auch einige Risiken:

  1. Wenn der Markt keine deutliche Tendenz zeigt, gibt es mehr falsche Signale.
  2. Das Problem ist, dass es nicht möglich ist, den Lärm auf dem Markt effektiv zu filtern, so dass es leicht eingeschlossen werden kann.
  3. Die eingestellte Stop-Loss-Marge ist möglicherweise nicht für alle Sorten geeignet und muss optimiert werden

Gegenmaßnahmen:

  1. Optimierung der Periodizität von Moving Averages, Filterung von Fehlsignalen
  2. Filterung in Kombination mit anderen Indikatoren
  3. Test und Optimierung der Stop-Loss-Parameter

Optimierungsrichtung

Diese Strategie kann in folgenden Bereichen optimiert werden:

  1. Optimierung der Moving-Average-Perioden, um die beste Kombination von Parametern zu finden
  2. Zunahme des Umsatzes und andere Kennzahlen werden gefiltert
  3. Test und Optimierung von Stop-Loss-Rampen auf bestimmten Sorten
  4. Wechseln Sie den festen Stop-Loss-Stopp in einen dynamischen Stop-Loss-Stopp
  5. Die Entwicklung von Algorithmen wie Machine Learning, die automatisch die optimalen Parameter finden

Zusammenfassen

Die Strategie ist insgesamt eine einfache und effektive Trendverfolgungsstrategie. Sie nutzt Caught, um die Umkehrung der Markttrends zu beurteilen, und setzt Stop-Loss-Risiken ein. Die Strategie ist für Anleger geeignet, die keine hohen Anforderungen an die Trendbeurteilung haben. Durch weitere Optimierung der Parameter und Modelle können bessere Strategieeffekte erzielt werden.

]

Strategiequellcode
/*backtest
start: 2022-11-29 00:00:00
end: 2023-12-05 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/
// © danielfepardo

//@version=5

strategy("QUANT", overlay=true)
lenght1 = input(20)
lenght2 = input(50)


ema1 = ta.ema(close, lenght1)
ema2 = ta.ema(close, lenght2)
plot(ema1, color=color.black)
plot(ema2, color=color.red)

long = ta.crossover(ema1, ema2)

SL = 0.004
TP = 0.007

if long == true
    strategy.entry("Compra Call", strategy.long)
longstop=strategy.position_avg_price*(1-SL)
longprofit=strategy.position_avg_price*(1+TP)
strategy.exit("Venta Call", stop=longstop, limit=longprofit)

short = ta.crossover(ema2, ema1)

if short == true
    strategy.entry("Compra Put", strategy.short)
shortstop=strategy.position_avg_price*(1+SL)
shortprofit=strategy.position_avg_price*(1-TP)
strategy.exit("Venta Put", stop=shortstop, limit=shortprofit)