Diese Strategie nutzt ein doppeltes gleitendes Durchschnittssystem und einen relativen Stärkenindex, kombiniert mit der historischen Volatilität der Aktie, um Kauf- und Verkaufssignale für den Aktienhandel zu automatisieren. Der Vorteil besteht darin, dass sowohl langfristige als auch kurzfristige Techniken kombiniert werden, um Risiken effektiv zu kontrollieren. Es gibt jedoch noch Verbesserungsmöglichkeiten, zum Beispiel könnte ein Stop-Loss-Mechanismus hinzugefügt werden.
Die Strategie nutzt den 150-wöchigen gleitenden Durchschnitt und den 50-tägigen schnellen gleitenden Durchschnitt, um ein doppeltes MA-System zu bilden. Sie verwendet auch einen 20-tägigen ultra-schnellen MA. Wenn der Preis über den 150-wöchigen MA überschreitet, signalisiert er einen Aufwärtstrend. Wenn der Preis unter den 50-tägigen MA überschreitet, signalisiert er einen Abwärtstrend. Dies ermöglicht es uns, auf dem Weg nach oben zu kaufen und auf dem Weg nach unten zu verkaufen.
Darüber hinaus verwendet die Strategie auch auf Basis von Volatilität und relativer Stärke den höchsten jährlichen Preis, um spezifische Einstiegspunkte zu bestimmen.
Das Doppel-MA-System kann Trendenveränderungen effektiv erkennen, um aufwärts zu jagen und nach unten zu stoppen.
Die Volatilitätsmessung und der RSI sorgen dafür, dass wir nicht in den Nebenmärkten geschlagen werden.
Der 20-tägige schnelle MA ermöglicht einen schnelleren Stop-Loss.
Es gibt etwas Verzögerung, nicht in der Lage, einen Stop-Loss schnell zu erkennen.
Es gibt keinen Stop Loss, das könnte zu großen Verlusten führen.
Mangelnde Parameteroptimierung, Parameter eher willkürlich eingestellt.
Um die Risiken zu mindern, können Stop Loss hinzugefügt oder ATR-Multiplikatoren als Stop-Loss-Prozentsatz verwendet werden.
Zusammenfassend ist dies eine eher konservative Aktienanlagestrategie. Durch die Verwendung eines Dual-MA-Systems zur Beurteilung des Gesamttrends, kombiniert mit Volatilitäts- und Stärkemessungen bis zum Zeitpunkt des Eintritts, können falsche Ausbrüche effektiv herausgefiltert werden. Der schnelle MA ermöglicht auch schnelle Ausgänge. Die Strategie kann jedoch durch Hinzufügen von Stop Loss, Parameteroptimierung usw. weiter verbessert werden.
/*backtest start: 2023-12-12 00:00:00 end: 2023-12-20 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 //Relative Strength strategy("Stan my man", overlay=true) comparativeTickerId = input("BTC_USDT:swap", title="Comparative Symbol") l = input(50, type=input.integer, minval=1, title="Period") baseSymbol = security(syminfo.tickerid, timeframe.period, close) comparativeSymbol = security(comparativeTickerId, timeframe.period, close) hline(0, color=color.black, linestyle=hline.style_dotted) res = baseSymbol / baseSymbol[l] /(comparativeSymbol / comparativeSymbol[l]) - 1 plot(res, title="RS", color=#1155CC) //volume ma vol1 = sma(volume,20) // 30 week ma ema1 = ema(close, 150) //consolidation h1 = highest(high[1],365) fastPeriod = input(title="Fast MA", type=input.integer, defval=50) slowPeriod = input(title="Slow MA", type=input.integer, defval=150) fastestperiod = input(title="Fastest MA", type=input.integer, defval=20) fastEMA = ema(close, fastPeriod) slowEMA = ema(close, slowPeriod) fastestEMA = ema(close, fastestperiod) monitorStrategy = close < close[20] // trade conditions buytradecondition1 = close >ema1 and res>0 and volume> 1.5*vol1 and close > h1 buytradecondition2 = close > fastEMA and volume> 1.5* vol1 selltradecondition1 = close< 0.95 * fastEMA selltradecondition2 = close< 0.90 * open if (buytradecondition1) strategy.entry("long",strategy.long,alert_message ="Seems ready to Buy") alert("Buy Alert Price (" + tostring(close) + ") crossed over Slow moving average",alert.freq_all) if (buytradecondition2) strategy.entry("long",strategy.long,alert_message ="Seems ready to Buy") alert("Buy Alert Price (" + tostring(close) + ") crossed over fast moving average",alert.freq_all) if (selltradecondition1) strategy.close("long",alert_message ="Seems ready to Sell") alert("Sell Alert Price (" + tostring(close) + ") crossed down fast moving average",alert.freq_all) if (selltradecondition2) strategy.close("long",alert_message ="Seems ready to Sell") alert("Sell Alert Price (" + tostring(close) + ") crossed down 10% below open price ",alert.freq_all) //alertcondition(buytradecondition1,title ="BuySignal", message ="Price Crossed Slow Moving EMA ") plot(fastEMA, color=color.navy) plot(slowEMA, color=color.fuchsia) plot(fastestEMA, color=color.green)