Die Reversal Fluctuation CAT-Strategie ist eine quantitative Handelsstrategie, die auf technischen Indikatoren basiert. Diese Strategie beurteilt den Markttrend und die Unterstützungs-/Widerstandspositionen durch MA, EMA und andere Indikatoren und kombiniert benutzerdefinierte Schwarze und Weiße Schwan-Indikatoren, um abnorme Schwankungen zu bestimmen, wodurch eine Trend-Handelsstrategie des Kaufs niedrig und des Verkaufs hoch implementiert wird.
Die Kernlogik der Reversal Fluctuation CAT Strategie besteht darin, den Gesamttrend anhand technischer Indikatoren wie MA und EMA zu beurteilen und dann die Chancen für abnormale Schwankungen mit benutzerdefinierten Schwarzschwan- und Weißschwan-Indikatoren zu erfassen.
Bei der Ermittlung der Gesamttrendrichtung werden Indikatoren wie SMA und EMA verwendet. Zum Beispiel gilt ein EMA144-Kreuz über dem EMA169 als Aufwärtssignal und ein EMA144-Kreuz unter dem EMA169 als Bärensignal.
Ein benutzerdefinierter Schwarzer Schwan-Indikator wird definiert als (close - open) / close. Er spiegelt den Grad der abnormalen Schwankung eines Kerzenstäbels wider. Wenn der Schwarze Schwan-Indikator den Schwellenwert überschreitet (z. B. 0,0191) und der Schluß niedriger als der offene ist, zeigt er eine abwärts gerichtete abnormale Schwankung an, die eine Kurzzeitmöglichkeit darstellt.
Der weiße Schwan-Indikator ist dem schwarzen Schwan-Indikator ähnlich, der auch den Grad der abnormalen Schwankung eines Kerzenstäbels widerspiegelt.
Nachdem er die Chancen für abnormale Schwankungen erfasst hat, wartet er auf Umkehrsignale von Indikatoren wie der EMA, um Positionen zu schließen, wodurch er niedrig kauft und hoch verkauft.
Diese Strategie kombiniert die Verwendung von gleitenden Durchschnitten zur Bestimmung von Trends und benutzerdefinierten Indikatoren zur Erfassung von Anomalien, die eine typische quantitative Umkehrhandelsstrategie umsetzen.
Die CAT-Strategie der Umkehrfluktuation weist folgende Vorteile auf:
Der Black Swan und der White Swan Indikator können abnormale Kursschwankungen effektiv erfassen. Diese Schwankungen implizieren oft Umkehrungen, so dass die Handelsgewinnrate höher ist.
Die Ein- und Ausstiegskriterien dieser Strategie sind sehr klar, was hilft, zufällige und emotionale Operationen durch Händler zu vermeiden.
Mehrere Parameter und Indikatoren zur Optimierung und Anpassung, wie z. B. die Zyklusparameter von MA und EMA, die Schwellenparameter von Schwarzschwan und Weißschwan-Indikatoren usw., können optimiert und angepasst werden, um die Strategie besser an verschiedene Produkte und Handelsumgebungen anzupassen.
Diese Strategie kombiniert sowohl Trend als auch Umkehrung und kann für verschiedene Zeitzyklen konfiguriert werden, um in Hoch- und Niederfrequenzhandelsszenarien verwendet zu werden.
Relativ vollständige Maßnahmen zur Risikokontrolle: Die Strategie setzt für die Auftragsvergabe einen Anteil am Eigenkapital ein und verfügt auch über einen Stop-Loss-Mechanismus zur effektiven Kontrolle von Einzelhandelsverlusten.
Die CAT-Strategie der Umkehrfluktuation birgt auch einige Risiken, insbesondere:
Parameteroptimierungsrisiko. Die Einstellung von Parametern wie Schwarzer und Weißer Schwan hat einen großen Einfluss auf die Strategieleistung. Wenn die Parameter unsachgemäß eingestellt werden, wird dies die Rentabilität der Strategie erheblich reduzieren.
Wenn der Markt einen längeren einseitigen Trend aufweist, kann diese Strategie zu bestimmten aufeinanderfolgenden Verlusten und größeren Abzügen führen.
Falsche Ausbrüche treten häufig kurzfristig in der Realität auf.
Als Reaktion auf die oben genannten Risiken können folgende Maßnahmen ergriffen werden:
Ein Parameteroptimierungsmechanismus zu etablieren, historische Daten für strenge Rückprüfung und Optimierung zu verwenden, um angemessene Parameter-Einstellungen sicherzustellen.
Ein angemessener Stop-Loss kann den Einzelhandelsverlust und den maximalen Drawdown effektiv kontrollieren.
Einstellung der Parameterempfindlichkeit. Vermeiden Sie überempfindliche Parameter-Einstellungen, indem Sie bestimmte Filterbedingungen hinzufügen, um falsche Ausbruchstörungen zu vermeiden.
Die Reversal Fluctuation CAT-Strategie bietet ebenfalls große Optimierungsmöglichkeiten.
Weiterentwicklung der Indikatoren für den schwarzen und weißen Schwan, indem verschiedene Parameterkombinationen festgelegt werden, um abnormale Schwankungen genauer und umfassender zu ermitteln.
Erhöhen Sie die Anzahl der Algorithmen für maschinelles Lernen, verwenden Sie neuronale Netzwerke oder Ensemble-Lernmethoden, um die Parameterkonfigurationen automatisch zu optimieren, so dass sich die Strategieparameter dynamisch anpassen, um sich besser an die Marktveränderungen anzupassen.
Verwenden Sie Deep Learning-Technologie, um Chartmuster zu identifizieren, um Preisumkehrsignale zu beurteilen und die Strategieleistung zu verbessern.
Fügen Sie eine verschwommene Logikkontrolle über die Parameterempfindlichkeit hinzu, halten Sie die Parameter stabil, wenn der Trend offensichtlich ist, und erhöhen Sie die Parameterempfindlichkeit an Wendepunkten, wenn sich der Trend umkehrt.
Kombination globaler Optimierungsmethoden wie parameterfreie genetische Algorithmen und simuliertes Glühen, um eine Gesamtoptimierung mit mehreren Parametern zu erreichen.
Erweitern Sie die Handelsvarietäten, erhöhen Sie andere Varietäten wie Aktien und Kryptowährungen für Cross-Market-Arbitrage.
Durch die systematische Optimierung von Modellen und Parametern kann die Robustheit der CAT-Strategie zur Umkehrung von Schwankungen weiter verbessert werden und somit überlegene Handelsergebnisse erzielt werden.
Die Reversal Fluctuation CAT-Strategie kombiniert gleitende Durchschnitte und benutzerdefinierte Indikatoren, um Marktumkehrungen in einer quantitativen Handelsstrategie effektiv zu identifizieren. Diese Strategie hat Vorteile wie das Erfassen von abnormalen Schwankungen, Standard-Eintritts- und -Austrittsregeln und großen Optimierungsraum. Der Effekt kann durch Parameter- und Modelloptimierung weiter verbessert werden. Risiken wie Parameteroptimierungsrisiko, Drawdown-Risiko und falsches Ausbruchrisiko müssen gewahrt werden. Insgesamt ist die Idee dieser Strategie vernünftig und hat eine gute Praktikabilität.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //适合1分钟-3分钟的k线,发生波动超过百分之二时,自动报警 strategy("BlackSwan strategy", overlay=true, initial_capital=10000, currency='USD', default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type= strategy.commission.percent, commission_value=0.075,pyramiding=3) //------------------------------------------- //------------------------------------------- timecondition = timeframe.period =="480" or timeframe.period =="240" or timeframe.period =="D" or timeframe.period =="720" // Make input options that configure backtest date range startDate = input(title="Start Date", type=input.integer, defval=1, minval=1, maxval=31) startMonth = input(title="Start Month", type=input.integer, defval=11, minval=1, maxval=12) startYear = input(title="Start Year", type=input.integer, defval=2018, minval=1800, maxval=2100) endDate = input(title="End Date", type=input.integer, defval=1, minval=1, maxval=31) endMonth = input(title="End Month", type=input.integer, defval=11, minval=1, maxval=12) endYear = input(title="End Year", type=input.integer, defval=2031, minval=1800, maxval=2100) // Look if the close time of the current bar // falls inside the date range inDateRange = (time >= timestamp(syminfo.timezone, startYear, startMonth, startDate, 0, 0)) and (time < timestamp(syminfo.timezone, endYear, endMonth, endDate, 0, 0)) // Inputs a = input(1, title = "Key Vaule. 'This changes the sensitivity'") c = input(10, title = "ATR Period") h = input(false, title = "Signals from Heikin Ashi Candles") ma60 = sma(close,60) ema144 = ema(close,144) ema169 = ema(close,169) ma20=sma(close,20) plot(ema144,color=color.yellow, title="144") plot(ema169,color=color.orange, title="169") heitiane=(close-open) heitiane:=abs(heitiane) heitiane:=heitiane/close if (inDateRange and heitiane >0.0191 and close<open) // and close>f3 strategy.entry("botsell20", strategy.short, comment = "黑天鹅追空"+tostring(heitiane)) if(crossover(ema144,ema169)) strategy.close("botsell20", comment = "平空") if (inDateRange and heitiane >0.0191 and close>open) // and close>f3 strategy.entry("botbuy20", strategy.long, comment = "白天鹅追多"+tostring(heitiane)) if(crossunder(ema144,ema169)) strategy.close("botbuy20", comment = "平多")