Diese Strategie verwendet das goldene Kreuz und das Todeskreuz der schnellen und langsamen EMA-Linien, um den Trend zu bestimmen, und legt einen Gewinnprozentsatz als Gewinnregel fest, um den Trend nach dem Handel umzusetzen.
Die Strategie verwendet 3 und 30 Perioden EMAs als Handelssignale. Wenn die 3EMA über die 30EMA überschreitet, signalisiert sie, dass der Preis steigen beginnt, was der Kaufbedingung entspricht. Wenn die 3EMA unter die 30EMA überschreitet, signalisiert sie, dass der Preis fallen beginnt, was der Verkaufsbedingung entspricht.
Darüber hinaus ist in der Strategie ein Gewinnziel konfiguriert. Wenn der Preis auf den Einstiegspreis multipliziert mit dem Gewinnprozentsatz steigt, wird die Position geschlossen, um mehr Gewinne zu erzielen und einen Trend nach dem Handel zu erzielen.
Dies ist eine sehr praktische Trendfolgestrategie. Es verwendet einfache EMA-Indikatoren, um die Trendrichtung zu bestimmen, und legt angemessene Gewinnnahme-Regeln fest, um Risiken effektiv zu kontrollieren, die für die langfristige Verfolgung von Aktien- und Index-Trends auf mittlere bis lange Sicht geeignet sind. Weitere Verbesserungen der Stabilität und des Gewinnfaktors können durch Parameteroptimierung und zusätzliche Signalverifikationsindikatoren erzielt werden.
/*backtest start: 2023-02-12 00:00:00 end: 2024-02-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Crossover Strategy with Target", shorttitle="EMACross", overlay=true) // Define input parameters fastLength = input(3, title="Fast EMA Length") slowLength = input(30, title="Slow EMA Length") profitPercentage = input(100.0, title="Profit Percentage") // Calculate EMAs fastEMA = ta.ema(close, fastLength) slowEMA = ta.ema(close, slowLength) // Plot EMAs on the chart plot(fastEMA, color=color.blue, title="Fast EMA") plot(slowEMA, color=color.red, title="Slow EMA") // Buy condition: 3EMA crosses above 30EMA buyCondition = ta.crossover(fastEMA, slowEMA) // Sell condition: 3EMA crosses below 30EMA or profit target is reached sellCondition = ta.crossunder(fastEMA, slowEMA) or close >= (strategy.position_avg_price * (1 + profitPercentage / 100)) // Target condition: 50 points profit //targetCondition = close >= (strategy.position_avg_price + 50) // Execute orders // strategy.entry("Buy", strategy.long, when=buyCondition) // strategy.close("Buy", when=sellCondition ) if (buyCondition) strategy.entry("Buy", strategy.long) if (sellCondition) strategy.close("Buy") // // Execute sell orders // strategy.entry("Sell", strategy.short, when=sellCondition) // strategy.close("Sell", when=buyCondition) // Plot buy and sell signals on the chart plotshape(series=buyCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar) plotshape(series=sellCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)