Doppel gleitender Durchschnitt Goldene Kreuz-Quantitative Strategie

Schriftsteller:ChaoZhang, Datum: 2023-12-26 17:02:29
Tags:

img

Übersicht

Die Dual Moving Average Golden Cross Quantitative Strategy ist eine auf technischen Indikatoren basierende quantitative Handelsstrategie. Sie bestimmt Markttrends durch Berechnung zweier gleitender Durchschnitte verschiedener Perioden und ermöglicht einen risikoarmen Handel. Wenn der kurze Zeitraum gleitender Durchschnitt über den längeren Zeitraum gleitender Durchschnitt kreuzt, wird ein goldenes Kreuzsignal für den Long-Takt erzeugt. Wenn der kürzere gleitende Durchschnitt unter den längeren kreuzt, wird ein Todeskreuzsignal für den Short-Takt erzeugt. Diese Strategie enthält auch Preiskanalindikatoren, um falsche Breaks zu vermeiden.

Strategieprinzip

Die Dual Moving Average Golden Cross Quantitative Strategy basiert auf der Theorie des gleitenden Durchschnitts. Gleitende Durchschnitte können effektiv Marktlärm filtern und langfristige Trendrichtungen anzeigen. Wenn der kurzfristige gleitende Durchschnitt über den längerfristigen gleitenden Durchschnitt kreuzt, zeigt er eine Aufwärtsumkehr des Marktes an und ist ein Kaufsignal. Wenn der kürzere gleitende Durchschnitt unter den längeren kreuzt, zeigt er eine Abwärtsumkehr an und ist ein Verkaufssignal. Diese Strategie legt zwei Gruppen von gleitenden Durchschnitten fest - die erste sind die 2-Tage- und 3-Tage-gleitenden Durchschnitte, und die zweite ist der 420-Tage-gleitende Durchschnitt. Ein 2-Tage-Kaufsignal wird erzeugt, wenn der 3-Tage-gleitende Durchschnitt überschreitet, und ein Verkaufssignal wird erzeugt, wenn er untersteigt. Der 420-Tage-gleitende Durchschnitt wird verwendet, um den langfristi

Die wichtigste Logik des Strategiecodes ist:

  1. Berechnen Sie die gleitenden Durchschnitte für 2 Tage, 3 Tage und 420 Tage
  2. Beurteilen Sie das goldene Kreuz und das Todeskreuz zwischen den gleitenden Durchschnitten von 2 und 3 Tagen
  3. Verwenden Sie den 420-Tage- gleitenden Durchschnitt, um Signale zu filtern und Fehlausbrüche zu vermeiden
  4. Erstellen von Kauf- und Verkaufssignalen

Die spezifischen Grundsätze sind:

  1. Berechnen Sie den 2-tägigen einfachen gleitenden Durchschnitt n2ma und den 3-tägigen einfachen gleitenden Durchschnitt nma anhand der Schlusskurswerte der letzten 3 Tage.
  2. Berechnen Sie den 420-tägigen gewichteten gleitenden Durchschnitt der Schlusskursentwicklung der letzten 420 Tage
  3. Ein Kaufsignal wird erzeugt, wenn n2ma über nma steigt
  4. Ein Verkaufssignal wird erzeugt, wenn n2ma unter nma fällt
  5. Verwenden Sie rvwma, um Signale zu filtern, indem Sie nur ein Kaufsignal erzeugen, wenn n2ma unter rvwma liegt und ein Verkaufssignal nur, wenn n2ma über rvwma liegt

Es erfasst Trendumkehrchancen nach kurzfristigen Anpassungen, indem es Wendepunkte mit doppelten gleitenden Durchschnittskreuzungen bestimmt und Parameterfilter setzt, um falsche Trades zu vermeiden.

Analyse der Vorteile

Die doppelte gleitende durchschnittliche Goldene Kreuz-Quantitative Strategie hat folgende Vorteile:

  1. Einfach und zuverlässig: Verwendet doppelte gleitende Durchschnittskreuzungen, um kurzfristige Kursentwicklungen zu ermitteln und so klare Signale zu erzeugen
  2. Hohe Empfindlichkeit: Die zweitägigen und dreitägigen gleitenden Durchschnittsparameter sind so eingestellt, dass sie anfällig genug sind, um kurzfristige Kursänderungen schnell zu erfassen.
  3. Geräuschfilterung: Einbezieht Preiskanalindikatoren zur effektiven Filterung von Lärm und zur Vermeidung fehlerhafter Transaktionen
  4. Starke Anpassungsfähigkeit: Die Theorie der doppelten gleitenden Durchschnittsüberschreitungen ist an verschiedene Produkte und Zeitrahmen anpassbar und lässt sich leicht umsetzen
  5. Einfach zu optimieren: Großer Optimierungsraum durch Änderung der gleitenden Durchschnittsparameterkombinationen und Anpassung der Filterparameter
  6. Validierung im realen Handel: Bei Live-Handelsgeschäften mit relativ stabiler Performance wurden doppelte gleitende Durchschnitts-Crossover-Strategien validiert.

Risikoanalyse

Die doppelte gleitende durchschnittliche Goldene Kreuz-Quantitative-Strategie birgt außerdem folgende Risiken:

  1. Rückzugsrisiko: Kurzfristige Erholungen können zum Stopp führen
  2. Trendumkehrrisiko: Plötzliche Ereignisse, die zu langfristigen Trendumkehrungen führen, können Verluste verursachen
  3. Parameteroptimierungsrisiko: Fehlende Parameter können die Strategieleistung verschlechtern
  4. Risiko einer Überoptimierung: Eine übermäßige Optimierung der Parameter kann zu einer Überanpassung führen
  5. Risiko für Abweichungen beim Live-Handel: Abweichungen zwischen Backtesting und Live-Handel können sich auf die Performance auswirken

Zur Verringerung der Risiken können folgende Methoden angewendet werden:

  1. Ein angemessener Stop-Loss zur Kontrolle von Einzelverlusten
  2. Kombination von Fundamentaldaten, um den Handel gegen den Markt zu vermeiden
  3. Auswahl geeigneter Produkte und Zeiträume für die Optimierung
  4. Führen Sie eine angemessene Parameterempfindlichkeitsprüfung durch
  5. Hinzufügen von Live-Handelsverifizierung

Optimierungsrichtlinien

Die doppelte gleitende Durchschnittswert-Golden-Cross-Quantitative-Strategie kann auch in folgenden Aspekten optimiert werden:

  1. Optimierung der Parameter: Anpassung der gleitenden Durchschnitts- und Kanalindikatorparameter, um die optimale Parameterkombination auszuwählen.

  2. Auswahl des Zeitpunktes: Wählen Sie die am besten geeigneten gleitenden Durchschnittsparameter anhand der verschiedenen Produktmerkmale.

  3. Optimierung der Stop-Loss-Strategie: Dynamische Haltestellen, Hinterhaltestellen usw. eingestellt, um Rückhaltestellen zu vermeiden.

  4. Optimierung des Handels in Richtung: Einbeziehung von Trendindikatoren und Annahme von Trendoperationen zur Verhinderung des Gegentrend-Handels.

  5. Kombination aus maschinellem Lernen: Verwenden Sie LSTM, RNN und andere Deep-Learning-Modelle zur Beurteilung der Signalqualität und zur Bestimmung des Einstiegszeitpunkts.

Schlussfolgerung

Die Dual Moving Average Golden Cross Quantitative Strategy bestimmt kurzfristige Preistrends durch das einfache Prinzip der gleitenden Durchschnitts-Crossovers. Die Einstellung von Kanalindikatoren filtert effektiv falsche Signale. Die Strategie hat eine einfache Logik und ist einfach umzusetzen. Flexible Parameteranpassungen sind möglich, wobei die Performance im Live-Handel relativ gut bestätigt wurde. Es ist eine empfohlene quantitative Strategie, die durch Parameteroptimierung, Stop-Loss-Optimierung, maschinelles Lernen und mehr verbessert werden kann, um noch bessere Performance zu erzielen.


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

//@version=4
//                                                Indicator420 by SeaSide420
strategy("Indicator420 strategy", overlay=true)
q=input(title="HullMA",defval=420)
z=input(title="HullMA cross",defval=3)
a=input(title="VWMA",defval=14)
rvwma=vwma(close,round(a))
rvwma2=vwma(close,round(a*2))
rvwma3=vwma(close,round(a*3))
n2ma=2*wma(close,round(z/2))
nma=wma(close,z)
diff=n2ma-nma
sqn=round(sqrt(z))
n2ma1=2*wma(close[1],round(z/2))
nma1=wma(close[1],z)
diff1=n2ma1-nma1
sqn1=round(sqrt(z))
n2ma2=2*wma(close[2],round(q/2))
nma2=wma(close[2],q)
diff2=n2ma2-nma2
sqn2=round(sqrt(q))
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
n3=wma(diff2,sqn)
b=n1>n2?red:lime
c=n1>n2?green:red
d=n3>rvwma3?red:green
e=rvwma2>rvwma3?green:red
f=n1>n2?red:green
//plot(rvwma3, color=e, linewidth=1)
plot(cross(rvwma, rvwma2) ? rvwma : na, style = line,color=e, linewidth = 1)
plot(cross(n1, n2) ? n1 : na, style = line,color=b, linewidth = 3)
plot(cross(n1, n2) ? n1 : na, style = circles,color=c, linewidth = 4)
closelong = n1<n2
if (closelong)
    strategy.close("Long")
closeshort = n1>n2
if (closeshort)
    strategy.close("Short") 
longCondition = n1>n2 and strategy.opentrades<1 and n1<rvwma3
if (longCondition)
    strategy.entry("Long",strategy.long)
shortCondition = n1<n2 and strategy.opentrades<1 and n1>rvwma3
if (shortCondition)
    strategy.entry("Short",strategy.short)

Mehr