Diese Strategie ist ein Trend-Folgende Handelssystem, das auf mehreren exponentiellen gleitenden Durchschnitten (EMAs) und glätteten gleitenden Durchschnitten (SMMA) basiert. Es erzeugt Handelssignale durch die Überschneidung von kurzfristigen und langfristigen EMAs, verwendet SMMA als Trendbestätigungsindikator und enthält zusätzliche EMA-Linien als Unterstützung und Widerstandsreferenzen. Dieser Ansatz ermöglicht sowohl die Erfassung des Trends als auch die effektive Kontrolle von falschen Ausbruchrisiken.
Die Strategie verwendet 10-Tage- und 22-Tage-EMA als primäre Signallinien, 200-Tage-SMMA als Trendfilter sowie 50-Tage-, 100-Tage- und 200-Tage-EMA als Hilfsindikatoren. Ein Kaufsignal wird erzeugt, wenn die kurzfristige EMA über die langfristige EMA überschreitet und der Preis über der SMMA liegt; ein Verkaufssignal wird erzeugt, wenn die kurzfristige EMA unter die langfristige EMA überschreitet und der Preis unter der SMMA liegt. Die zusätzlichen drei EMA-Linien bieten weitere technische Unterstützung und Widerstandsreferenzpunkte.
Dies ist eine Trend-Folgende Strategie, die mehrere gleitende Durchschnittssysteme integriert, Trends erfasst und gleichzeitig Risiken durch die koordinierte Verwendung verschiedener periodischer gleitender Durchschnitte kontrolliert. Die Kernstärke der Strategie liegt in ihrem mehrfachen Bestätigungsmechanismus, obwohl auf ihre Leistung in verschiedenen Märkten geachtet werden muss. Durch eine angemessene Parameteroptimierung und Risikomanagement kann diese Strategie gute Ergebnisse in Trending-Märkten erzielen.
/*backtest start: 2019-12-23 08:00:00 end: 2024-12-10 08:00:00 period: 2d basePeriod: 2d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Crossover with SMMA and Additional EMAs", overlay=true) // Input parameters for EMAs and SMMA emaShortLength = input.int(10, title="Short EMA Length") emaLongLength = input.int(22, title="Long EMA Length") smmaLength = input.int(200, title="SMMA Length") // Additional EMA lengths ema1Length = input.int(50, title="EMA 1 Length") ema2Length = input.int(100, title="EMA 2 Length") ema3Length = input.int(200, title="EMA 3 Length") // Calculate EMAs and SMMA emaShort = ta.ema(close, emaShortLength) emaLong = ta.ema(close, emaLongLength) smma = ta.sma(ta.sma(close, smmaLength), 2) // SMMA approximation ema1 = ta.ema(close, ema1Length) ema2 = ta.ema(close, ema2Length) ema3 = ta.ema(close, ema3Length) // Plot EMAs and SMMA on the chart plot(emaShort, color=color.blue, linewidth=2, title="Short EMA") plot(emaLong, color=color.red, linewidth=2, title="Long EMA") plot(smma, color=color.white, linewidth=2, title="SMMA") plot(ema1, color=color.green, linewidth=1, title="EMA 1") plot(ema2, color=color.purple, linewidth=1, title="EMA 2") plot(ema3, color=color.yellow, linewidth=1, title="EMA 3") // Buy condition: Short EMA crosses above Long EMA and price is above SMMA buyCondition = ta.crossover(emaShort, emaLong) and close > smma // Sell condition: Short EMA crosses below Long EMA and price is below SMMA sellCondition = ta.crossunder(emaShort, emaLong) and close < smma // Execute Buy order if (buyCondition) strategy.entry("Buy", strategy.long) alert("Buy Signal: Short EMA crossed above Long EMA and price is above SMMA.", alert.freq_once_per_bar_close) // Execute Sell order if (sellCondition) strategy.entry("Sell", strategy.short) alert("Sell Signal: Short EMA crossed below Long EMA and price is below SMMA.", alert.freq_once_per_bar_close)