ATR Trendfolgestrategie


Erstellungsdatum: 2023-09-21 15:13:47 zuletzt geändert: 2023-09-21 15:13:47
Kopie: 0 Klicks: 770
1
konzentrieren Sie sich auf
1617
Anhänger

Überblick

Die Strategie nutzt die durchschnittliche reale Breite (ATR), um die Preisentwicklung zu erfassen, und setzt Stop-Loss-Positionen mit ATR, um den Trend zu verfolgen.

Strategieprinzip

  1. Berechnung der ATR-Werte

  2. Der Stop-Loss wird anhand der ATR-Werte ermittelt.

  3. Wenn der Preis die Stop-Loss-Linie überschreitet, ist ein zusätzlicher Leerlauf erforderlich.

  4. Sie können Ihre Stop-Loss-Position dynamisch anpassen, um Gewinne zu sichern.

Strategische Vorteile

  • Automatische Anpassung des Stoppverlusts mit ATR ohne manuelle Intervention
  • Strategie ist einfach, intuitiv und leicht umzusetzen
  • Vermeidung von Verletzungen und Schadensbeseitigung
  • Nutzung von Trends, um profitabel zu laufen
  • Die Frequenz des Handels kann durch Anpassung der ATR-Parameter gesteuert werden

Strategisches Risiko

  • Die falsche Einstellung der ATR-Parameter kann zu einer zu lockeren oder zu festen Einstellung führen
  • Trends sind nicht eindeutig erkennbar
  • Zeitverschiebung
  • Teil des Gewinns möglicherweise durch Umkehrung der Verluste

Optimierungsrichtung

  • Optimierung der ATR-Zyklusparameter
  • Verschiedene ATR-Modalitäten als Stoppdistanz testen
  • In Kombination mit anderen Indikatoren identifiziert Trendwende
  • Versuchen Sie, die Parameter des maschinellen Lernens zu optimieren.
  • Erwägen Sie zusätzliche Verhinderungsstrategien

Zusammenfassen

Die Strategie nutzt die ATR, um Trends effektiv zu erfassen und die Stop-Loss-Anpassung dynamisch zu optimieren, um die Gewinnbindung zu erreichen. Optimierte Parameter-Einstellungen können die Strategie-Performance verbessern.

Strategiequellcode
/*backtest
start: 2022-09-14 00:00:00
end: 2023-09-20 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

strategy(title="ATR Strategy", overlay = true,  commission_type=strategy.commission.percent,commission_value=0.075)
//credits to HPotter for the orginal code
nATRPeriod = input(5)
nATRMultip = input(3.5)
xATR = ta.atr(nATRPeriod)
nLoss = nATRMultip * xATR
xATRTrailingStop = iff(close > nz(xATRTrailingStop[1], 0) and close[1] > nz(xATRTrailingStop[1], 0), math.max(nz(xATRTrailingStop[1]), close - nLoss),
                    iff(close < nz(xATRTrailingStop[1], 0) and close[1] < nz(xATRTrailingStop[1], 0), math.min(nz(xATRTrailingStop[1]), close + nLoss), 
                        iff(close > nz(xATRTrailingStop[1], 0), close - nLoss, close + nLoss)))
pos =	iff(close[1] < nz(xATRTrailingStop[1], 0) and close > nz(xATRTrailingStop[1], 0), 1,
	    iff(close[1] > nz(xATRTrailingStop[1], 0) and close < nz(xATRTrailingStop[1], 0), -1, nz(pos[1], 0))) 
color = pos == -1 ? color.red: pos == 1 ? color.green : color.blue 
plot(xATRTrailingStop, color=color, title="ATR Trailing Stop")

barbuy = close > xATRTrailingStop 
barsell = close < xATRTrailingStop 

strategy.entry("Long", strategy.long, when = barbuy) 
strategy.entry("Short", strategy.short, when = barsell) 

barcolor(barbuy? color.green:color.red)