Die vielfältige Quantitative Strategie der großen Freude

Schriftsteller:ChaoZhang, Datum: 2023-12-04 13:04:03
Tags:

img

Übersicht

Die Great Delight Multifaktor-Quantitative Strategie kombiniert mehrere technische Indikatoren, einschließlich gleitender Durchschnitte, des MACD und der Ichimoku-Wolke, als eine trendfolgende langfristige Strategie.

Durch die Berücksichtigung sowohl langfristiger als auch kurzfristiger Trends sowie der Mehrfach-Faktor-Verifizierung kann diese Strategie Lärmgeschäfte durch falsche Ausbrüche effektiv filtern.

Strategieprinzipien

Wenn der Preis über dem 200-Tage-MA liegt, glaubt die Strategie, dass sich der Markt in einem Bullentrend befindet. Solange die 20-Tage-MA- und MACD-Indikatoren gleichzeitig ein Kaufsignal erzeugen und der Preis höher als der höchste Ichimoku-Cloud-Preis oder innerhalb der Cloud ist, wird ein Kaufsignal erzeugt.

Wenn der Preis unter den 200-Tage-MA bricht, bestimmt die Strategie, dass ein Bärentrend begonnen hat. Die Signalanforderungen werden jetzt strenger: Zusätzlich zu den 20-Tage-MA- und MACD-Kaufsignalen muss die Ichimoku-Wolke auch ein Kaufsignal (grüne Wolke oder Preis über der Wolke) geben, bevor sie einen Kauf auslöst.

Die Verkaufssignallogik ist ähnlich, aber umgekehrt: In einem Bullenmarkt schließt sich eine Kerze unterhalb des Wolkenbodens oder der Wolkenflip-Trigger zum Verkauf; in einem Bärenmarkt treten die roten Wolken oder die 20-tägigen MA- und MACD-Verkaufssignale zum Verkauf ein.

Analyse der Vorteile

Der größte Vorteil dieser Strategie liegt in der Kombination mehrerer langfristiger und kurzfristiger Indikatoren zur Bestimmung der Marktsituation, die falsche Signale effektiv filtern kann.

  1. Der 200-Tage-MA bestimmt den Gesamttrend, um gegentrendische Geschäfte zu vermeiden.
  2. Der 20-Tage-MA konzentriert sich auf die kurzfristige Dynamik, um Umkehrungen zu erfassen.
  3. Der MACD überprüft Trendänderungen.
  4. Die Ichimoku-Wolke überprüft doppelt, um falsche Signale zu verhindern.

Durch mehrschichtige Überprüfungen kann die Rentabilitätsrate erheblich verbessert werden, und die Koordinierung zwischen langfristigen und kurzfristigen Indikatoren macht die Strategie auch für kurz- und mittelfristige Operationen geeignet.

Risikoanalyse

Das Hauptrisiko dieser Strategie ist die Wahrscheinlichkeit, dass mehrere Indikatoren gleichzeitig falsche Signale geben.

  1. Passen Sie die Parameter entsprechend an, um die optimale Kombination zu finden.
  2. Strict Stop-Loss, um nach falschen Signalen schnell die Richtung umzukehren.
  3. Verwenden Sie Futures-Hedging-Methoden, um Gewinne zu erzielen.
  4. Anpassung der Positionsgröße an die wichtigsten Stützflächen.

Optimierungsrichtlinien

Die Strategie kann aus folgenden Gesichtspunkten optimiert werden:

  1. Testen Sie verschiedene Parameterkombinationen, um das Optimum zu finden.
  2. Für eine bessere Risikokontrolle ein Stop-Loss-Modul hinzugefügt.
  3. Verwenden Sie Korrelationsindikatoren wie Veränderungsrate, um Höhen und Tiefen zu vermeiden.
  4. Einführung von Methoden des maschinellen Lernens wie neuronalen Netzwerken, um die Indikatorgewichtung zu trainieren.
  5. Überprüfung der Robustheit auf verschiedenen Märkten.

Schlussfolgerung

Die Great Delight-Strategie filtert durch wissenschaftliche Kombinationen von Indikatoren Lärm aus und ermöglicht eine anhaltende Rentabilität bei gleichzeitiger Kontrolle von Risiken. Durch die Berücksichtigung sowohl langfristiger Trends als auch kurzfristiger Chancen ist sie in mittelfristigen und langfristigen Investitionen weit verbreitet. Weitere Leistungsverbesserungen können durch Optimierungen wie Parameter-Tuning, Stop-Loss-Zusätze und die Einführung von maschinellem Lernen erwartet werden.


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

//@version=2
strategy(title="MACD/EMA/SMA/Ichimoku Long Strategy",overlay=true)




// Ichimoku

conversionPeriods = input(9, minval=1, title="Conversion Line Periods"),
basePeriods = input(26, minval=1, title="Base Line Periods")
laggingSpan2Periods = input(52, minval=1, title="Lagging Span 2 Periods"),
displacement = input(26, minval=1, title="Displacement")

donchian(len) => avg(lowest(len), highest(len))

conversionLine = donchian(conversionPeriods)
baseLine = donchian(basePeriods)
leadLine1 = avg(conversionLine, baseLine)
leadLine2 = donchian(laggingSpan2Periods)


p1 = plot(leadLine1, offset = displacement, color=green,
 title="Lead 1")
p2 = plot(leadLine2, offset = displacement, color=red, 
 title="Lead 2")
fill(p1, p2, color = leadLine1 > leadLine2 ? color(green,50) : color(red,50))



bottomcloud=leadLine2[displacement-1]
uppercloud=leadLine1[displacement-1]




// SMA Indicator - Are we in a Bull or Bear market according to 200 SMA?
SMA200 = sma(close, input(200))
EMA = ema(close,input(20))


//MACD Indicator - Is the MACD bullish or bearish?

fastLength = input(12)
slowlength = input(26)
MACDLength = input(9)

MACD = ema(close, fastLength) - ema(close, slowlength)
aMACD = ema(MACD, MACDLength)
delta = MACD - aMACD

// Set Buy/Sell conditions

[main,signal,histo]=macd(close,fastLength,slowlength,MACDLength)

buy_entry = if ((uppercloud>bottomcloud or close>max(uppercloud,bottomcloud)) and close>EMA and (delta>0 and close>min(uppercloud,bottomcloud))) or (close<SMA200 and delta>0 and close>EMA and (uppercloud>bottomcloud or close>max(uppercloud,bottomcloud)))
    true
if close<EMA and ((delta<0 and close<min(uppercloud,bottomcloud)) or (uppercloud<bottomcloud and close>max(uppercloud,bottomcloud)))
    buy_entry = false


strategy.entry("Buy",true , when=buy_entry)
alertcondition(buy_entry, title='Long', message='Chart Bullish')


sell_entry = if ((uppercloud<bottomcloud or close<min(uppercloud,bottomcloud)) and close<EMA and (delta<0 and close<max(uppercloud,bottomcloud))) or (close>SMA200 and delta<0 and close<EMA and (uppercloud<bottomcloud or close<min(uppercloud,bottomcloud)))
    true
if close>EMA and ((delta>0 and close>max(uppercloud,bottomcloud)) or (uppercloud>bottomcloud and close<min(uppercloud,bottomcloud)))
    sell_entry = false



strategy.close("Buy",when= sell_entry)


alertcondition(sell_entry, title='Short', message='Chart Bearish')

//plot(delta, title="Delta", style=cross, color=delta>=0 ? green : red )

Mehr