
Strategieübersicht
Die Strategie ist ein auf einfachen Moving Averages (SMA) basierendes, überschneidendes Handelssystem, das darauf ausgerichtet ist, fallende Markttrends zu erfassen. Die Strategie verwendet einen einfachen Moving Average mit 20 und 50 Perioden als Kernindikator, der ein leeres Signal erzeugt, wenn der kurzfristige SMA (SMA) 20 nach unten den langfristigen SMA (SMA) 50 durchbricht; das System platziert, wenn der kurzfristige SMA (SMA) 20 nach oben den langfristigen SMA (SMA) 50 durchbricht.
Strategieprinzip
Die Strategie basiert auf der klassischen Theorie der Kreuzung von Moving Averages in der technischen Analyse. Die Kernlogik lautet:
- Berechnen Sie einen 20-Zyklus-SMA (SMA20) und einen 50-Zyklus-SMA (SMA50)
- Wenn der SMA20 unter dem SMA50 durchschreitet, wird als Preisbewegung eine negative Umstellung betrachtet, die durch eine Überholung des Trends ausgelöst wird, die ein Leerlaufsignal auslöst
- Wenn der SMA20 den SMA50 durchbricht, wird dies als Abschwächung oder Beendigung des Abwärtstrends angesehen und ein Ausgleichssignal ausgelöst
- Die Strategie arbeitet im Full-Position-Modus, bei dem 100% der verfügbaren Gelder für jeden Handel verwendet werden.
In der Code-Implementierung verwendet die Strategie die Funktionen ta.crossunder () und ta.crossover () der Pine Script-Sprache, um die Gleichgewichtskreuzung genau zu erfassen und die Transaktionen über die Funktionen strategy.entry () und strategy.close () auszuführen. Darüber hinaus zeigt die Strategie die Handelssignale intuitiv auf der Grafik an, um den Händlern zu helfen, die Ausführung der Handelslogik sofort zu verstehen.
Strategische Vorteile
- Kurz und effektivStrategie: Nur zwei technische Kennzahlen, klare Logik, leicht verständlich und umsetzbar, reduziert das Risiko einer Überpassung.
- Trends zu verfolgenEine Kombination aus SMA20 und SMA50 kann eine Trendveränderung im mittleren Zeitraum effektiv erfassen. Ein Durchschnittswert unterhalb des kurzfristigen Durchschnittswertes weist normalerweise auf einen größeren Abwärtstrend hin.
- Verbessertes RisikomanagementDie Strategie beinhaltet eindeutige Ein- und Ausstiegsbedingungen, verhindert die unbegrenzte Ausweitung von Verlusten und schließt automatisch die Position, wenn sich der Trend umkehrt.
- Sehfeedback ist reichhaltigDie Formmarkierungen und Textmarkierungen auf den Diagrammen ermöglichen es dem Händler, jedes Handelssignal klar zu sehen, was die Rückverfolgung, Analyse und Echtzeitüberwachung erleichtert.
- Äußerst anpassungsfähigObwohl die Strategie gut auf dem 15-Minuten-Zeitrahmen funktioniert, ist ihre Kernlogik auch für andere Zeiträume geeignet und hat eine gute Anpassungsfähigkeit über die Zeiträume hinweg.
- MenschenhandelDie Strategie des “Floating” ist oftmals erfolgreich, wenn die Märkte in Panik versunken sind, und hilft den Händlern, sich in einem fallenden Markt zu beruhigen und zu profitieren.
Strategisches Risiko
- Risiko volatiler MärkteIn einem schwankenden Markt kann eine häufige Durchschnittsüberschreitung zu mehreren Falschsignalen führen, die zu einer Reihe von Verlustgeschäften führen. Eine Verbesserung besteht darin, Bestätigungskennzahlen wie Trendstärken oder Fluktuationsfilter hinzuzufügen.
- RückstandsproblemeDer bewegliche Durchschnitt selbst ist nachlässig und kann zu unpassenden Einstiegs- und Ausstiegsmomenten führen, die den besten Handelsplatz verpassen. Die Verwendung von empfindlicheren Indikatoren wie EMAs oder die Anpassung der Durchschnittszyklus kann in Erwägung gezogen werden, um dieses Problem zu mildern.
- Einseitige EinschränkungEine Lösung ist die Entwicklung einer begleitenden Mehrkopf-Strategie oder die Erweiterung der aktuellen Strategie in ein Zwei-Wege-Handelssystem.
- Unzureichende Verwaltung der MittelStrategie: Handel mit 100% Kapital ohne Berücksichtigung der Positionsverwaltung, was bei fortlaufenden Verlusten zu einem schnellen Rückgang des Kapitals führen kann. Es wird empfohlen, ein Risikomanagement-Modul hinzuzufügen, um die Positionsgröße basierend auf der dynamischen Marktvolatilität anzupassen.
- Fehlende SchadensbegrenzungDie aktuelle Strategie setzt auf die Gleichlauf-Kreuzung als Ausgangspunkt, ohne ein eingestelltes Stop-Loss, das unter extremen Umständen einen größeren Rückzug ertragen kann. Ein Stop-Loss-Mechanismus auf Basis von ATR oder festen Prozentsätzen sollte hinzugefügt werden.
Richtung der Strategieoptimierung
- Hinzufügen von TrendfilternDie Einführung von Trendstärkeindikatoren wie ADX (Average Directional Index) und die Ausführung von Trades nur dann, wenn der ADX größer als ein bestimmter Tiefpunkt ist, um falsche Signale für einen wackligen Markt zu vermeiden. Diese Optimierung kann die Gewinn- und Verlustquote erheblich verbessern.
- Optimierung der DurchschnittszyklusDie 20⁄50-Periode, die derzeit verwendet wird, ist die klassische Einstellung, aber die Strategieadaptivität kann verbessert werden, indem verschiedene Parameterkombinationen zurückgeprüft werden, um die optimalen Parameter für bestimmte Handelsarten zu finden.
- Einführung von Multiple-Time-Frame-Analysen: Trendbeurteilung für höhere Zeitrahmen hinzufügen, lediglich auf dem Tages- oder 4-Stunden-Chart-Trend nach unten die leeren Signale auf dem 15-Minuten-Chart ausführen, um den Trend umzukehren.
- Positionsverwaltung hinzufügenDie Positionsgröße wird dynamisch angepasst, um Positionen in einem volatilen Markt zu reduzieren und Positionen in einem niedrigen Markt zu erhöhen, um die Kapitalkurve zu optimieren.
- Erhöhung der Stop-Loss-MechanismenEinrichtung von Stop-Losses auf Basis von ATR oder Schlüsselstützpunkten sowie Stop-Losses auf Basis von RRR oder vorläufigen Tiefpunkten, um die Kapitalschutzkapazität zu verbessern.
- Erhöhung der Filterzeit für TransaktionenEs ist wichtig, die Performance der verschiedenen Handelszeiten zu analysieren und zu verhindern, dass ineffiziente oder riskante Zeiten wie die Wechselzeiten in den Märkten Asiens, Europas und der USA stark schwanken.
- Kostenfaktoren berücksichtigenDie Einbeziehung von Gebühren und Gleitpunkten in die Strategiebewertung ermöglicht eine genauere Beurteilung der tatsächlichen Effektivität des Handels.
Zusammenfassen
Das SMA20/50 Smart Ticket Trading System ist eine schlichte und effiziente quantitative Trading-Strategie, die durch das Erfassen von Kreuzsignalen aus einfachen Moving Averages zum Ausführen von Ballastgeschäften verwendet wird. Die Strategie zeichnet sich durch eine klare Ballasttrend-Logik und ist leicht zu verstehen und umzusetzen. Trotz der inhärenten Risiken, wie z. B. False-Signale und Gleichgewichtsverzögerungen bei Marktschwankungen, können die Strategie-Performance durch die Hinzufügung von Trendfiltern, optimierte Parameter-Einstellungen und verbesserte Kapitalmanagement- und Stop-Loss-Mechanismen erheblich verbessert werden.
Strategiequellcode
/*backtest
start: 2025-01-01 00:00:00
end: 2025-03-31 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy("SMA20/50 Short-Only Strategy", overlay=true, initial_capital=5000, default_qty_type=strategy.percent_of_equity, default_qty_value=100)
// Input sources and calculations
src = close
sma20 = ta.sma(src, 20)
sma50 = ta.sma(src, 50)
// Generate sell signal when sma20 crosses below sma50
sellSignal = ta.crossunder(sma20, sma50)
// Generate exit signal when sma20 crosses above sma50
exitSignal = ta.crossover(sma20, sma50)
// Plot SMAs
plot(sma20, color = color.blue, title = "SMA 20")
plot(sma50, color = color.black, title = "SMA 50")
// Plot sell signal
plotshape(sellSignal, style = shape.triangledown, location = location.abovebar, color = color.red, size = size.tiny, title = "Sell Signal")
// Plot exit signal
plotshape(exitSignal, style = shape.xcross, location = location.belowbar, color = color.green, size = size.tiny, title = "Exit Signal")
// Add label for sell signals
if sellSignal
label.new(bar_index, high, text="SELL", color = color.red, style = label.style_label_down, textcolor = color.white, size = size.small)
// Add label for exit signals
if exitSignal
label.new(bar_index, low, text="EXIT", color = color.green, style = label.style_label_up, textcolor = color.white, size = size.small)
// Strategy entry and exit - SHORT ONLY
if sellSignal
strategy.entry("Short", strategy.short)
if exitSignal
strategy.close("Short")
// Strategy performance stats
var cumPnL = 0.0
if strategy.closedtrades > 0
cumPnL := strategy.netprofit