Die Strategie basiert auf der Herstellung von Kauf- und Verkaufssignalen, die auf den üblichen gleitenden Durchschnittskreuzungen basieren, jedoch mit einigen Änderungen, um eine genauere Handelssignal zu erzeugen. Die Strategie, die die Kreuzung von schnellen und langsamen gleitenden Durchschnitten kombiniert, um Trends zu bestimmen, gehört zur Trendverfolgungsstrategie.
Wenn ein schneller gleitender Durchschnitt den langsamen gleitenden Durchschnitt von unten durchbricht, wird es als ein Kaufsignal angesehen; wenn ein schneller gleitender Durchschnitt den langsamen gleitenden Durchschnitt von oben durchbricht, wird es als ein Verkaufsignal angesehen.
Der Schlüssel zur Strategie besteht in der Auswahl eines schnellen und langsamen Durchschnitts. Diese Strategie verwendet als Schnell- und als Langsam-Durchschnittsindex 50 und 100 als Durchschnittsindex. Die Strategiewirkung kann durch Anpassung der Durchschnittsparameter optimiert werden.
Die Strategie, die mit zwei Gleichlinien kombiniert wird, kann Trends effektiv filtern und Trends identifizieren. Im Vergleich zu einer einheitlichen Strategie kann die Strategie die Gewinnchancen erhöhen. Zusätzlich kann die Einstellung von Stop-Loss-Lösungen die Verluste einzelner Trades begrenzen.
Die Strategie verwendet das Kreuzprinzip, um Trendwendepunkte zu bestimmen und Trendchancen rechtzeitig zu erfassen. Die Strategie ist im Vergleich zu Strategien mit komplexer bedingter Logik leicht zu verstehen und zu implementieren.
Die Strategie kann drei Risiken aufweisen: falsches Parameterrisiko, falsches Haltezeitrisiko und falsches Stop-Loss-Risiko.
Eine falsche Auswahl der Gleichstrangparameter führt zu einem falschen Signal. Wenn die Gleichstranglänge zu kurz oder zu lang ist, wird der Markt falsch beurteilt und sollte entsprechend an die spezifischen Merkmale der Sorte angepasst werden.
Eine zu lange oder zu kurze Haltedauer, um den Gewinn oder das Risiko nicht zu maximieren oder zu kontrollieren. Verschiedene Ausgänge müssen getestet werden, um den optimalen Haltedauer zu bestimmen.
Eine falsche Einstellung der Stoppposition führt zu einer zu lockeren oder zu spannenden Stoppposition, die entsprechend der Variationsfrequenz bestimmt wird.
Die Strategie kann in folgenden Bereichen optimiert werden:
Versuche mehr Kombinationen von Gleichungsparametern, um die besten zu finden.
Dynamische Stop-Loss-Positionen basierend auf den letzten N-Tage-Preisschwankungen oder ATRs
Mit mehr Indikatoren wie MACD, KD, etc. wird der Einstiegszeitpunkt bestimmt.
Trends filtern, um den Markt zu vermeiden
Es kann in Betracht gezogen werden, die Strategie auf mehr Arten anzuwenden oder sie zu einer inter-artenartigen Strategie zu verbessern.
Die mobile Mittel-Cross-Optimierung-Strategie integriert die Vorteile einer schnellen, langsamen Trendorientierung und setzt Stopp-Losses zur Risikokontrolle ein. Sie ist eine leicht umsetzbare Trend-Tracking-Strategie. Sie kann durch Parameteroptimierung, Stopp-Loss-Optimierung, Signalfilterung und andere Methoden die Stabilität und Effizienz weiter verbessern.
/*backtest start: 2024-01-27 00:00:00 end: 2024-02-03 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © ashishchauhan strategy(title="MA CO Strategy Test", overlay=true, pyramiding=0, initial_capital=100000) fastEMALen = input(title="Fast EMA Length", type=input.integer, defval=50) slowEMALen = input(title="Slow EMA Length", type=input.integer, defval=100) fastEMA = ema(close, fastEMALen) slowEMA = ema(close, slowEMALen) enterLong = crossover(fastEMA, slowEMA) enterShort = crossunder(fastEMA, slowEMA) longStop = 0.0 longStop := enterShort ? close : longStop[1] shortStop = 0.0 shortStop := enterLong ? close : shortStop[1] plot(series=fastEMA, color=color.orange, title="Fast EMA") plot(series=slowEMA, color=color.teal, linewidth=3, title="Slow EMA") if enterLong strategy.entry(id="GoLong", long=true) if enterShort strategy.entry(id="GoShort", long=false) if strategy.position_size > 0 strategy.exit(id="ExLong", from_entry="GoLong", stop=longStop) if strategy.position_size < 0 strategy.exit(id="ExShort", from_entry="GoShort", stop=shortStop) strategy.close_all()