Doppelbox-Trendverfolgungssystem

Schriftsteller:ChaoZhang, Datum: 2023-11-02 17:19:22
Tags:

Übersicht

Das Trend Following System ist eine Trend-Tracking-Strategie, die auf einem Doppelbox-System basiert. Es verwendet eine langfristige Box, um die allgemeine Trendrichtung zu bestimmen, und nimmt Signale, die mit dem Haupttrend übereinstimmen, wenn die kurzfristige Box auslöst. Diese Strategie folgt Trends, während Risiken verwaltet werden.

Strategie Logik

Die Strategie verwendet zwei Boxen, um den Trend zu bestimmen. Die langfristige Box verwendet einen längeren Zeitraum, um die Haupttrendrichtung zu beurteilen, und die kurzfristige Box verwendet einen kürzeren Zeitraum, um Handelssignale zu generieren.

Zunächst berechnet die Strategie die höchsten und niedrigsten Preise der langfristigen Box, um die Haupttrendrichtung zu bestimmen.

  • Wenn der höchste Preis über den höchsten Preis des vorherigen Balkens geht, wird er als Aufwärtstrend definiert, dem ein Wert von 1 zugewiesen wird.
  • Wenn der niedrigste Preis unter den niedrigsten Preis des vorherigen Balkens kreuzt, wird er als Abwärtstrend definiert, dem ein Wert von -1 zugewiesen wird.
  • Ansonsten halten Sie die ursprüngliche Trendrichtung bei

Nachdem der Haupttrend ermittelt wurde, nimmt die Strategie anhand der kurzfristigen Boxsignale Positionen ein.

  • Wenn der Haupttrend steigt und der niedrigste Preis der kurzfristigen Box gleich dem niedrigsten Preis der vorherigen Bar ist und niedriger ist als der niedrigste Preis der aktuellen kurzfristigen Box, gehen Sie lang.
  • Wenn der Haupttrend nach unten ist und der höchste Preis der kurzfristigen Box gleich dem höchsten Preis der vorherigen Bar ist und höher ist als der höchste Preis der aktuellen kurzfristigen Box, gehen Sie kurz.

Darüber hinaus sind Stop Loss und Take Profit konfiguriert:

  • Long Stop Loss ist der niedrigste Preis der langfristigen Box, Short Stop Loss ist der höchste Preis der langfristigen Box
  • Der langfristige Gewinn ist der höchste Preis der kurzfristigen Box, der kurze Gewinn ist der niedrigste Preis der kurzfristigen Box.

Wenn sich der Haupttrend umkehrt, schließen Sie alle Positionen.

Analyse der Vorteile

Zu den Vorteilen dieser Strategie gehören:

  1. Das Doppelbox-System identifiziert effektiv Trendrichtungen und reduziert falsche Trades
  2. Nur umgekehrte Signale, die mit dem Haupttrend übereinstimmen, verhindern, dass man durch kurzfristige Marktlärm irregeführt wird
  3. Die Kombination aus langen und kurzen Perioden sorgt dafür, dass die wichtigsten Trends erfasst und gleichzeitig die Flexibilität bei der Positionsanpassung gewahrt bleibt
  4. angemessene Stop-Loss- und Take-Profit-Punkte, um das Risiko zu kontrollieren und dabei Trends zu verfolgen
  5. Schnelle Abflachung aller Positionen bei Umkehr des großen Trends minimiert Verluste

Risikoanalyse

Zu den Risiken dieser Strategie gehören:

  1. Fehlende Einstellungen für lange und kurze Zeiträume können zu Überhandelungen oder fehlenden Möglichkeiten führen
  2. Kurzfristige Umkehrungen stellen möglicherweise keine langfristigen Trendveränderungen dar und stellen trotzdem Verlustrisiken dar.
  3. Ein Stopp-Loss zu nah kann vorzeitig gestoppt werden.
  4. Wenn man zu viel Gewinn macht, kann man nicht maximal gewinnen.
  5. Eine falsche Einschätzung des großen Trends führt zu Verlusten
  6. Die Lösungen umfassen die Anpassung der Zeiträume, die Optimierung von Stopps/Zielen, das Hinzufügen von Filtern usw.

Optimierungsrichtlinien

Die Strategie kann verbessert werden, indem

  1. Hinzufügen von Filtern, um falsche Ausbrüche zu vermeiden
  2. Optimierung von langen und kurzen Zeiten für verschiedene Produkte
  3. Dynamische Anpassung der Stop-Loss- und Take-Profit-Level
  4. Einbeziehung von Positionsgrößenregelungen
  5. Verwendung von Volumen usw. zur Beurteilung der Zuverlässigkeit von Trendänderungen
  6. Nutzung von maschinellem Lernen zur automatischen Optimierung von Parametern und Filtern

Zusammenfassung

Das Trend Following System ist eine praktische Trendhandelsstrategie, die Trendbestimmung und kurzfristige Anpassungen kombiniert. Mit kontinuierlichen Optimierungen kann es zu einem robusten automatisierten System werden, das Trends verfolgt und gleichzeitig Risiken kontrolliert. Es enthält die Kernphilosophien des Trendhandels und ist ein tieferes Studium wert.

[/trans]


/*backtest
start: 2023-10-25 00:00:00
end: 2023-10-26 07:00:00
period: 5m
basePeriod: 1m
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/
// © LonesomeTheBlue

//@version=4
strategy("Grab Trading System", overlay = true)
flb = input(defval = 80, title = "Longterm Period", minval = 1)
slb = input(defval = 21, title = "Shortterm Period", minval = 1)
showtarget = input(defval = true, title = "Show Target")
showtrend = input(defval = true, title = "Show Trend")

major_resistance = highest(flb)
major_support = lowest(flb)
minor_resistance = highest(slb)
minor_support = lowest(slb)

var int trend = 0
trend := high > major_resistance[1] ? 1 : low < major_support[1] ? -1 : trend
strategy.entry("Buy", true, when = trend == 1 and low[1] == minor_support[1] and low > minor_support)
strategy.entry("Sell", false, when = trend == -1 and high[1] == minor_resistance[1] and high < minor_resistance)

if strategy.position_size > 0
    strategy.exit("Buy", stop = major_support, comment = "Stop Buy")
    if high[1] == minor_resistance[1] and high < minor_resistance
        strategy.close("Buy", comment ="Close Buy")
    
if strategy.position_size < 0
    strategy.exit("Sell", stop = major_resistance, comment = "Stop Sell")
    if low[1] == minor_support[1] and low > minor_support
        strategy.close("Sell", comment ="Close Sell")

if strategy.position_size != 0 and change(trend)
    strategy.close_all()
    
majr = plot(major_resistance, color = showtrend and trend == -1 and trend[1] == -1 ? color.red : na)
majs = plot(major_support, color = showtrend and trend == 1 and trend[1] == 1 ? color.lime : na)
minr = plot(minor_resistance, color = showtarget and trend == 1 and strategy.position_size > 0 ? color.yellow : na, style = plot.style_circles)
mins = plot(minor_support, color = showtarget and trend == -1 and strategy.position_size < 0 ? color.yellow : na, style = plot.style_circles)

fill(majs, mins, color = showtrend and trend == 1 and trend[1] == 1 ? color.lime : na, transp = 85)
fill(majr, minr, color = showtrend and trend == -1 and trend[1] == -1 ? color.red : na, transp = 85)


Mehr