Die Ressourcen sind geladen. Beförderung...

Strategie für eine doppelte Kreuzung von gleitenden Durchschnitten

Schriftsteller:ChaoZhang, Datum: 2024-01-08
Tags:

img

Dieser Artikel analysiert eine Dual Moving Average Crossover-Handelsstrategie. Die Strategie verwendet das Crossover von schnellen und langsamen gleitenden Durchschnitten als Kauf- und Verkaufssignale. Wenn der schnelle gleitende Durchschnitt von unten nach oben über den langsamen gleitenden Durchschnitt kreuzt, erzeugt er ein Kaufsignal. Wenn der schnelle gleitende Durchschnitt von oben nach unten durch den langsamen gleitenden Durchschnitt kreuzt, erzeugt er ein Verkaufssignal.

Strategieprinzip

Die Strategie des Dual Moving Average verwendet zwei gleitende Durchschnitte mit unterschiedlichen Parameter-Einstellungen, um Handelssignale durch Vergleich zu generieren. Einer ist ein schneller gleitender Durchschnitt mit einer kleineren Parameter-Einstellung, die schnell Preisänderungen erfassen kann. Der andere ist ein langsamer gleitender Durchschnitt, mit einer größeren Parameter-Einstellung als Benchmark für den langfristigen Trend. Wenn der kurzfristige Preis höher als der langfristige Trend ist, d.h. der schnelle gleitende Durchschnitt über den langsamen überschreitet, sendet er ein Kaufsignal. Wenn der kurzfristige Preis niedriger als der langfristige Trend ist, d.h. der schnelle gleitende Durchschnitt unter dem langsamen überschreitet, erzeugt er ein Verkaufssignal.

Speziell nimmt diese Strategie zwei gleitende Durchschnittsparameter als Eingabe und berechnet die schnellen und langsamen gleitenden Durchschnittswerte. Dann zeichnet sie beide gleitenden Durchschnittswerte auf dem Preisdiagramm auf, wobei die schnelle Linie in blau und die langsame Linie in rot ist. Wenn die schnelle blaue Linie über die rote Linie von unten nach oben kreuzt, löst sie ein Kaufsignal aus. Wenn die schnelle blaue Linie die rote Linie von oben hinunter kreuzt, löst sie ein Verkaufssignal aus. Nachdem das Handelssignal generiert wurde, führt sie entsprechende Long- oder Short-Entry-Orders aus. Schließlich setzt sie Stop-Loss- und Take-Profit-Logik für die langen Trades ein.

Analyse der Vorteile

Die Strategie des Doppel gleitenden Durchschnitts hat folgende Vorteile:

  1. Einfach zu verstehen und umzusetzen.
  2. Nutzt die Vorzüge gleitender Durchschnitte, um kurzfristige Chancen neben den wichtigsten Trends zu erfassen.
  3. Flexible Einstellung der Parameter zur Anpassung an verschiedene Marktumgebungen.
  4. Anwendbar für alle Zeitrahmen und Instrumente.
  5. Optimierbar mit zusätzlichen Indikatoren wie Volumen, Stochastik usw.

Risikoanalyse

Die Strategie des doppelten gleitenden Durchschnitts birgt außerdem folgende Risiken:

  1. Crossovers können es versäumen, unsichere Konsolidierungsbewegungen effektiv auszufiltern, was zu übermäßigen falschen Signalen führt.
  2. Häufige Hin- und Her-Kreuze, wenn der Preis in der Nähe der gleitenden Durchschnitte schwankt, was zu einem Überhandel führt.
  3. Eine unangemessene Parameterwahl wirkt sich negativ auf die Strategieleistung aus.

Zur Bekämpfung der oben genannten Risiken können folgende Optimierungsmethoden angewendet werden:

  1. Fügen Sie Abstandsfilter hinzu, so dass Kreuzungen, die zu nahe an den gleitenden Durchschnitten liegen, ignoriert werden.
  2. Zusätzliche Filter wie Volumenspitze und STOCH einbinden, um ineffektive Trades in Bereichszonen zu vermeiden.
  3. Versuche verschiedene gleitende Durchschnittsparameter und Kombinationen, um die optimalen Einstellungen zu finden.

Optimierungsrichtlinien

Die Strategie des Doppel gleitenden Durchschnitts kann in folgenden Aspekten weiter optimiert werden:

  1. Der Volumenfilter wird nur dann zu den Auslösersignalen hinzugefügt, wenn ein Preis-Crossover mit einem signifikanten Volumenanstieg einhergeht.
  2. Kombination mit einem Stochastischen Oszillator usw., um falsche Signale in überkauften/überverkauften Zonen zu vermeiden.
  3. Testen Sie optimale gleitende Durchschnittsparameter für verschiedene Produkte und Zeitrahmen.
  4. Einbeziehung von Modellen des maschinellen Lernens zur Beurteilung der Trendrichtung.
  5. Erstellen Sie anpassungsfähige Handelssysteme mit Deep Learning und Entscheidungsbäumen.

Schlussfolgerung

Zusammenfassend ist die Strategie des Dual Moving Average sehr klassisch und praktisch. Sie kombiniert sowohl Trendfollowing als auch kurzfristige Mittelumkehrung, so dass sie große Trends überstehen kann, während Umkehrbewegungen erfasst werden. Durch die korrekte Optimierung der Modelle und Abstimmung der Parameter kann sie zuverlässigere Handelssignale generieren, während die Einfachheit und Intuitivität beibehalten werden, was zu einer besseren Strategieleistung führt. Verschiedene Trader können Details dieser Strategie basierend auf ihren eigenen Vorlieben und Marktbedingungen anpassen.


/*backtest
start: 2023-12-31 00:00:00
end: 2024-01-07 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Moving Average Crossover Strategy", overlay=true)

// Input parameters
fastLength = input(10, title="Fast MA Length")
slowLength = input(21, title="Slow MA Length")
stopLossPercent = input(1, title="Stop Loss Percentage")

// Calculate moving averages
fastMA = ta.sma(close, fastLength)
slowMA = ta.sma(close, slowLength)

// Plot the moving averages on the chart
plot(fastMA, color=color.blue, title="Fast MA")
plot(slowMA, color=color.red, title="Slow MA")

// Define trading signals
longCondition = ta.crossover(fastMA, slowMA)
shortCondition = ta.crossunder(fastMA, slowMA)

// Execute trades
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)

// Implement stop loss
strategy.exit("Stop Loss/Profit", from_entry="Long", loss=close * stopLossPercent / 100, profit=close * 2)

// Plot buy and sell signals on the chart
plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar)
plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)


Mehr