Eine fortgeschrittene EMA-Trendstrategie mit entspannten RSI- und ATR-Filtern

Schriftsteller:ChaoZhang, Datum: 2024-02-29 14:44:10
Tags:

img

Übersicht

Dies ist ein EMA-Trend nach der Strategie, die RSI- und ATR-Filter beinhaltet, mit dem Ziel, langfristige Trends zu erfassen.

Strategie Logik

  1. Lang, wenn der schnelle EMA (20) den langsamen EMA (50) überschreitet
  2. Kurz, wenn der schnelle EMA unter den langsamen EMA überschreitet
  3. Nur Handel in Richtung langfristiger Tendenz nach 200 EMA
  4. Erfordern, dass der RSI für Longs relativ überverkauft und für Shorts übergekauft wird
  5. Verwenden Sie ATR zur Erkennung von Konsolidierungszonen, um falsche Ausbrüche zu vermeiden

Vorteile

  1. EMA-Crossover-System, das für Trendnachfolge wirksam ist
  2. Zusätzlicher langfristiger Filter vermeidet den Gegentrend des Handels
  3. Entspannte RSI-Schwellenwerte verringern verpasste profitable Trends
  4. Der ATR-Filter hilft, sich durch unruhige Konsolidierungsperioden zu bewegen

Risiken

  1. Kann in stark steigenden Bullenmärkten unterdurchschnittlich abschneiden
  2. Bei EMA-Crossovers während der Konsolidierung sind Whipsaws möglich
  3. RSI- und ATR-Parameter müssen pro Instrument individuell optimiert werden

Verbesserungen

  1. Optimierung der EMA-Längen für verschiedene Instrumente
  2. RSI- und ATR-Parameter zur Verbesserung der Konsolidierungserkennung optimieren
  3. Erwägen Sie, über Trailing Stops Gewinn zu erzielen.

Schlussfolgerung

Das EMA-Trend-System ist ein System, das sich durch die Optimierung von Parametern in Kombination mit einem umsichtigen Risikomanagement zu positiven Ergebnissen führen kann, insbesondere in anhaltenden Bullenmarktumgebungen.


/*backtest
start: 2024-01-29 00:00:00
end: 2024-02-28 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("EMA Strategy with Trend Filter", overlay=true)

// Параметры EMA
shortEmaLength = input(20, title="Short EMA")
longEmaLength = input(50, title="Long EMA")
trendEmaLength = input(200, title="Trend EMA")
shortEma = ta.ema(close, shortEmaLength)
longEma = ta.ema(close, longEmaLength)
trendEma = ta.ema(close, trendEmaLength)

// Параметры RSI
rsiLength = input(14, title="RSI Length")
rsi = ta.rsi(close, rsiLength)

// Параметры ATR
atrLength = input(14, title="ATR Length")
atr = ta.atr(atrLength)

// Логика для сигналов покупки и продажи с фильтром по тренду
buySignal = ta.crossover(shortEma, longEma) and close > trendEma
sellSignal = ta.crossunder(shortEma, longEma) and close < trendEma

// Вход в сделки
if (buySignal)
    strategy.entry("Buy", strategy.long)

if (sellSignal)
    strategy.entry("Sell", strategy.short)

// Выход из сделок на основе EMA пересечений
exitBuySignal = ta.crossunder(shortEma, longEma)
exitSellSignal = ta.crossover(shortEma, longEma)

if (exitBuySignal)
    strategy.close("Buy")

if (exitSellSignal)
    strategy.close("Sell")

// Визуализация EMA
plot(shortEma, color=color.blue, title="Short EMA")
plot(longEma, color=color.red, title="Long EMA")
plot(trendEma, color=color.green, title="Trend EMA")

// Отдельная панель для RSI и его визуализация
plot(rsi, title="RSI", color=color.purple, linewidth=2)

// Отдельная панель для ATR и его визуализация
plot(atr, title="ATR", color=color.orange, linewidth=2)


Mehr