Strategie zur Beobachtung der Volatilität doppelter gleitender Durchschnitte

Schriftsteller:ChaoZhang, Datum: 2024-02-29 11:15:08
Tags:

img

Übersicht

Die Dual Moving Average Volatility Tracking Strategie integriert die Ideen der Golden Cross Dead Cross und Moving Average Volatility Tracking Strategien. Durch die Berechnung des Crossovers einfacher gleitender Durchschnitte (SMAs) mit verschiedenen Perioden realisiert sie das goldene Kreuz und das tote Kreuz, um Trends zu beurteilen.

Strategie Logik

Die wichtigsten Indikatoren dieser Strategie sind der einfache gleitende Durchschnitt (SMA), Bollinger Bands und der variable Index Dynamic Average (VIDYA). Die Strategie setzt einen schnellen SMA und einen langsamen LMA mit verschiedenen Perioden auf. Das goldene Kreuz der schnellen und langsamen Linien dient als langes Signal, während das Todeskreuz als Ausgangssignal dient. Inzwischen überwacht sie den Preisbruch über oder unter den Bollinger Bands während eines Haltezeitraums. Das VIDYA, das Volatilitätsinformationen enthält, beurteilt die aktuelle Trendrichtung und -stärke.

Insbesondere wird die lange Signallogik ausgelöst, wenn die schnelle SMA über die langsame LMA überschreitet und der Preis über der VIDYA-Kurve liegt, was auf einen Aufwärtstrend und eine Volatilitätserweiterung hinweist.

Analyse der Vorteile

Der größte Vorteil dieser Strategie besteht darin, dass zwei Indikatoren zur Beurteilung der Marktbedingungen kombiniert werden, wodurch die Entscheidungsgenauigkeit verbessert wird.

  1. Die Strategie des goldenen Kreuzes und des toten Kreuzes ist einfach und wirksam, um Trendwendepunkte zu erkennen.
  2. Der VIDYA-Index verfolgt dynamisch Veränderungen der Marktvolatilität.
  3. Die Bollinger-Bänder reagieren rechtzeitig auf Kursschwankungen.

Zusammenfassend lässt sich sagen, dass diese Strategie Informationen aus den Dimensionen Trends, Reverssion und Volatilität integriert und schneller auf Marktveränderungen reagiert und eine größere Möglichkeit hat, Alpha zu erzeugen.

Risikoanalyse

Obwohl diese Strategie viele Vorteile bietet, bestehen immer noch einige Risiken, die beachtet werden müssen:

  1. Eine unsachgemäße Einstellung der Parameter kann zu einem Überhandel, zu erhöhten Kosten und zu Verschiebungen führen.
  2. Gegensätzliche Signale zwischen zwei Indikatoren können dazu führen, dass die besten Einstiegspunkte fehlen.
  3. Es besteht ein Risiko einer Überanpassung des Backtests, und die tatsächliche Handelsleistung könnte sich stark von den Ergebnissen des Backtests unterscheiden.

Um die oben genannten Risiken zu mindern, empfiehlt sich die Optimierung der Parameter, Prioritätsregeln zwischen Signalen, Rutschkontrollen und Robustheitstests unter verschiedenen Marktumgebungen.

Optimierungsrichtlinien

Die wichtigsten Optimierungsdimensionen liegen in Parameter-Tuning und Filter-Zustandseinstellung:

  1. Optimierung der SMA- und LMA-Periodenparameter.
  2. Anpassung des Bandbreitenparameters für Bollinger-Bänder.
  3. Optimieren Sie den Alpha-Gleichungsparameter in VIDYA.
  4. Hinzufügen von Preis- oder Volumenfilterbedingungen.

Die Kombination aus Parameteroptimierung und Regelverfeinerung könnte die Stabilität und Rentabilität weiter verbessern.

Schlussfolgerung

Die Dual Moving Average Volatility Tracking Strategie nutzt mehrere Indikatoren, um Marktbedingungen zu bestimmen und Trendwendepunkte zu erfassen, während Preisschwankungen überwacht werden.


/*backtest
start: 2024-01-29 00:00:00
end: 2024-02-28 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Combined Golden Cross and Progressive Trend Tracker", shorttitle="GCC-PTT", overlay=true)

// Inputs
fastMA_period = input(50, title="Fast MA Period")
slowMA_period = input(200, title="Slow MA Period")
src = input(close, title="Source")
lengthBB = input(20, title="Bollinger Bands Length")
mult = input(2.0, title="Bollinger Bands Multiplier")
mavType = input.string(title="Moving Average Type", defval="VAR", options=['SMA', 'EMA', 'WMA', 'TMA', 'VAR', 'WWMA', 'ZLEMA', 'TSF'])

// Calculate Moving Averages for Golden Cross
fastMA = ta.sma(src, fastMA_period)
slowMA = ta.sma(src, slowMA_period)
bullish_cross = ta.crossover(fastMA, slowMA)
bearish_cross = ta.crossunder(fastMA, slowMA)

// Progressive Trend Tracker Components (Adjusted for NA assignment issue)
Var_Func(src, length) =>
    valpha = 2 / (length + 1)
    vud1 = src > src[1] ? src - src[1] : 0
    vdd1 = src < src[1] ? src[1] - src : 0
    vUD = math.sum(vud1, length)
    vDD = math.sum(vdd1, length)
    vCMO = (vUD - vDD) / (vUD + vDD)
    VAR = 0.0 // Adjusted here, assign an initial value
    VAR := ta.ema(src * math.abs(vCMO), length)
    VAR

VAR = Var_Func(src, 14) // Example VAR calculation, adjust as needed

// Bollinger Bands for dynamic support and resistance
BBandTop = fastMA + mult * ta.stdev(src, lengthBB)
BBandBot = fastMA - mult * ta.stdev(src, lengthBB)

// Plotting
plot(fastMA, color=color.blue, title="Fast MA")
plot(slowMA, color=color.red, title="Slow MA")
plot(BBandTop, color=color.green, title="Bollinger Band Top")
plot(BBandBot, color=color.red, title="Bollinger Band Bottom")
plot(VAR, color=color.purple, title="VAR", linewidth=2)

// Strategy Logic (Adjusted for strategy use)
// Long Entry when bullish cross and close above VAR
// Exit when bearish cross or close below VAR
if (bullish_cross and close > VAR)
    strategy.entry("CGC_PTT_Long", strategy.long)
if (bearish_cross or close < VAR)
    strategy.close("CGC_PTT_Long")


Mehr