Acht Tage umgekehrter Schwung

Schriftsteller:ChaoZhang, Datum: 2023-12-05 10:56:37
Tags:

img

Übersicht

Diese Strategie nutzt hauptsächlich die Umkehrfunktion der Preise, nachdem sie 8 Tage lang kontinuierlich über oder unter dem 5-tägigen einfachen gleitenden Durchschnitt geschlossen wurden, um den Momentum-Effekt mittelfristig und kurzfristig zu erfassen.

Strategie Logik

  1. Berechnen Sie den 5-tägigen einfachen gleitenden Durchschnitt.
  2. Definition des Aufwärtstrends TrendUp als nahe größer oder gleich der SMA, Abwärtstrend TrendDown als nahe kleiner oder gleich der SMA.
  3. Bestätigen Sie die Bedingung für eine Trendumkehrung: Trigger-Kaufsignal, wenn der Schlusskurs 8 aufeinanderfolgende Tage unter der SMA schließt und am nächsten Tag zum Aufwärtstrend wechselt (über die SMA geht); Trigger-Verkaufssignal, wenn der Schlusskurs 8 aufeinanderfolgende Tage über der SMA schließt und am nächsten Tag zum Abwärtstrend wechselt (über die SMA geht).
  4. Eintritt: lang, wenn die Kaufbedingung gestern ausgelöst wurde und der aktuelle Trend Abwärtstrend ist; kurz, wenn die Verkaufbedingung gestern ausgelöst wurde und der aktuelle Trend Aufwärtstrend ist.
  5. Ausgang: Abschluss einer Long-Position, wenn der Schlusskurs unterhalb der SMA liegt; Schluß einer Short-Position, wenn der Schlusskurs über der SMA liegt.

Analyse der Vorteile

  1. Er erfasst die Dynamik durch die Nutzung von Preisumkehrfunktionen, die für den mittelfristigen und kurzfristigen Handel geeignet sind.
  2. Hohe Handelschancen, da ein kontinuierlicher 8-tägiger SMA-Ausbruch häufig auftritt.
  3. Der 5-Tage-SMA-Parameter funktioniert gut, vermeidet zu viele falsche Ausbrüche.
  4. Kontrollierbares Risiko mit klarem Stop-Loss-Punkt.

Risikoanalyse

  1. Bei einer Konsolidierung des Marktes kann häufig ein Stop-Loss ausgelöst werden.
  2. Kann den besten Einstieg verpassen, wenn die Ausbruchtage zu lang sind.
  3. Schwer zu profitieren, wenn es einen langen Trend gibt.

Kann die SMA-Parameter optimieren, die Einstiegskriterien verbessern, um einen falschen Ausbruch zu verhindern, mit Trendindikatoren kombinieren, um die Strategie zu stärken.

Optimierungsrichtlinien

  1. Parameteroptimierung: Versuche verschiedene Perioden der SMA, um bessere Parameter zu finden.
  2. Einstiegsoptimierung: Fügen Sie Volumenindikatoren hinzu, um falsche Ausbrüche zu vermeiden; oder beurteilen Sie Bullen / Bärenkerzen, um Whipsaws zu vermeiden.
  3. Exit-Optimierung: Festprozentsatz-Stop-Loss-Test, um mehr Platz zu geben.
  4. Risikokontrolle: Festlegen von maximalen Tagesstop-Loss-Zeiten zur Begrenzung von Verlusten.
  5. Kombination von Indikatoren: RSI, MACD hinzufügen, um den Trend zu ermitteln und Marktbedingungen zu ermitteln.

Schlussfolgerung

Die Strategie erfasst die Preisbewegung vom Ausbruch bis zum Rückzug, indem sie die Dynamik beurteilt, implementiert die Handelslogik, Whipsaws zu vermeiden und dem Trend zu folgen. Die Schlüssel sind strenge Parameter-Einstellungen und robuste Einstiegskriterien, um Lärm zu vermeiden; angemessener Stop-Loss, um Verluste zu begrenzen. Die Kombination mit Trendindikatoren kann bessere Ergebnisse erzielen. Die Strategielogik ist einfach und sauber. Es lohnt sich, weitere Optimierung zu erforschen.


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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Marcuscor

//@version=5

// Inpsired by Linda Bradford Raschke: a strategy for trading momentum in futures markets

strategy("8D Run", initial_capital = 50000, commission_value = 0.0004) 


SMA = ta.sma(close,5)

TrendUp = close >= SMA

TrendDown = close <= SMA


//logic to long

TriggerBuy = ta.barssince(close < SMA) >= 8

Buy = TriggerBuy[1] and TrendDown 

strategy.entry("EL", strategy.long, when = Buy)
strategy.close(id = "EL", when = close > SMA)

// 1) color background when "run" begins and 2) change color when buy signal occurs
bgcolor(TriggerBuy? color.green : na, transp = 90)
bgcolor(Buy ? color.green : na, transp = 70)


// logic to short 

TriggerSell = ta.barssince(close > SMA) >= 8

Sell = TriggerSell[1] and TrendUp

strategy.entry("ES", strategy.short, when = Sell)
strategy.close(id = "ES", when = close < SMA)

// 1) color background when "run" begins and 2) change color when sell signal occurs
bgcolor(TriggerSell ? color.red : na, transp = 90)
bgcolor(Sell ? color.red : na, transp = 70) 







Mehr