Die Trend Following Long Only Strategy ist eine Strategie, die Preistrends mithilfe dynamischer gleitender Durchschnitte verfolgt. Sie bestimmt den aktuellen Trend, indem sie die gleitenden Durchschnitte der höchsten und niedrigsten Preise über einen Zeitraum berechnet und mit ATR für dynamischen Stop-Loss und Take-Profit kombiniert.
Die Strategie berechnet zunächst die gleitenden Durchschnitte der höchsten und niedrigsten Preise über einen Zeitraum (Standard 200 Tage) und nimmt ihren Mittelpunkt als Basislinie. Dann misst sie die Abweichung des Preises von der Basislinie. Wenn der Preis um 1 ATR (0,5 mal 10-Tage-ATR standardmäßig) über der Basislinie liegt, gilt er als Aufwärtstrend. Wenn der Preis um 1 ATR unter der Basislinie liegt, gilt er als Abwärtstrend. Long- oder Short-Positionen werden basierend auf dem Trendzustand eingegeben.
Wenn der Preis auf die Basislinie zurückkehrt, werden Exit-Signale ausgelöst. Außerdem ermöglicht der dynamische ATR Stop-Loss und Take-Profit, um den Haupttrend zu verfolgen und zu vermeiden, dass bei kleineren Schwankungen übertrieben gehandelt wird.
Die Risiken können reduziert werden, indem die ATR-Parameter angepasst, Filter für Hochwahrscheinlichkeits-Setups hinzugefügt und Marktbedingungen und Risikobereitschaft ausgewertet werden.
Die Trend Following Long Only Strategy ist ein leicht zu bedienendes Trend-Trading-System. Es identifiziert die Trendrichtung mit Hilfe dynamischer Durchschnitte und legt Risikokontrollen mit ATR-basierten Stops fest. Es kann effektiv profitable Schwankungen in Trending-Märkten erfassen.
/*backtest start: 2022-10-10 00:00:00 end: 2023-10-16 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Trend Following Long Only Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) lookback_length = input(200, type=input.integer, minval=1, title="Lookback Length") smoother_length = input(5, type=input.integer, minval=1, title="Smoother Length") atr_length = input(10, type=input.integer, minval=1, title="ATR Length") atr_multiplier = input(0.5, type=input.float, minval=0.5, title="ATR Multiplier") vola = atr(atr_length) * atr_multiplier price = sma(close, 3) l = ema(lowest(low, lookback_length), smoother_length) h = ema(highest(high, lookback_length), smoother_length) center = (h + l) * 0.5 upper = center + vola lower = center - vola trend = ema(price > upper ? 1 : (price < lower ? -1 : 0), 3) c = trend < 0 ? upper : lower pcenter = plot(center, transp=100) pclose = plot(close, transp=100) pc = plot(c, transp=100) buy_signal = crossover(trend, 0.0) sell_signal = crossunder(trend, 0.0) strategy.entry("Buy", strategy.long, when=buy_signal) strategy.close("Buy", when=sell_signal) bgcolor(trend >= 0 ? color.green : color.red, transp=95) fill(pc, pclose, color=trend >= 0 ? color.green : color.red)