Die Noro Shifted Moving Average Stop Loss Strategie ist eine Trendfolgestrategie. Sie berechnet die 3-tägige einfache gleitende Durchschnittslinie und setzt eine lange Linie darüber und eine Stop-Loss-Linie darunter zu gegebenen Prozentsätzen.
Der Kern dieser Strategie ist die Berechnung der 3-tägigen einfachen gleitenden Durchschnittslinie ma. Dann wird ein Prozentsatz lo über ma hinzugefügt, um die lange Linie für Einträge zu erhalten. Wenn der Preis über lange kreuzt, werden lange Positionen geöffnet. Unter ma wird ein Prozentsatz sl subtrahiert, um die Stop-Loss-Linie zu erhalten. Wenn der Preis unter den Stop fällt, werden Positionen gestoppt. Es gibt auch Take-Profit-Linien, die zu einem Prozentsatz über dem aktuellen durchschnittlichen Haltepreis gesetzt werden. tp
Die spezifischen Regeln sind:
Dies erzeugt eine Trendfolgestrategie, die auf der Grundlage der ma-Benchmark und konfigurierbarer Prozentsätze Eintritts-, Gewinn- und Stop-Loss-Linien festlegt.
Der größte Vorteil dieser Strategie besteht darin, dass sie Trends automatisch verfolgen kann. Indem sie ohne Mustererkennung lange für Aufwärtstrends und kurze für Abwärtstrends geht, fängt sie Trends auf. Durch die Hinzufügung von Take Profit und Stop Loss kann sie automatisch stoppen, wenn Trends enden, um Drawdowns zu begrenzen.
Ein weiterer Vorteil ist die flexible Anpassung der Parameter. Durch die Änderung der Prozentsätze für Long, Take Profit und Stop Loss kann die Positionsgröße und der Stop Loss-Ausstand leicht gesteuert werden.
Das größte Risiko dieser Strategie ist der Rutsch. Da eine Stop-Order für einen Stop-Loss verwendet wird, können bei einem schnell fallenden Marktpreis weit unter dem Stop-Loss liegen, bevor die Aufträge ausgeführt werden. Dies kann zu katastrophalen Verlusten führen.
Ein weiteres Risiko besteht in schlecht festgelegten Parametern, die zu häufige Ein- und Ausgänge verursachen und die Provisionskosten erhöhen.
Die Strategie kann wie folgt optimiert werden:
Verwenden Sie Limit-Orders anstelle von Stop-Orders für Stop-Losses, um Rissrisiken zu vermeiden
Hinzufügen von Positionsgrößen-Einstellungen, um reibungslos ein- und auszuschalten und die Handelsfrequenz zu reduzieren
Hinzufügen von Trenddetektionsfiltern, um falsche Signale in nicht-trendigen Märkten zu vermeiden
Optimieren Sie die Parameter-Einstellungen, um optimale Kombinationen zu finden
Die Noro Shifted Moving Average Stop Loss Strategie ist eine einfache und praktische Trend-Folge-Strategie. Sie kann automatisch Trends mit Gewinn- und Stop-Loss-Kontrollrisiken verfolgen. Die größten Risiken stammen aus potenziellem Rutsch und übermäßig häufigem Handel durch schlechte Parameteroptimierung. Durch die Verbesserung der Stop-Loss-Technik und die Optimierung der Parameter kann die Strategie robuster gemacht werden.
/*backtest start: 2023-12-30 00:00:00 end: 2024-01-29 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //2019 //Noro //@version=4 strategy("Stop-loss", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0) //Settings lo = input(-5.0, title = "Long-line, %") tp = input(5.0, title = "Take-profit") sl = input(2.0, title = "Stop-loss") //SMA ma = sma(ohlc4, 3) long = ma + ((ma / 100) * lo) //Orders avg = strategy.position_avg_price if ma > 0 strategy.entry("Long", strategy.long, limit = long) strategy.entry("Take", strategy.short, 0, limit = avg + ((avg / 100) * tp)) strategy.entry("Stop", strategy.short, 0, stop = avg - ((avg / 100) * sl)) //Cancel order if strategy.position_size == 0 strategy.cancel("Take") strategy.cancel("Stop") //Lines plot(long, offset = 1, color = color.black, transp = 0) take = avg != 0 ? avg + ((avg / 100) * tp) : long + ((long / 100) * tp) stop = avg != 0 ? avg - ((avg / 100) * sl) : long - ((long / 100) * sl) takelinecolor = avg == avg[1] and avg != 0 ? color.lime : na stoplinecolor = avg == avg[1] and avg != 0 ? color.red : na plot(take, offset = 1, color = takelinecolor, linewidth = 3, transp = 0) plot(stop, offset = 1, color = stoplinecolor, linewidth = 3, transp = 0)