
Die Moving Average Retraction Strategie ist eine quantitative Handelsstrategie, die die Überschneidung der Moving Averages des Aktienpreises verfolgt, um zu beurteilen, ob eine Retraction möglich ist, und wenn ja, umgekehrt. Die Strategie verwendet die Fibonacci-Retraction, um den Einstiegspunkt und die Stop-Loss-Stopp-Punkte festzulegen, um den Rückzug des kurzfristigen Preises zu erfassen.
Die Strategie basiert hauptsächlich auf zwei beweglichen Durchschnitten: der 14-Tage-EMA und der 56-Tage-SMA. Wenn die 14-Tage-EMA ein Kaufsignal erzeugt, wenn sie die 56-Tage-SMA von unten durchbricht. Danach geht der Code zurück bis zum 20. Tag, um einen Tiefpunkt als Unterstützung zu finden, und zeichnet dann eine Fibonacci-Rückziehung aus, die mit einem nahen Preis über die Durchziehungspunkte kombiniert wird.
Die gesamte Strategie besteht aus folgenden Schritten:
Das sind die wichtigsten Prozesse und Funktionsprinzipien der Strategie. Die Strategie kann diese Gelegenheit nutzen, um zu profitieren, wenn die Preise kurzfristig rückläufig sind.
Diese Strategie hat vor allem folgende Vorteile:
Insgesamt eignet sich diese Strategie sehr gut für den Short-Line-Umkehrhandel, da sie bei einer gewissen Rückkehr in der Marktlage eine solche Gelegenheit zum Arbitrage ergreifen kann. Die Strategie ist auch einfacher und direkter zu implementieren.
Obwohl diese Strategie für die Umlenkung des Moving Averages ihre eigenen Vorteile hat, gibt es einige Risiken, die beachtet werden müssen:
Für die oben genannten Risiken können wir eine kürzere Stop-Loss-Zeit festlegen, um die Einzelschäden streng zu kontrollieren. Gleichzeitig können wir die Spannweite der Rückziehlinie optimieren und einen angemessenen Zielgewinn festlegen, um einen Teil des Risikos zu vermeiden.
Es gibt noch viel zu optimieren, und zwar in folgenden Punkten:
Verschiedene Parameter-Einstellungen, wie z. B. die Länge der Perioden des Moving Averages, die Anzahl der Rückwärtstage, die Multiplikation der Rückwärtsziele, werden getestet, um die optimalen Parameter zu finden.
Erhöhung der Stop-Loss-Mechanismen, so dass mehrere oder mobile Stop-Loss-Mechanismen eingesetzt werden können, um die Risiken besser zu kontrollieren;
In Kombination mit den anderen Indikatoren FILTER, um zu vermeiden, dass in einem ungünstigen Marktumfeld gehandelt wird;
Optimierung der Kapitalverwaltung durch eine angemessene Positionsgröße und Risikogrenze.
Durch das Testen und Optimieren von Parametern kann diese Strategie weiter verbessert werden, was zu einer stabileren Handelsperformance führt.
Die Moving-Average-Retracing-Strategie ist eine sehr praktische Short-Line-Trading-Strategie. Sie kann kurzfristige Reversal-Gelegenheiten bei Preisen erfassen und über voreingestellte Einstiegs- und Stopppunkte handeln. Die Strategie ist klar und einfach zu verstehen und zu implementieren.
/*backtest
start: 2022-12-12 00:00:00
end: 2023-12-18 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
strategy("MAC Pullback", overlay=true)
// Setting up timeperiod for testing
startPeriodYear = input(2014, "Backtest Start Year")
startPeriodMonth = input(1, "Backtest Start Month")
startPeriodDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(startPeriodYear, startPeriodMonth, startPeriodDay, 0, 0)
stopPeriodYear = input(2035, "Backtest Stop Year")
stopPeriodMonth = input(12, "Backtest Stop Month")
stopPeriodDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(stopPeriodYear, stopPeriodMonth, stopPeriodDay, 0, 0)
// Moving Averages
ema14 = ema(close, 14)
ema28 = ema(close, 28)
sma56 = sma(close, 56)
// Plot
plot(ema14, title="ema14", linewidth=2, color=green)
plot(ema28, title="ema28", linewidth=2, color=red)
plot(sma56, title="sma56", linewidth=3, color=blue)
// Strategy
goLong = cross(ema14, sma56) and ema14 > ema28
goShort = cross(ema14, sma56) and ema14 < ema28
// Locate Swing Lows
leftBars = input(20)
rightBars=input(20)
swinglow = pivotlow(close, leftBars, rightBars)
plot(swinglow, style=cross, linewidth=8, color=#00FF00, offset=-rightBars)
if goLong == true and time >= testPeriodStart and time <= testPeriodStop
// We try to make sure that we're catching the first Pullback after the crossover
if ema14[12] < sma56[12]
pivotpoint = lowest(40)[0] //lowest value of the month as our swing low
// We calculate a Fib 1.272 extension (from the previous swing low to
// the crossover long entry's open) and use this as our entry target to short the Pullback
extensiontarget = ((close[1] - pivotpoint) * 1.27) + pivotpoint
shorttarget = ((close[1] - pivotpoint) * 0.618) + pivotpoint
strategy.order("Pullback", strategy.short, 5.0, limit=extensiontarget)
// I would like to use a trailing stop but for know we just hope to get
// filled if the pullback reaches all the way down to the 0.618.
// We also place a tight stop loss since we trying to short an uptrend
strategy.exit("Pullback Exit", "Pullback", limit=shorttarget, loss=400)