Quantitative Momentum-Strategie basierend auf dem LazyBear-Druckmoment


Erstellungsdatum: 2023-12-21 14:22:49 zuletzt geändert: 2023-12-21 14:22:49
Kopie: 0 Klicks: 926
1
konzentrieren Sie sich auf
1621
Anhänger

Quantitative Momentum-Strategie basierend auf dem LazyBear-Druckmoment

Überblick

Die Strategie basiert hauptsächlich auf LazyBears Squeeze Momentum-Indikator und analysiert die Zeitpunkte von Kauf und Verkauf. Sie analysiert die Trendwendepunkte, die Position der Höhen und Tiefen der Bewegung als Verkaufs- und Kaufsignale. Da es sich um eine Mehrfachstrategie handelt, wird auch der 50-Zyklus-Indikator-Moving Average berücksichtigt, um einen Aufwärtstrend zu erkennen.

Strategieprinzip

Die Strategie kombiniert den Brin-Band-Indikator mit dem Keltner-Kanal-Indikator, um Trend- und Druckbereiche zu identifizieren. Konkret berechnet sie den Brin-Band mit 20 Perioden und die Ober- und Unterbahn des Keltner-Kanals mit 20 Perioden. Wenn der Brin-Band vollständig in den Keltner-Kanal fällt, wird dies als Extrusionssignal angesehen.

Darüber hinaus nutzt die Strategie auch die lineare Regression, um die Veränderungen der Trend- und Schräglage-Dynamik zu analysieren. Sie berechnet die lineare Regression der typischen Preise abzüglich der Preisentwicklung der letzten 20 Perioden. Wenn die Schräglage der linearen Regression positiv ist, wird eine Aufwärtstrend angesehen; wenn die Schräglage negativ ist, wird eine Abwärtstrend angesehen.

Um falsche Signale zu filtern, beurteilt die Strategie auch, ob der Schlusskurs über dem 50-Tage-Moving-Average liegt und ob der 50-Tage-Moving-Average auf dem Vormarsch ist. Ein Kaufsignal wird nur ausgeführt, wenn diese beiden Bedingungen gleichzeitig erfüllt sind.

Strategische Stärkenanalyse

Dies ist eine sehr kluge Strategie, die die Verwendung von zwei verschiedenen Arten von Indikatoren für eine mehrdimensionale Einschätzung des Marktes ermöglicht, um falsche Signale zu vermeiden.

  1. Die kombinierte Anwendung von Brin-Band, Keltner-Kanal und Dynamometer für mehrdimensionale Analysen verbessert die Genauigkeit der Beurteilung.

  2. Die Druckstrecke kann die Höhen und Tiefen der Dynamikumkehr effektiv identifizieren und die Umdrehung genau erfassen.

  3. Trendfilter basierend auf dem Schlusskurs und dem 50-Tage-Moving-Average verhindern die Wiederholung von Positionen bei der Beseitigung.

  4. Nur in der Squeeze-Bereich zu senden, kann falsche Signale zu reduzieren und die Gewinnwahrscheinlichkeit zu erhöhen.

  5. Die Optimierung der Parameter dieser Strategie ist groß und kann gezielt optimiert werden, indem Parameter wie die Anpassung der Periode angepasst werden.

  6. Die langfristige Ausrichtung, die Konzentration auf die langfristigen Trends und die Kombination von kurz- und mittelfristigen Indikatoren.

Risikoanalyse

Obwohl die Strategie Nonfarming mehrere technische Indikatoren beurteilt, gibt es einige Risiken:

  1. Wenn der Brin-Band und der Keltner-Kanal verstreut werden, verpasst man Kauf-/Verkaufsmöglichkeiten.

  2. Wenn die Aktion stürzt, ist das ein großer Verlust für die Strategie.

  3. Bei hoher Volatilität kann die Extrusion nicht sichtbar sein und weniger Signal erzeugen.

  4. Bei der Umstellung auf den Rinder- und Bärenmarkt kann es zu Schadensausfällen kommen.

Wir können diese Risiken auf folgende Weise vermeiden:

  1. Optimierung der Parameter, um Brin-Band und Keltner-Kanal möglichst synchron zu halten.

  2. Setzen Sie eine Stop-Loss-Linie und kontrollieren Sie Ihre Einzelschäden.

  3. Die Anwendung dieser Strategie als Teil einer Kombinationsstrategie und in Kombination mit anderen Strategien.

  4. Bei hoher Volatilität sollten Sie Ihre Positionen entsprechend senken.

Optimierungsrichtung

Es gibt noch viel Optimierungsmöglichkeiten für diese Strategie, und die wichtigsten sind:

  1. Optimierung der Längenzyklen der Brin- und Keltner-Kanäle, so dass sie möglichst synchron sind.

  2. Verschiedene Multiplikatoren werden getestet, um die optimale Kombination von Parametern zu finden.

  3. Versuchen Sie es mit anderen Indikatoren, wie dem RSI, zu bestätigen.

  4. Diese Strategie wird selektiv angewendet, um die Marktphase anhand von Modellen wie der Wertschöpfungskette zu beurteilen.

  5. Dynamische Optimierungsparameter mit Methoden wie Machine Learning.

  6. Es ist wichtig, die verschiedenen Währungen zu analysieren, um die am besten geeigneten Handelsarten zu finden.

  7. Erforschen Sie die Wirkung der Strategie auf längere Zeiträume (Sonnen- und Kreislinien usw.).

Zusammenfassen

Die LazyBear Druckmoment-Quantifizierungs-Dynamik-Strategie verwendet mehrere technische Indikatoren, identifiziert die Dynamik-Umkehrung in der Squeeze-Bereich und vermeidet die häufige Positionseröffnung in nicht-trendenden Situationen. Sie definiert systematisch die quantitativen Kauf- und Verkaufsregeln und zeigt sich bei der Rückmessung hervorragend. Durch die Optimierung der Parameter-Einstellungen und die Einführung neuer Beurteilungskennzahlen hat die Strategie viel Raum für Verbesserungen, die es wert sind, dass sie von den Quantifizierungs-Händlern eingehend erforscht und angewendet werden.

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

//@version=4

//
// @author LazyBear 
// List of all my indicators: https://www.tradingview.com/v/4IneGo8h/
//
initialBalance = 8000

strategy("Crypto momentum strategy", overlay=false)


length = input(20, title="BB Length")
mult = input(2.0, title="BB MultFactor")
lengthKC = input(20, title="KC Length")
multKC = input(1.5, title="KC MultFactor")

useTrueRange = input(true, title="Use TrueRange (KC)", type=input.bool)

// Calculate BB
source = close
basis = sma(source, length)
ema = ema(source, 50)
dev = multKC * stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev

// Calculate KC
ma = sma(source, lengthKC)
range = useTrueRange ? tr : high - low
rangema = sma(range, lengthKC)
upperKC = ma + rangema * multKC
lowerKC = ma - rangema * multKC

sqzOn = lowerBB > lowerKC and upperBB < upperKC
sqzOff = lowerBB < lowerKC and upperBB > upperKC
noSqz = sqzOn == false and sqzOff == false

val = linreg(source - avg(avg(highest(high, lengthKC), lowest(low, lengthKC)), sma(close, lengthKC)), lengthKC, 0)

slope = (val - val[2])
emaSlope = (ema - ema[1])


bcolor = iff(slope > 0, color.lime, color.red)
scolor = noSqz ? color.green : sqzOn ? color.black : color.green
squeeze = (noSqz ? 0 : sqzOn ? 1 : 0)

plot(val, color=color.gray, style=plot.style_line, linewidth=1, title="momentum")
plot(slope, color=bcolor, style=plot.style_circles, linewidth=2, title="slope")
plot(0, color=scolor, style=plot.style_line, linewidth=2, title="squeeze-zero")

co = crossover(slope / abs(slope), 0)
cu = crossunder(slope / abs(slope), 0)

if co and source > ema and emaSlope > 0
    strategy.entry("long", strategy.long, comment="long")
if cu
    strategy.close("long")