TURTLE - ATR Bollinger Band Breakout Strategie

ATR
Erstellungsdatum: 2024-06-03 10:48:09 zuletzt geändert: 2024-06-03 10:48:09
Kopie: 0 Klicks: 710
1
konzentrieren Sie sich auf
1617
Anhänger

TURTLE - ATR Bollinger Band Breakout Strategie

Überblick

Es handelt sich um eine Trendverfolgungsstrategie, die auf den Hafenhandelsregeln basiert. Die Strategie verwendet die ATR (Average True Range) zur Bestimmung der Trendrichtung und der Größe der Handelsposition. Die Strategie wird geöffnet oder geschlossen, wenn der Preis den höchsten oder niedrigsten Preis der vergangenen Zeit überschreitet.

Strategieprinzip

Der Kern der Strategie ist die Verwendung von ATR-Indikatoren, um die Richtung der Tendenz und die Größe der Handelsposition zu bestimmen. Die ATR-Indikatoren können die Marktvolatilität messen und helfen uns, die geeigneten Stop-Loss-Punkte und die Größe der Position zu bestimmen. Die wichtigsten Schritte der Strategie sind:

  1. Berechnung des ATR-Wertes.
  2. Festlegung der Brechpreise für Mehrköpfe und Leerköpfe. Die Mehrköpfe sind die höchsten Preise der letzten Zeit und die Leerköpfe die niedrigsten Preise der letzten Zeit.
  3. Wenn der Preis den Mehrkopf-Preis überschreitet, wird ein Plus-Position eröffnet. Wenn der Preis den Leerkopf-Preis überschreitet, wird eine Leerkopf-Position eröffnet.
  4. Die Positiongröße pro Handel wird anhand des ATR-Wertes und des Kontostandes berechnet.
  5. Halten Sie eine Position, bis der Preis den niedrigsten Preis (Mehrkopf-Haltung) oder den höchsten Preis (Leerkopf-Haltung) der vergangenen Zeit überschreitet, und beenden Sie die Position.

Auf diese Weise ist die Strategie in der Lage, starke Trendbewegungen zu erfassen und gleichzeitig das Risiko streng zu kontrollieren. Die Verwendung des ATR-Indikators kann uns dabei helfen, die Positionsgröße dynamisch anzupassen, um besser auf Marktschwankungen zu reagieren.

Strategische Vorteile

  1. Trend-Tracking: Die Strategie zielt darauf ab, starke Trendtrends zu erfassen, um so beträchtliche Gewinne zu erzielen.
  2. Risikokontrolle: Die Strategie kann die Risiken effektiv kontrollieren, indem sie die Größe der Positionen und die Stop-Loss-Positionen anhand der ATR-Indikatoren ermittelt.
  3. Anpassungsfähigkeit: Die ATR-Indikatoren können dynamisch angepasst werden, so dass die Strategie sich an unterschiedliche Marktbedingungen anpassen kann.
  4. Einfach: Die Logik der Strategie ist klar, leicht zu verstehen und umzusetzen.

Strategisches Risiko

  1. Trendwechsel: Die Strategie kann bei einem plötzlichen Trendwechsel erhebliche Verluste erleiden.
  2. In einem wackligen Markt kann diese Strategie zu häufigen Off-Positions führen, was zu hohen Transaktionskosten führt.
  3. Parameter-Sensitivität: Die Performance der Strategie kann auf die Parameter-Einstellungen empfindlich sein, und unangemessene Parameter können zu einer schlechten Performance der Strategie führen.

Um diesen Risiken entgegenzuwirken, können folgende Lösungen in Betracht gezogen werden:

  1. Eintritt eines Trendbestätigungsmechanismus, um zu frühzeitige Positionen bei einer Trendwende zu vermeiden.
  2. Die Größe der Positionen in einem unruhigen Markt zu reduzieren oder den Handel auszusetzen.
  3. Optimierung der Parameter, um die optimale Kombination von Parametern zu finden

Richtung der Strategieoptimierung

  1. Einführung weiterer Indikatoren: Zusätzlich zu den ATR-Indikatoren können andere Trendbestätigungsindikatoren wie beispielsweise Moving Averages in Betracht gezogen werden, um die Genauigkeit von Trendbeurteilungen zu verbessern.
  2. Dynamische Anpassungsparameter: Strategieparameter wie ATR-Zyklen, Breakout-Preiszyklen usw. werden dynamisch angepasst, um sich an Marktveränderungen anzupassen.
  3. Einzug in die Stop-Loss-Mechanismen: Nach Gewinn können Sie eine teilweise Ausgleichslage in Betracht ziehen, um die Gewinne zu sperren und das Risiko zu verringern.
  4. Multiple-Position-Management: Es kann in Erwägung gezogen werden, Multiple-Positions und Leerpositionen separat zu verwalten, z. B. mit unterschiedlichen Stop-Loss-Standards, um die Flexibilität der Strategie zu erhöhen.

Durch diese Optimierungen kann die Stabilität und Profitabilität der Strategie weiter verbessert werden.

Zusammenfassen

Die TURTLE-ATR-Streifenbrechstrategie ist eine Trendverfolgungsstrategie, die auf den Hafenhandelsregeln basiert. Die Strategie nutzt die ATR-Indikatoren, um die Richtung des Trends und die Größe der Handelsposition zu bestimmen, um eine Position zu eröffnen, indem sie den höchsten oder niedrigsten Preis der vergangenen Zeit durchbricht, und die Position hält, bis sich der Trend umkehrt. Der Vorteil der Strategie liegt in der Fähigkeit, starke Trendbewegungen zu erfassen, während die Risiken streng kontrolliert werden.

Strategiequellcode
/*backtest
start: 2023-05-28 00:00:00
end: 2024-06-02 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © luisfeijoo22

//@version=5
strategy("Estrategia de las tortugas_ES", overlay=true, pyramiding=3)

// Parámetros 
atrLength = input.int(20, "Longitud del ATR")
atrFactor = input.float(2, "Factor del ATR")
entryBreakout = input.int(20, "Breakout de entrada")
exitBreakout = input.int(10, "Breakout de salida")
longOnly = input.bool(false, "Solo largos")
shortOnly = input.bool(false, "Solo cortos")


// Cálculo del ATR
atr = ta.atr(atrLength)

// Cálculo de los niveles de breakout
longEntry = ta.highest(high, exitBreakout)[1]
longExit = ta.lowest(low, exitBreakout)[1]
shortEntry = ta.lowest(low, exitBreakout)[1]
shortExit = ta.highest(high, exitBreakout)[1]

// Cálculo del tamaño de la posición
nContracts = math.floor((strategy.equity * 0.01) / (atrFactor * atr))

// Filtra las fechas según el rango deseado
// in_range = time >= timestamp(year(start_date), month(start_date), dayofmonth(start_date)) 

// Condiciones de entrada y salida
longCondition = not longOnly and close > longEntry and time >= timestamp("2023-03-15")
if longCondition
    strategy.entry("Long", strategy.long, qty = nContracts)

shortCondition = not shortOnly and close < shortEntry and time >=  timestamp("2023-03-15")
if shortCondition
    strategy.entry("Short", strategy.short, qty = nContracts)
    
strategy.exit("Exit Long", "Long", stop = longExit)
strategy.exit("Exit Short", "Short", stop = shortExit)

// Visualización de los niveles de breakout
plot(longEntry, "Entrada larga", color.green, style = plot.style_line)
plot(longExit, "Salida larga", color.red, style = plot.style_line)
plot(shortEntry, "Entrada corta", color.green, style = plot.style_line)
plot(shortExit, "Salida corta", color.red, style = plot.style_line)