SSL-Kanal-Breakout-Strategie mit Trailing Stop Loss

Schriftsteller:ChaoZhang, Datum: 2023-10-25 17:40:37
Tags:

img

Übersicht

Diese Strategie verwendet den SSL-Kanal-Indikator, um die Trendrichtung und den Handelsausbruch mit Dynamik zu identifizieren. Es geht lang, wenn der Preis über das obere SSL-Band bricht und kurz, wenn der Preis unter das untere SSL-Band bricht.

Strategie Logik

  1. Berechnen Sie die oberen und unteren Bands des SSL-Kanals unter Verwendung von SMA von hohen und niedrigen Preisen mit N Perioden.

  2. Lange Signale erzeugen, wenn Close über dem oberen Band liegt, und kurze Signale, wenn Close unter dem unteren Band liegt.

  3. Festhaltverlust im gegenüberliegenden Band nach dem Eintritt einstellen, um Verluste zu begrenzen.

  4. Setzen Sie den Stop-Loss, der der Preisbewegung folgt, um Gewinne zu erzielen.

  5. Ausgang, wenn der Preis entweder einen festen Stop-Loss oder einen nachfolgenden Stop-Loss erreicht.

Vorteile

  1. Verwenden Sie den Kanalindikator, um die Trendrichtung zu bestimmen, um falsche Ausbrüche zu vermeiden.

  2. Der doppelte Stop-Loss kombiniert Gewinnnahme und Risikokontrolle.

  3. Eine hohe Handelsfrequenz passt zum Ultra-Kurzzeithandel.

  4. Flexible Parameter, die sich an den persönlichen Handelsstil anpassen lassen.

  5. Auto-Erkennung von lang/kurz, keine Richtungsbeurteilung erforderlich.

Risiken

  1. Kurzfristiger Handel, anfällig für Nachrichten-Schocks und hohe Volatilität.

  2. Der Wert der Vermögenswerte, die für die Berechnung von Vermögenswerten verwendet werden, wird nach dem Ausbruch in den Wertpapiervergleich berechnet, der für die Berechnung der Vermögenswerte verwendet wird.

  3. Unzulässiger Stoppverlust kann zu einem vorzeitigen Ausstieg führen.

  4. Kanalbrüche, anfällig für falsche Signale.

  5. Nur für erfahrene Kurzzeithändler geeignet.

Lösungen:

  1. Festlegen eines angemessenen festen Stop-Loss, um den Verlust pro Handel zu begrenzen.

  2. Optimieren Sie die Stop-Loss-Level, um einen frühen Ausstieg zu vermeiden.

  3. Fügen Sie den Lautstärkungsfilter hinzu, um den echten Ausbruch zu bestätigen.

  4. Verwalten Sie die Positionsgröße, skalieren Sie, um das Risiko zu kontrollieren.

Optimierung

  1. Optimieren Sie SMA-Perioden, um die beste Länge zu finden.

  2. Versuchen Sie andere Kanalanzeigen wie BB, KD usw.

  3. Fügen Sie einen Volumenindikator hinzu, um die Glaubwürdigkeit des Ausbruchs zu bestätigen.

  4. Berücksichtigen Sie die Umsatzrate, um einen falschen Ausbruch mit geringem Volumen zu vermeiden.

  5. Versuche verschiedene Haltezeiten, um den optimalen Zeitpunkt des Ausstiegs zu finden.

  6. Prüfparameter für festgelegte und nachfolgende Stop-Loss-Parameter.

  7. Anpassung der Positionsgrößenstrategie zur Maximierung der Kapitaleffizienz.

Zusammenfassung

Diese Strategie kombiniert SSL-Kanal-Richtungsschwankungen und Breakout-Signale mit doppeltem Stop-Loss-Management. Sie reagiert schnell auf Trends und eignet sich für den Hochfrequenz-Handel.


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

//@version=4
strategy("SSL Channel Cross with Trailing Stop and Stop Loss", overlay=true)

period = input(title="Period", defval=10)
len = input(title="Length", defval=10)
smaHigh = sma(high, len)
smaLow = sma(low, len)

Hlv = 0
Hlv := close > smaHigh ? 1 : close < smaLow ? -1 : Hlv[1]

sslDown = Hlv < 0 ? smaHigh : smaLow
sslUp = Hlv < 0 ? smaLow : smaHigh

plot(sslDown, linewidth=2, color=color.red)
plot(sslUp, linewidth=2, color=color.lime)

longCondition = crossover(sslUp, sslDown)
shortCondition = crossunder(sslUp, sslDown)

// Define el tamaño del trailing stop en puntos (ajusta según tu preferencia)
trailingStopSize = input(title="Trailing Stop Size (in Points)", defval=10)

var float trailingStopPrice = na
var float stopLossPrice = na

if (longCondition)
    // Si se cumple la condición de compra, configura la posición larga, el trailing stop y el stop loss
    strategy.entry("Long", strategy.long)
    trailingStopPrice := low - trailingStopSize
    stopLossPrice := sslDown

if (shortCondition)
    // Si se cumple la condición de venta corta, configura la posición corta, el trailing stop y el stop loss
    strategy.entry("Short", strategy.short)
    trailingStopPrice := high + trailingStopSize
    stopLossPrice := sslUp

// Calcula el trailing stop
if (strategy.position_size > 0)
    trailingStopPrice := max(trailingStopPrice, stopLossPrice)
    if (close < trailingStopPrice)
        strategy.close("ExitLong", comment="Trailing Stop Long")

if (strategy.position_size < 0)
    trailingStopPrice := min(trailingStopPrice, stopLossPrice)
    if (close > trailingStopPrice)
        strategy.close("ExitShort", comment="Trailing Stop Short")


Mehr