Strategie zur Beobachtung der Trendentwicklung durch zwei gleitende Durchschnittswerte

Schriftsteller:ChaoZhang, Datum: 2023-12-19 14:49:52
Tags:

img

Übersicht

Die Dual Moving Average Trend Tracking Strategie ist eine quantitative Handelsstrategie, die zwei gleitende Durchschnitte mit verschiedenen Perioden verwendet, um die Trendrichtung des Marktes zu bestimmen.

Grundsätze

Die Strategie verwendet zwei gleitende Durchschnitte, darunter einen schnellen gleitenden Durchschnitt (z. B. 10-Periode) und einen langsamen gleitenden Durchschnitt (z. B. 30-Periode). Wenn beide gleitenden Durchschnitte nach oben zeigen, zeigt sie einen Aufwärtstrend an. Wenn beide gleitenden Durchschnitte nach unten zeigen, zeigt sie einen Abwärtstrend an.

Die Strategie berechnet zunächst die schnellen und langsamen gleitenden Durchschnitte. Dann vergleicht sie den aktuellen schnellen gleitenden Durchschnitt mit dem vorherigen Zeitraum, um zu sehen, ob der aktuelle größer ist als der vorherige. Wenn ja, geben Sie den Wert 1 an, der den Aufwärtstrend anzeigt. Andernfalls geben Sie -1 für den Abwärtstrend zu. Tun Sie dasselbe für den langsamen gleitenden Durchschnitt.

Schließlich bestimmen Sie den Trend anhand der Werte der beiden gleitenden Durchschnitte. Wenn beide Werte 1 sind, ist die endgültige Entscheidung 1, was einen Aufwärtstrend anzeigt. Wenn beide -1 sind, ist die endgültige Entscheidung -1, was einen Abwärtstrend anzeigt. Wenn die Werte unterschiedlich sind, behalten Sie die vorherige Trendentscheidung.

Nach Feststellung der Trendrichtung wird die Strategie bei Aufwärtstrend lang und bei Abwärtstrend kurz sein.

Vorteile

Die Strategie umfaßt folgende Bereiche:

  1. Die Logik ist einfach und leicht zu verstehen und umzusetzen.
  2. Die doppelten gleitenden Durchschnitte helfen, Marktlärm zu filtern und den Trend zu erkennen.
  3. Die Parameter der gleitenden Durchschnitte können für verschiedene Produkte und Zeitrahmen angepasst werden.
  4. Es ist nicht notwendig, einen Stop Loss oder einen Gewinn zu setzen, was die Handelsfrequenz verringert und hilft, dem Trend zu folgen.
  5. Kann flexibel nur lang oder nur kurz gehen, je nach Präferenz.

Risiken

Die Strategie birgt auch einige Risiken:

  1. Bewegliche Durchschnitte können bei starken Kursänderungen verzögert sein, was zu fehlenden besten Einstiegszeiten führt.
  2. Falsche Ausbrüche und falsche Überschneidungen können auftreten, was zu falschen Handelssignalen führt.
  3. Es ist kein Stop-Loss festgelegt, so dass ein einzelner Handelsverlust nicht wirksam begrenzt werden kann.
  4. Die volle Position im Standardfall bringt ein größeres Risiko mit sich, erfordert vorsichtigen Betrieb.

Um die Risiken zu verringern, können die Parameter der gleitenden Durchschnitte vernünftiger festgelegt, andere Indikatoren eingeführt, Stop-Loss und Take-Profit festgelegt und die Positionsgröße entsprechend angepasst werden.

Optimierung

Die Strategie kann in folgenden Bereichen weiter optimiert werden:

  1. Fügen Sie mehr Arten von gleitenden Durchschnitten wie SMA und EMA hinzu, um mehr Charting-Tools zu nutzen.
  2. Einführung anderer Hilfsindikatoren wie MACD und BOLL zur Verbesserung der Genauigkeit.
  3. Hinzufügen von Trendlinie und Unterstützung/Widerstandsanalyse für genauere Handelssignale.
  4. Setzen Sie Stop-Loss und Take-Profit, um Einzelhandelsverluste zu kontrollieren.
  5. Optimierung der Positionsgröße auf der Grundlage von Fondsnutzung, Gewinnquote usw.

Schlussfolgerung

Die Dual Moving Average Trend Tracking Strategie hat eine klare Logik der Verwendung von Dual Moving Averages, um Lärm zu filtern und den Trend zu identifizieren und entlang der Trendrichtung zu handeln. Es handelt sich um eine typische Trendfolgsstrategie. Händler können nur lang oder nur kurz basierend auf der Präferenz wählen. Es gibt immer noch einige Risiken der Strategie. Zusätzliche Indikatoren, Stop Loss / Take Profit sollten hinzugefügt werden, um Risiken zu kontrollieren. Dadurch kann langfristig ein stetiger Gewinn erzielt werden.


/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 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/
// © noro
// 2020

//@version=4
strategy(title = "Noro's TrendMA Strategy", shorttitle = "TrendMA str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_value = 0.1)

//Settings
needlong = input(true, title = "Long")
needshort = input(true, title = "Short")
fast = input(10, minval = 1, title = "MA Fast (red)")
slow = input(30, minval = 2, title = "MA Slow (blue)")
type = input(defval = "SMA", options = ["SMA", "EMA"], title = "MA Type")
src = input(ohlc4, title = "MA Source")
showma = input(true, title = "Show MAs")
showbg = input(false, title = "Show Background")

//MAs
fastma = type == "EMA" ? ema(src, fast) : sma(src, fast)
slowma = type == "EMA" ? ema(src, slow) : sma(src, slow)

//Lines
colorfast = showma ? color.red : na
colorslow = showma ? color.blue : na
plot(fastma, color = colorfast, title = "MA Fast")
plot(slowma, color = colorslow, title = "MA Slow")

//Trend
trend1 = fastma > fastma[1] ? 1 : -1
trend2 = slowma > slowma[1] ? 1 : -1
trend = 0
trend := trend1 == 1 and trend2 == 1 ? 1 : trend1 == -1 and trend2 == -1 ? -1 : trend[1]

//Backgrouns
colbg = showbg == false ? na : trend == 1 ? color.lime : trend == -1 ? color.red : na
bgcolor(colbg, transp = 80)

//Trading
if trend == 1
    if needlong
        strategy.entry("Long", strategy.long)
    if needlong == false
        strategy.close_all()

if trend == -1
    if needshort
        strategy.entry("Short", strategy.short)
    if needshort == false
        strategy.close_all()
    

Mehr