
Die Strategie ist eine einfache Moving-Average-Crossing-Trading-Strategie, die auf einer Kreuzung von kurz- und langfristigen Moving-Averages basiert. Sie verwendet 34- und 89-Zyklen-Moving-Averagen und beobachtet ihre Kreuzung als Kauf- und Verkaufssignal in der Frühstückszeit. Es wird ein Kaufsignal erzeugt, wenn der kurzfristige Moving-Average den langfristigen Moving-Average von unten durchbricht; es wird ein Verkaufsignal erzeugt, wenn er von oben durchbricht.
Die Kernlogik der Strategie basiert auf der Kreuzung von kurz- und langfristigen Moving Averages als Handelssignale. Insbesondere definiert die Strategie die kurz- und langfristigen einfachen Moving Averages (SMAs) mit 34 und 89 Zyklen. Die Kreuzung der beiden SMAs wird nur in der Frühstückszeit (08:00 - 10:00) beobachtet. Wenn ein kurzfristiger SMA den langen SMA von unten durchbricht, wird der Markt als aufwärtstrend angesehen und somit ein Kaufsignal erzeugt.
Nach Erhalt des Kauf- oder Verkaufssignals geht die Strategie in die Position ein und setzt eine Ausgangsposition, d.h. nach dem Eintritt mit der angegebenen Anzahl von K-Linien ((3 Default-Linien) wird ein Aktiver Stop-Loss-Austritt durchgeführt. Auf diese Weise kann ein Teil der Gewinne gesperrt werden, um zu verhindern, dass die Verluste weiter ausdehnen.
Es ist zu beachten, dass die Strategie nur in der Frühzeit ein Kreuzungssignal erkennt. Dies liegt daran, dass in dieser Zeit die Marktvolumen größer ist und die Reliabilität der Trendwechselsignale höher ist. In anderen Zeiten ist die Marktvolatilität größer und kann zu Fehlsignalen führen.
Die Strategie hat folgende Vorteile:
Die Verwendung eines einfachen, universellen Moving-Average-Kreuzungsregels ist leicht verständlich und für Anfänger geeignet
Erkennen Sie nur in den Morgenstunden, in denen es mehr hochwertige Signale gibt, und filtern Sie falsche Signale in anderen Zeiten aus
Stop-Loss-Bedingungen, die eine zeitnahe Stop-Loss ermöglichen, einen Teil des Gewinns sperren und das Risiko von Verlusten verringern
Mehr anpassbare Parameter, die sich an den Markt und den persönlichen Stil anpassen lassen
Erweiterbar, um auf Basis dieses Rahmens komplexere Strategien für andere Kennzahlen zu entwickeln
Die Strategie birgt auch einige Risiken, die sich hauptsächlich aus folgenden Aspekten ergeben:
Der Moving Average selbst ist stark rückläufig und kann kurzfristige Preiswendepunkte verpassen.
Verlassen sich auf einfache Indikatoren, die in bestimmten Marktumgebungen fehlschlagen können (Trendschwankungen, Bilanzierung von Segmenten usw.)
Die falsche Einstellung der Stop-Loss-Position kann zu unnötigen Verlusten führen.
Die falsche Einstellung der Parameter (beispielsweise der Moving-Average-Periode, der Positions-Periode usw.) beeinflusst die Strategie.
Entsprechende Lösungen:
Erhöhung der Sensibilität für kurzfristige Veränderungen in Kombination mit anderen Vorreiterindikatoren
Erhöhung der Filterbedingungen zur Vermeidung von Auswirkung von Urlaubssignalen bei Schwankungen und Zwischenmarkt
Optimierung der Stop-Logik, Anpassung der Stop-Spanne an die dynamische Marktfluktuation
Optimierung der Parameter in mehreren Kombinationen, um die optimale Parameter-Einstellung zu finden
Die Strategie bietet auch viel Optimierungsmöglichkeiten, insbesondere in folgenden Bereichen:
Zusätzliche Filterbedingungen werden hinzugefügt, um die Auswirkungen von Urlaubssignalen in Schwankungen und auf den Zwischenmärkten zu vermeiden
Kombination mit dynamischen Kennzahlen zur Identifizierung stärkerer Durchbruchsignale
Optimierung der Periodizität von Moving Averages und Suche nach der optimalen Kombination
Automatische Optimierung der Stop-Loss-Marge auf Basis von Marktschwankungen
Versuchen Sie, die gesamte Strategie automatisch zu optimieren, basierend auf Machine-Learning-Technologien.
Versuchen Sie, mit anderen Strategien zu kombinieren, um komplexere Multi-Strategie-Systeme zu entwickeln
Die Strategie ist insgesamt relativ einfach und praktisch und eignet sich für Anfänger. Sie zeigt das typische Modell einer Moving Average Crossover-Strategie, bei der das Risiko durch die Einstellung von Stop Losses kontrolliert wird. Die Strategie kann jedoch weiter optimiert werden, um ihre Handhabung effektiver zu machen und sich an mehr Marktumgebungen anzupassen.
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("34 89 SMA Crossover Strategy", overlay=true)
// Define the length for the SMAs
short_length = input(34, title="Short SMA Length")
long_length = input(89, title="Long SMA Length")
exit_candles = input(3, title="Exit after how many candles?")
exit_at_open = input(true, title="Exit at Open?")
// Define morning session
morning_session = input("0800-1000", "Morning Session")
// Calculate SMAs
short_sma = ta.sma(close, short_length)
long_sma = ta.sma(close, long_length)
// Function to check if current time is within specified session
in_session(session) =>
session_start = na(time(timeframe.period, "0800-1000")) ? na : true
session_start
// Condition for buy signal (short SMA crosses over long SMA) within specified trading hours
buy_signal = ta.crossover(short_sma, long_sma)
// Condition for sell signal (short SMA crosses under long SMA) within specified trading hours
sell_signal = ta.crossunder(short_sma, long_sma)
// Function to exit the trade after specified number of candles
var int trade_entry_bar = na
var int trade_exit_bar = na
if (buy_signal or sell_signal)
trade_entry_bar := bar_index
if (not na(trade_entry_bar))
trade_exit_bar := trade_entry_bar + exit_candles
// Exit condition
exit_condition = (not na(trade_exit_bar) and (exit_at_open ? bar_index + 1 >= trade_exit_bar : bar_index >= trade_exit_bar))
// Execute trades
if (buy_signal)
strategy.entry("Buy", strategy.long)
if (sell_signal)
strategy.entry("Sell", strategy.short)
if (exit_condition)
strategy.close("Buy")
strategy.close("Sell")
// Plot SMAs on the chart
plot(short_sma, color=color.blue, linewidth=1)
plot(long_sma, color=color.red, linewidth=1)