Diese Strategie nutzt das goldene Kreuz und das Todeskreuz der gleitenden Durchschnitte (MA), um Wendepunkte in den Markttrends zu identifizieren und kurzfristige Kursschwankungen von Aktien zu nutzen. Sie berechnet zwei MA mit unterschiedlichen Zeiträumen, nämlich einen kurzfristigen MA und einen längerfristigen MA. Wenn der kurzfristige MA über den längerfristigen MA überschreitet, wird ein Kaufsignal generiert. Wenn der kurzfristige MA unter den längerfristigen MA überschreitet, wird ein Verkaufssignal generiert.
Die Kernlogik dieser Strategie liegt in den Crossover-Beziehungen zwischen dem kurzfristigen MA und dem längerfristigen MA. Der kurzfristige MA spiegelt die jüngsten Preisänderungen schneller wider, während der längerfristige MA bessere Lärmreduktionsfähigkeiten hat, um langfristige Preistrends abzubilden. Wenn der kürzere MA über den längeren MA überschreitet, deutet dies darauf hin, dass die Preise kürzlich einen höheren Trend begonnen haben und eine kurzfristige Umkehrung signalisieren können, wodurch ein Kaufsignal ausgelöst wird, um den anschließenden Aufwärtstrend zu erfassen. Umgekehrt signalisiert der kürzere MA, wenn er unter den längeren MA überschreitet, die jüngste Abwärtsbewegung des Preises und das Potenzial für eine kurzfristige Umkehrung, wodurch ein Verkaufssignal erzeugt wird.
Diese Strategie wendet insbesondere die Ta.sma-Funktion an den Schlusskurs an, um zwei MA-Linien zu berechnen: maShort (9 Perioden) und maLong (21 Perioden). Sie verwendet dann die Ta.crossover- und Ta.crossunder-Funktionen, um festzustellen, ob der kürzere MA über oder unter den längeren MA überschritten ist, um entsprechend Kauf- und Verkaufssignale zu erzeugen.
Im Vergleich zu einzelnen MA-Systemen synthetisiert diese Strategie den Wert sowohl von kurzfristigen als auch von längerfristigen MA, was zu weniger falschen Signalen und einer höheren Rentabilitätswahrscheinlichkeit führt.
Die mechanische Verfolgung von MA-Crossover-Signalen ohne Beurteilung der Marktbedingungen und der Aktienmerkmale kann zu geringer Rentabilität oder hohen Transaktionskosten durch Überhandel führen.
So können beispielsweise andere technische Indikatoren wie MACD, KDJ verwendet werden, um MA-Crossover-Signale zu validieren und Fehlschläge zu verhindern. MA-Parameter können auch auf der Grundlage verschiedener Handelsinstrumente abgestimmt werden, um die Stabilität zu verbessern. In der Zwischenzeit sollten Stop-Loss-Level angemessen festgelegt werden, um übergroße Verluste bei einzelnen Trades zu vermeiden. Die umfassende Anwendung aller solcher Optimierungstechniken kann die tatsächliche Strategieleistung erheblich verbessern, die auf dem einfachen MA-Crossover-Konzept basiert.
Diese Strategie entwirft einen einfachen kurzfristigen Handelsansatz, der auf dem MA-Crossover-Prinzip basiert. Durch die Harmonisierung der Stärken von kurzfristigen MA und längerfristigen MA berücksichtigt sie sowohl die jüngsten Preisentwicklungen als auch langfristige Trends, um hochwertige Handelssignale zu erzeugen. Sie eignet sich für aktive Trader, die sich mit technischen Analysewerkzeugen auskennen. Weitere Optimierungen rund um Aspekte wie MA-Perioden können zu starken Überzinsrenditen führen.
/*backtest start: 2023-12-19 00:00:00 end: 2024-01-18 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Intraday MA Crossover Strategy", overlay=true) // Define MA lengths maLengthShort = input.int(9, title="Short MA Length", minval=1) maLengthLong = input.int(21, title="Long MA Length", minval=1) // Calculate MAs maShort = ta.sma(close, maLengthShort) maLong = ta.sma(close, maLengthLong) // Plot MAs on the chart plot(maShort, color=color.blue, title="Short MA") plot(maLong, color=color.red, title="Long MA") // Generate Buy Signal (Golden Cross: Short MA crosses above Long MA) buySignal = ta.crossover(maShort, maLong) strategy.entry("Buy", strategy.long, when=buySignal) // Generate Sell Signal (Death Cross: Short MA crosses below Long MA) sellSignal = ta.crossunder(maShort, maLong) strategy.entry("Sell", strategy.short, when=sellSignal) // Set stop loss and take profit levels stopLossPercent = input.float(1, title="Stop Loss %", minval=0.1, maxval=5) takeProfitPercent = input.float(1, title="Take Profit %", minval=0.1, maxval=5) strategy.exit("Take Profit/Stop Loss", from_entry="Buy", loss=close * stopLossPercent / 100, profit=close * takeProfitPercent / 100) strategy.exit("Take Profit/Stop Loss", from_entry="Sell", loss=close * stopLossPercent / 100, profit=close * takeProfitPercent / 100)