Prozentuale Trailing-Stop-Strategie


Erstellungsdatum: 2023-09-19 21:18:39 zuletzt geändert: 2023-09-19 21:18:39
Kopie: 0 Klicks: 636
1
konzentrieren Sie sich auf
1617
Anhänger

Überblick

Die Strategie implementiert eine konfigurierbare Prozentsatz-Stop-Tracking-Mechanismus für die Kontrolle des Handelsrisikos. Es erlaubt die Festlegung der Stop-Margin-Prozentsätze für Long- und Short-Positions, die von den Einstiegspreisen aus den höchsten oder niedrigsten Preisen kontinuierlich in die günstige Richtung zu verfolgen, um so einen dynamischen Stop-Stop zu erreichen.

Strategieprinzip

Die Hauptlogik der Strategie lautet:

  1. Stop-Loss-Prozentsatz bei Eintritt von Long- und Short-Positionen
  2. Long-Position: Verfolgen Sie die Tiefpunkte und berechnen Sie die Stop-Loss-Linie nach dem niedrigsten Preis
  3. Kurz: Verfolgen Sie die Höchststände und berechnen Sie die Stop-Loss-Linie nach dem Höchstwert
  4. Wenn der Preis die Stop-Loss-Linie berührt, sofort Stop-Loss und Ausstieg aus der aktuellen Position

Die Strategie erlaubt es, den Stop-Loss-Prozentsatz anzupassen, beispielsweise auf 10% einzustellen. Bei langen Positionen wird 10% über dem niedrigsten Preis als Stop-Loss-Linie berechnet; bei kurzen Positionen wird 10% unter dem höchsten Preis als Stop-Loss-Linie berechnet.

Auf diese Weise bewegt sich die Stop-Line ständig in die günstige Richtung, wodurch ein dynamischer Tracking-Stop möglich wird, der die Gewinne maximal schützt und gleichzeitig das Risiko kontrolliert.

Strategische Vorteile

  • Automatische Verlustverfolgung ohne manuelle Handhabung
  • Dynamische Stop-Loss-Linien, maximale Gewinnschutz
  • Anpassbare Stop-Loss-Prozentsätze für verschiedene Handelsarten
  • Risikokontrolle und Verringerung von übererwarteten Verlusten
  • Für verschiedene Handelsstrategien geeignet und leicht zu integrieren

Strategische Risiken und Maßnahmen

  • Langsamer Nachverfolgung, unhaltbare Gefahr
  • Eine zu lockere Stop-Loss-Regelung könnte zu einer Vergrößerung der Verluste führen.
  • Zu strenge Stop-Losses können zu häufige Stop-Losses führen

Wie man damit umgeht:

  1. Optimierung des Stop-Loss-Prozentsatzes und Ausgleich des Stop-Loss-Effekts
  2. In Kombination mit anderen Stop-Loss-Methoden, wie z. B. Zeitstop-Loss
  3. Optimierung der Stop-Loss-Parameter auf Basis von Marktschwankungen
  4. Vermeidung von zu willkürlichen Parameteränderungen

Richtung der Strategieoptimierung

Die Strategie kann optimiert werden:

  1. Dynamische Optimierung der Stop-Loss-Parameter mit einem Machine-Learning-Algorithmus
  2. Automatische Anpassung der Stop-Loss-Werte an Indikatoren wie maximale Rücknahme
  3. Die Stop-Loss-Position wird in Kombination mit einem Moving Average festgelegt.
  4. Auswahl der verschiedenen Parameterkonfigurationen je nach Schwankungen
  5. Einstellung eines Teilstopps und Anpassung der Stop-Position zum Gewinn

Zusammenfassen

Die Strategie bietet eine effektive Prozentsatz-Stop-Tracking-Methode, die die Stop-Line dynamisch anpassen kann. Sie kann die Gewinne maximieren, aber auch die Risiken effektiv kontrollieren. Die Stop-Strategie kann durch Parameteroptimierung, Kennzahlenintegration usw. intelligenter und optimierter gemacht werden.

Strategiequellcode
/*backtest
start: 2023-08-19 00:00:00
end: 2023-09-18 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © theCrypster

//@version=4
strategy("Percent Trailing Stop %", overlay=true)

//ENTER SOME SETUP TRADES FOR TSL EXAMPLE
longCondition = crossover(sma(close, 10), sma(close, 20))
if (longCondition)
    strategy.entry("My Long Entry Id", strategy.long)

shortCondition = crossunder(sma(close, 10), sma(close, 20))
if (shortCondition)
    strategy.entry("My Short Entry Id", strategy.short)
    

//TRAILING STOP CODE
trailStop = input(title="Long Trailing Stop (%)", type=input.float, minval=0.0, step=0.1, defval=10) * 0.01

longStopPrice = 0.0
shortStopPrice = 0.0
longStopPrice := if strategy.position_size > 0
    stopValue = close * (1 - trailStop)
    max(stopValue, longStopPrice[1])
else
    0
shortStopPrice := if strategy.position_size < 0
    stopValue = close * (1 + trailStop)
    min(stopValue, shortStopPrice[1])
else
    999999

//PLOT TSL LINES
plot(series=strategy.position_size > 0 ? longStopPrice : na, color=color.red, style=plot.style_linebr, linewidth=1, title="Long Trail Stop", offset=1, title="Long Trail Stop")
plot(series=strategy.position_size < 0 ? shortStopPrice : na, color=color.red, style=plot.style_linebr, linewidth=1, title="Short Trail Stop", offset=1, title="Short Trail Stop")


//EXIT TRADE @ TSL
if strategy.position_size > 0
    strategy.exit(id="Close Long", stop=longStopPrice)
if strategy.position_size < 0
    strategy.exit(id="Close Short", stop=shortStopPrice)