
Diese Strategie verwendet ein duales gleitendes Durchschnittssystem zur Trendbeurteilung und für Handelsentscheidungen und identifiziert den Beginn, die Fortsetzung oder das Ende von Markttrends durch die relative Positionsbeziehung zwischen dem schnellen und dem langsamen gleitenden Durchschnitt zu einem bestimmten Zeitpunkt. Die Strategie überprüft die Positionsbeziehung zwischen der schnellen EMA und der langsamen EMA zu einem festen Zeitpunkt jeden Tag, etabliert eine Long-Position, wenn die schnelle Linie über der langsamen Linie liegt, und etabliert eine Short-Position, wenn die schnelle Linie unter der langsamen Linie liegt, Dadurch wird ein Trendverfolgungshandel erreicht.
Der Kern der Strategie besteht darin, Trendbeurteilungen auf der Grundlage zweier exponentieller gleitender Durchschnitte (EMA) unterschiedlicher Zeiträume vorzunehmen. Die schnelle EMA (Standardperiode ist 10) reagiert empfindlicher auf Preisänderungen und kann Markttrends schneller erfassen; die langsame EMA (Standardperiode ist 50) spiegelt längerfristige Trends wider. Die Strategie prüft das Positionsverhältnis der beiden gleitenden Durchschnitte zu einem festgelegten Zeitpunkt an jedem Handelstag (der Standardwert ist 9:00 Uhr), ermittelt die Markttrendrichtung und handelt auf Grundlage des Kreuzungssignals des gleitenden Durchschnitts. Wenn der schnelle EMA den langsamen EMA überschreitet, deutet dies darauf hin, dass die kurzfristige Aufwärtsdynamik zugenommen hat und es Zeit ist, in den Markt einzusteigen und Long-Positionen einzugehen. Wenn der schnelle EMA den langsamen EMA unterschreitet, deutet dies darauf hin, dass die kurzfristige Aufwärtsdynamik zugenommen hat. Die langfristige Abwärtsdynamik hat zugenommen und es ist an der Zeit, in den Markt einzusteigen und Short-Positionen zu eröffnen.
Diese Strategie realisiert ein einfaches und effektives Trendverfolgungs-Handelssystem durch die Kombination eines schnellen und langsamen dualen gleitenden Durchschnittssystems mit einem Prüfmechanismus mit fester Zeit. Die Vorteile dieser Strategie liegen in einer klaren Logik und einem hohen Automatisierungsgrad, sie bringt jedoch auch Einschränkungen mit sich, wie z. B. eine Verzögerung des gleitenden Durchschnitts und eine feste Einstiegszeit. Es besteht in der Strategie noch erheblicher Verbesserungsbedarf durch die Einführung zusätzlicher technischer Indikatoren, die Optimierung der Parameterauswahlmechanismen und verstärkte Risikokontrollmaßnahmen. Insgesamt handelt es sich um ein grundlegendes Strategiegerüst mit praktischem Nutzen, das je nach Bedarf noch weiter verbessert und optimiert werden kann.
/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Daily EMA Comparison Strategy", shorttitle="Daily EMA cros Comparison", overlay=true)
//------------------------------------------------------------------------------
// Inputs
//------------------------------------------------------------------------------
fastEmaLength = input.int(10, title="Fast EMA Length", minval=1) // Fast EMA period
slowEmaLength = input.int(50, title="Slow EMA Length", minval=1) // Slow EMA period
checkHour = input.int(9, title="Check Hour (24h format)", minval=0, maxval=23) // Hour to check
checkMinute = input.int(0, title="Check Minute", minval=0, maxval=59) // Minute to check
//------------------------------------------------------------------------------
// EMA Calculation
//------------------------------------------------------------------------------
fastEMA = ta.ema(close, fastEmaLength)
slowEMA = ta.ema(close, slowEmaLength)
//------------------------------------------------------------------------------
// Time Check
//------------------------------------------------------------------------------
// Get the current bar's time in the exchange's timezone
currentTime = timestamp("GMT-0", year, month, dayofmonth, checkHour, checkMinute)
// Check if the bar's time equals or passes the daily check time
isCheckTime = (time >= currentTime and time < currentTime + 60 * 1000) // 1-minute tolerance
//------------------------------------------------------------------------------
// Entry Conditions
//------------------------------------------------------------------------------
// Buy if Fast EMA is above Slow EMA at the specified time
buyCondition = isCheckTime and fastEMA > slowEMA
// Sell if Fast EMA is below Slow EMA at the specified time
sellCondition = isCheckTime and fastEMA < slowEMA
//------------------------------------------------------------------------------
// Strategy Execution
//------------------------------------------------------------------------------
// Enter Long
if buyCondition
strategy.entry("Long", strategy.long)
// Enter Short
if sellCondition
strategy.entry("Short", strategy.short)
//------------------------------------------------------------------------------
// Plot EMAs
//------------------------------------------------------------------------------
plot(fastEMA, color=color.blue, title="Fast EMA")
plot(slowEMA, color=color.orange, title="Slow EMA")