Strategie für die Verlagerung des gleitenden Durchschnitts

Schriftsteller:ChaoZhang, Datum: 2023-12-06 16:58:20
Tags:

img

Übersicht

Dies ist eine Trendfolgestrategie, die auf einem gleitenden Durchschnitts-Crossover basiert. Sie verwendet zwei gleitende Durchschnitte mit unterschiedlichen Perioden. Wenn der kürzere Zeitraum gleitender Durchschnitt über den längeren Zeitraum gleitender Durchschnitts überschreitet, geht er lang. Wenn der kürzere Zeitraum gleitender Durchschnitts unter dem längeren Zeitraum gleitender Durchschnitts überschreitet, geht er kurz. Dies ist eine typische Trendfolgestrategie.

Strategie Logik

Die Strategie verwendet 20-Perioden- und 50-Perioden- gleitende Durchschnitte. Sie berechnet zunächst diese beiden gleitenden Durchschnitte und identifiziert dann Kreuzungspunkte zwischen ihnen, um Handelssignale zu generieren. Wenn der 20-Perioden-gleitende Durchschnitt über den 50-Perioden-gleitenden Durchschnitt kreuzt, erzeugt sie ein Kaufsignal. Wenn der 20-Perioden-gleitende Durchschnitt unter den 50-Perioden-gleitenden Durchschnitt kreuzt, erzeugt sie ein Verkaufssignal. Die Kernlogik dieser Strategie besteht also darin, den Kreuzungspunkt zwischen den beiden gleitenden Durchschnitten zu verfolgen, um die Wendepunkte im Markttrend zu bestimmen.

Nach der Erstellung von Handelssignalen platziert die Strategie Aufträge mit einem festen Stop-Loss und nimmt Gewinnmargen ein. Zum Beispiel setzt sie nach dem Kauf einen Stop-Loss von 0,4% und einen Gewinn von 0,7%.

Vorteile der Strategie

Die Strategie weist folgende Vorteile auf:

  1. Einfache und klare Bedienlogik, leicht zu verstehen und umzusetzen
  2. Zuverlässige Erfassung von Trendwendepunkten auf dem Markt
  3. Festlegen von Stop-Loss und Gewinngewinn, um das einzelne Handelsrisiko gut zu kontrollieren

Risiken der Strategie

Diese Strategie birgt auch einige Risiken:

  1. Mehr falsche Signale, wenn der Markt keinen klaren Trend zeigt
  2. Nicht in der Lage, Marktlärm wirksam zu filtern, anfällig für die Gefangennahme
  3. Die Stop-Loss- und Take-Profit-Margen sind möglicherweise nicht für alle Produkte geeignet, müssen optimiert werden

Gegenmaßnahmen:

  1. Optimierung der gleitenden Durchschnittszeiten zur Filterung falscher Signale
  2. Hinzufügen anderer Indikatoren für die Filtration
  3. Test und Optimierung von Stop-Loss- und Take-Profit-Parametern

Optimierungsrichtlinien

Die Strategie kann in folgenden Aspekten optimiert werden:

  1. Optimieren Sie gleitende Durchschnittsperioden, um die beste Parameterkombination zu finden
  2. Hinzufügen von Indikatoren wie Handelsvolumen zu Filtersignalen
  3. Test und Optimierung von Stop-Loss- und Take-Profit-Margen für bestimmte Produkte
  4. Wechseln Sie den festen Stop-Loss und nehmen Sie den Gewinn auf dynamische
  5. Hinzufügen von Algorithmen für maschinelles Lernen, um automatisch optimale Parameter zu finden

Zusammenfassung

Insgesamt handelt es sich um eine einfache und wirksame Trendfolgestrategie. Sie erfasst Trendwendepunkte mithilfe eines gleitenden Durchschnitts-Crossovers und steuert das Risiko über Stop-Loss und Take-Profit. Die Strategie eignet sich für Anleger, die keine hohen Anforderungen an das Trendbeurteilen haben. Eine weitere Optimierung von Parametern und Modellen kann zu einer besseren Strategieleistung führen.

]


/*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)






Mehr