Zweifelhafte schwebende durchschnittliche Crossover-Handelsstrategie

Schriftsteller:ChaoZhang, Datum: 2024-01-24 15:24:13
Tags:

img

Übersicht

Die Kernidee dieser Strategie besteht darin, das goldene Kreuz und das Todeskreuz der schnellen und langsamen gleitenden Durchschnittslinien zu verwenden, um den Markttrend zu beurteilen und einen risikoarmen Handel zu implementieren. Wenn die schnelle gleitende Durchschnittslinie über die langsame gleitende Durchschnittslinie kreuzt, bedeutet dies, dass der Markt einen Aufwärtstrend betreten kann, also gehen Sie lang; wenn die schnelle gleitende Durchschnittslinie unter die langsame gleitende Durchschnittslinie kreuzt, bedeutet dies, dass der Markt einen Abwärtstrend betreten kann, also gehen Sie kurz.

Strategieprinzip

Der gleitende Durchschnitt ist ein Trendindikator, der die Preisdaten glättet, um die Preisentwicklung zu beurteilen. Der schnelle gleitende Durchschnitt hat einen kleineren Parameter und kann schneller auf Preisänderungen reagieren; der langsame gleitende Durchschnitt hat einen größeren Parameter und reagiert langsamer auf Preisänderungen. Wenn der schnelle gleitende Durchschnitt über den langsamen gleitenden Durchschnitt überschreitet, zeigt er an, dass der Markt einen Bullenmarkt betreten könnte und eine Long-Position eingerichtet werden sollte; wenn der schnelle gleitende Durchschnitt unter dem langsamen gleitenden Durchschnitt überschreitet, zeigt er an, dass der Markt einen Bärenmarkt betreten könnte und eine Short-Position eingerichtet werden sollte.

Diese Strategie definiert zwei exponentielle gleitende Durchschnitte mit Perioden von 21 bzw. 55 für den schnellen und langsamen gleitenden Durchschnitt. Die Strategie bestimmt Ein- und Ausstieg basierend auf dem goldenen Kreuz und dem Todeskreuz der beiden gleitenden Durchschnittslinien.

Darüber hinaus verwendet diese Strategie auch den ATR-Volatilitätsindikator, um Stop-Loss und Take-Profit festzulegen. ATR kann den Grad der Marktvolatilität effektiv beurteilen. Der Stop-Loss wird auf das 1,5-fache der ATR-Distanz vom Preis festgelegt; der Take-Profit wird nahe dem 1-fachen der ATR-Distanz vom Preis festgelegt.

Analyse der Vorteile

Diese Strategie hat folgende Vorteile:

  1. Die Idee ist klar und leicht zu verstehen und umzusetzen.
  2. Verwenden Sie den gleitenden Durchschnittsindikator, um die Kursentwicklung zu ermitteln und einen risikoarmen Handel zu betreiben.
  3. Die Kombination von schnellen und langsamen gleitenden Durchschnitten kann Marktlärm effektiv filtern und Preisentwicklungen erkennen.
  4. Verwenden Sie den ATR-Indikator, um den Stop-Loss und den Gewinn auf Basis des Grades der Marktvolatilität dynamisch festzulegen.
  5. Eine häufige Anpassung der Parameter ist nicht erforderlich und die Strategie ist sehr stabil.

Risikoanalyse

Diese Strategie birgt auch einige Risiken:

  1. Wenn die Preise stark schwanken, kann der gleitende Durchschnitt falsche Signale geben, was zu unnötigen Verlusten führen kann.
  2. Diese Strategie basiert ausschließlich auf technischen Indikatoren ohne Berücksichtigung der Fundamentaldaten und kann bei größeren negativen Nachrichten größere Verluste verursachen.
  3. Der vom ATR-Indikator festgelegte Stop-Loss- und Take-Profit-Satz ist möglicherweise nicht für alle Marktumgebungen geeignet, da diese möglicherweise zu locker oder zu eng sind.
  4. Die Festlegung von gleitenden Durchschnittsperioden ist nicht das einzige optimale System, und verschiedene Kombinationen von Periodenparametern erzeugen unterschiedliche Effekte.

Um den oben genannten Risiken entgegenzuwirken, können wir die folgenden Aspekte optimieren:

  1. Kombinieren Sie andere Indikatoren wie MACD und RSI, um Handelssignale zu bestätigen und falsche Eingaben zu vermeiden.
  2. Der Stop-Loss-Bereich wird leicht eingeschränkt, um den Verlust pro Handel zu reduzieren.
  3. Dynamische Optimierung der gleitenden Durchschnittsperiodenparameter, um sie besser an die verschiedenen Marktstadien anzupassen.

Optimierungsrichtlinien

Diese Strategie kann in folgenden Bereichen weiter optimiert werden:

  1. Verwenden Sie maschinelle Lernmethoden, um gleitende Durchschnittsparameter automatisch zu optimieren, um eine bessere Anpassungsfähigkeit zu erzielen.

  2. Fügen Sie Fundamentaldaten als Filterbedingungen hinzu, um zu vermeiden, dass Sie bei großen negativen Nachrichten, wie z. B. Zinsentscheidungen der Fed und wichtigen Makrodatenveröffentlichungen, blind lang oder kurz gehen.

  3. Setzen Sie obere und untere Grenzen für Volatilität, halten Sie den Handel an, wenn der ATR zu hoch oder zu niedrig wird, um Verluste in extremen Marktumgebungen zu vermeiden.

  4. Einbeziehen von Aktienfundamentalen wie P / E-Ratio und Handelsvolumen Expansion, um dynamische Stop-Loss und Gewinnbereiche zu setzen.

  5. Hinzu kommen Positionsgrößenmechanismen, die Positionen schrittweise reduzieren, wenn die Gewinnquote ein bestimmtes Niveau erreicht, den Handel für einen Zeitraum aussetzen, wenn relativ große Verluste entstehen usw.

Schlussfolgerung

Die allgemeine Logik dieser Strategie ist klar und einfach, wobei doppelte gleitende Durchschnittsquerschnitte zur Bestimmung von Markttrends verwendet werden, eine typische Trendstrategie. Inzwischen kontrolliert die Strategie auch die Risiken sehr gut, indem sie den ATR-Indikator verwendet, um den Stop-Loss dynamisch festzulegen und Gewinn zu erzielen. Mit weiterer Optimierung kann die Strategie in Bezug auf Drawdown-Kontrolle und Trendfahrt verbessert werden, was zu einer stabileren Anlageleistung führt.


/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="No-Nonsense Strategy Template [WM]", overlay = true)

price = close

//
// ATR stuff
//

atrLength = input(14, "ATR Length")
slMultiplier = input(1.5, "SL")
tpMultiplier = input(1, "TP1")

atr = atr(atrLength)

//
// Strategy under test. MA crossover
// 

fastInput = input(21)
slowInput = input(55)

fast = ema(price, fastInput)
slow = ema(price, slowInput)

plot(fast, color = red)
plot(slow, color = blue)

goLong = crossover(fast, slow)
goShort = crossunder(fast, slow)

if (goLong)
    sl = price - atr * slMultiplier
    tp = price + atr * tpMultiplier
    strategy.entry("Long", strategy.long)
    strategy.exit("Long Exit", "Long", stop = sl, limit = tp)
    
if (goShort)
    sl = price + atr * slMultiplier
    tp = price - atr * tpMultiplier
    strategy.entry("Short", strategy.short)	 
    strategy.exit("Short Exit", "Short", stop = sl, limit = tp)



Mehr