Die Hauptidee dieser Strategie besteht darin, Preistrends zu beurteilen und Handelssignale mithilfe gleitender Durchschnitte und Bollinger-Bänder zu erzeugen. Konkret berechnet sie zunächst den durchschnittlichen wahren Bereich (ATR) über einen bestimmten Zeitraum, um den Volatilitätsbereich zu erhalten, und kombiniert dann höchste und niedrigste Preise, um einen begrenzenden Kanal zu bilden. Wenn der Preis durch diesen Kanal bricht, wird der Schlusskurs auf den Kanalpreis festgelegt. Danach berechnet sie den gleitenden Durchschnitt der begrenzten Schlusskurs, der als Trend Trader Moving Average (AVR) bezeichnet wird. Schließlich ziehen Sie Bollinger-Bänder über und unter dem Trend Trader Moving Average, um Handelssignale zu bilden.
Die Strategie berechnet zunächst den ATR-Bereich und bildet einen begrenzenden Kanal, kombiniert mit den höchsten und niedrigsten Preisen. Der Schlusskurs wird nur auf den Kanalpreis beschränkt, wenn er durch den Kanal bricht. Danach berechnet sie den Trend Trader gleitenden Durchschnitt der begrenzten Schlusskurs, der die mittelfristige Trendrichtung widerspiegelt. Schließlich zeichnen Sie ein oberes Band und ein unteres Band parallel zum Trend Trader gleitenden Durchschnitt als Bollinger-Bänder. Durchbrechen des oberen Bandes erzeugt langes Signal und durchbrechen des unteren Bandes erzeugt kurzes Signal.
Der Kern der Beurteilung des Trends liegt im Trend Trader gleitenden Durchschnitt, der die mittelfristige Trendrichtung verkörpert. Die Rolle der Bollinger Bands besteht darin, einige falsche Breakouts zu filtern und Handelssignale zuverlässiger zu machen.
Lösungen:
Die Strategie ist insgesamt ein starkes Trendfolgensystem. Sie kann den mittelfristigen Trend beurteilen und Handelssignale in Kombination mit Bollinger-Bändern erzeugen. Durch Parameteroptimierung kann sie ein stabiles Alpha erhalten.
/*backtest start: 2022-12-04 00:00:00 end: 2023-12-10 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 16/10/2018 // This is plots the indicator developed by Andrew Abraham // in the Trading the Trend article of TASC September 1998 // It was modified, result values wass averages. // And draw two bands above and below TT line. //////////////////////////////////////////////////////////// strategy(title="Trend Trader Bands Backtest", overlay = true) Length = input(21, minval=1), LengthMA = input(21, minval=1), BandStep = input(20), Multiplier = input(3, minval=1) reverse = input(false, title="Trade reverse") avgTR = wma(atr(1), Length) highestC = highest(Length) lowestC = lowest(Length) hiLimit = highestC[1]-(avgTR[1] * Multiplier) loLimit = lowestC[1]+(avgTR[1] * Multiplier) ret = 0.0 ret := iff(close > hiLimit and close > loLimit, hiLimit, iff(close < loLimit and close < hiLimit, loLimit, nz(ret[1], 0))) nResMA = ema(ret, LengthMA) pos = 0.0 pos := iff(close < nResMA - BandStep , -1, iff(close > nResMA + BandStep, 1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) barcolor(pos == -1 ? red: pos == 1 ? green : blue ) plot(nResMA, color= blue , title="Trend Trader AVR") plot(nResMA+BandStep, color= red , title="Trend Trader UpBand") plot(nResMA-BandStep, color= green, title="Trend Trader DnBand")