Diese Strategie verwendet gleitende Durchschnitte, um Handelssignale zu generieren, und legt einen festen Prozentsatz für Stop Loss fest und nimmt Gewinnniveaus anhand des Einstiegspreises ein, um das Risiko und die Gewinnspanne jedes Handels zu kontrollieren.
Die Strategie verwendet zunächst den 5-tägigen exponentiellen gleitenden Durchschnitt (EMA) und den 32-tägigen EMA, um die Trendrichtung zu bestimmen.
Nach dem Eintritt in einen Handel setzt die Strategie dynamisch den Stop-Loss und den Take-Profit für jeden Handel anhand des vom Benutzer definierten Stop-Loss-Prozentsatzes und des Take-Profit-Prozentsatzes. Insbesondere für lange Trades wird der Stop-Loss zum Einstiegspreis × (1 - Stop-Loss-Prozentsatz) und der Take-Profit zum Einstiegspreis × (1 + Take-Profit-Prozentsatz) festgelegt. Für Short Trades wird er umgekehrt - Stop-Loss zum Einstiegspreis × (1 + Stop-Loss-Prozentsatz) und Take-Profit zum Einstiegspreis × (1 - Take-Profit-Prozentsatz).
Dies ermöglicht es, für jeden Handel ein festes Risiko-Rendite-Verhältnis zu gewährleisten und das Risiko und den Gewinn zu kontrollieren.
Diese Art der Einstellung von Stop-Loss und Take-Profit hat mehrere wesentliche Vorteile:
Es kann den maximalen Verlust pro Handel begrenzen und das Handelsrisiko wirksam kontrollieren.
Es kann eine feste Gewinnquote pro Handel festlegen und die Rendite gewährleisten.
Die Stop-Loss- und Take-Profit-Punkte variieren mit dem tatsächlichen Einstiegspreis anstatt feste Werte zu verwenden.
Die Nutzer können ihre Risikobereitschaft durch Anpassung der Eingabeparameter bestimmen.
Einfache und intuitive Strategie Logik, leicht zu verstehen und zu überprüfen.
Diese Strategie birgt auch einige Risiken:
Gleitende Durchschnitte können übermäßige ungültige Signale erzeugen, wobei die Wahrscheinlichkeit hoch ist, dass sie nach dem Eintritt gestoppt werden.
Eine zu hohe Gewinnquote kann zu einer unzureichenden Rentabilität führen, zu niedrig kann zu einem unzureichenden Gewinn führen.
Ein zu naher Stop-Loss kann die Chance erhöhen, ausgeschaltet zu werden, und sollte einen Puffer bieten.
Die Wahl der Handelsprodukte und der Zeitrahmen kann die Wirksamkeit beeinflussen.
Entsprechende Lösungen
Optimierung der gleitenden Durchschnittsparameter zur Verringerung falscher Signale.
Verschiedene Gewinnverhältnisse testen, um das Optimum zu finden.
Anpassung der Stop-Loss-Distanz anhand der Marktvolatilität.
Bewertung der Strategieleistung für verschiedene Produkte und Zeitrahmen.
Die Strategie kann in folgenden Bereichen verbessert werden:
Hinzufügen anderer Indikatoren zur Trendvalidierung, um übermäßige falsche Signale von gleitenden Durchschnitten zu vermeiden.
Optimieren Sie den Stop-Loss und nehmen Sie Prozentsätze auf der Grundlage von Backtestdaten, um optimale Parameter zu finden.
Verändern Sie den Stop-Loss zu einem Trailing-Stop, um mehr laufenden Gewinn zu erzielen.
Zusätzliche Positionsgrößenregelungen mit Pyramiden und Stop Loss zur Steuerung des Handelsrisikos.
Bewertung der Leistungsdifferenz zwischen verschiedenen Handelsinstrumenten und Zeitrahmen.
Diese Strategie identifiziert die Trendrichtung mit gleitenden Durchschnitten und setzt einen festen Prozentsatz Stop-Loss und Take-Profit basierend auf dem Einstiegspreis fest, um das einzelne Handelsrisiko und die Belohnung zu kontrollieren. Sein Vorteil ist die effektive Begrenzung von Verlusten, die Gewinnquote mit einfacher und unkomplizierter Logik.
/*backtest start: 2022-12-11 00:00:00 end: 2023-12-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // © theCrypster 2020 //@version=4 strategy("Fixed Percent Stop Loss & Take Profit %", overlay=true) // Moving Averages to get some example trades generated eg1 = ema(close, 5) eg2 = ema(close, 32) long = crossover(eg1, eg2) short = crossunder(eg1, eg2) strategy.entry("LONG", strategy.long, when=long) strategy.entry("SHORT", strategy.short, when=short) // // The Fixed Percent Stop Loss Code // User Options to Change Inputs (%) stopPer = input(5.0, title='Stop Loss %', type=input.float) / 100 takePer = input(10.0, title='Take Profit %', type=input.float) / 100 // Determine where you've entered and in what direction longStop = strategy.position_avg_price * (1 - stopPer) shortStop = strategy.position_avg_price * (1 + stopPer) shortTake = strategy.position_avg_price * (1 - takePer) longTake = strategy.position_avg_price * (1 + takePer) if strategy.position_size > 0 strategy.exit(id="Close Long", stop=longStop, limit=longTake) if strategy.position_size < 0 strategy.exit(id="Close Short", stop=shortStop, limit=shortTake) //PLOT FIXED SLTP LINE plot(strategy.position_size > 0 ? longStop : na, style=plot.style_linebr, color=color.red, linewidth=1, title="Long Fixed SL") plot(strategy.position_size < 0 ? shortStop : na, style=plot.style_linebr, color=color.red, linewidth=1, title="Short Fixed SL") plot(strategy.position_size > 0 ? longTake : na, style=plot.style_linebr, color=color.green, linewidth=1, title="Long Take Profit") plot(strategy.position_size < 0 ? shortTake : na, style=plot.style_linebr, color=color.green, linewidth=1, title="Short Take Profit") //