Die Highest/Lowest Center Lookback-Strategie ist eine Trend-folgende Strategie. Ihre Hauptidee besteht darin, den mittleren Preis der höchsten und niedrigsten Preise über einen bestimmten Zeitraum in der Vergangenheit als Benchmark-Preis zu berechnen und dann die Einstiegszone und die Ausgangszone auf der Grundlage dieses Benchmark-Preises in Kombination mit Volatilität zu berechnen. Wenn der Preis in die Einstiegszone eintritt, gehen Sie lang; wenn der Preis in die Ausgangszone eintritt, schließen Sie die Position.
Die Strategie wird hauptsächlich durch folgende Schritte umgesetzt:
Auf diese Weise kann der Trend in der Zeit verfolgt werden, wenn der Preis in einen Trendzustand eintritt; gleichzeitig kann das Risiko durch Volatilität kontrolliert werden.
Diese Strategie hat folgende Vorteile:
Die Strategie birgt auch einige Risiken:
Um diese Risiken zu kontrollieren, kann die Optimierung in den folgenden Aspekten erfolgen:
Die Strategie kann auch weiter optimiert werden:
Durch diese Optimierungen können weitere Verbesserungen der Strategie-Stabilität und der Rentabilität erwartet werden.
Die Highest/Lowest Center Lookback-Strategie ist eine einfache und praktische Trend-Folge-Strategie. Sie kann Preisveränderungen in der Zeit erfassen, Trends verfolgen und gleichzeitig das Risiko durch Volatilität kontrollieren. Die Strategie ist einfach zu implementieren, geeignet für quantitative Handelsanfänger zu lernen und zu üben. Durch Optimierung von Parametern und Regeln kann die Strategieleistung weiter verbessert werden.
/*backtest start: 2023-11-27 00:00:00 end: 2023-12-27 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Highest/Lowest Center Lookback Strategy", overlay=true) 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(1.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 = price > upper ? true : (price < lower ? false : na) bull_cross = crossover(price, upper) bear_cross = crossunder(price, lower) strategy.entry("Buy", strategy.long, when=bull_cross) strategy.close("Buy", when=bear_cross) plot(h, title="High", color=color.red, transp=75, linewidth=2) plot(l, title="Low", color=color.green, transp=75, linewidth=2) pc = plot(center, title="Center", color=color.black, transp=25, linewidth=2) pu = plot(upper, title="Upper", color=color.green, transp=75, linewidth=2) pl = plot(lower, title="Lower", color=color.red, transp=75, linewidth=2) fill(pu, pc, color=color.green, transp=85) fill(pl, pc, color=color.red, transp=85) bgcolor(trend == true ? color.green : (trend == false ? color.red : color.gray), transp=85)