Une stratégie de suivi de la tendance EMA avancée avec des filtres RSI et ATR détendus

Auteur:ChaoZhang est là., Date: 2024-02-29 14:44:10 Je vous en prie.
Les étiquettes:

img

Résumé

Il s'agit d'une stratégie de suivi de la tendance EMA incorporant des filtres RSI et ATR, visant à capturer les tendances à long terme.

La logique de la stratégie

  1. Longue lorsque l'EMA rapide (20) dépasse l'EMA lente (50)
  2. Cours lorsque l'EMA rapide dépasse l'EMA lente
  3. Seule la direction de la tendance à long terme jugée par l' EMA 200
  4. Exiger que le RSI soit relativement survendu pour les longs et suracheté pour les courts
  5. Utiliser l'ATR pour détecter les zones de consolidation afin d'éviter les fausses ruptures

Les avantages

  1. Système croisé de l'EMA efficace pour suivre la tendance
  2. Un filtre supplémentaire à long terme évite la contre-tendance des transactions
  3. Les seuils d'indice de rentabilité ralentis réduisent les tendances rentables manquées
  4. Le filtre ATR aide à naviguer dans les périodes de consolidation agitées

Les risques

  1. Peut être moins performant dans les marchés haussiers fortement en évolution
  2. Des sauts de coupe possibles avec des croisements EMA lors de la consolidation
  3. Les paramètres RSI et ATR nécessitent une optimisation individuelle par instrument

Améliorations

  1. Optimiser les longueurs EMA pour les différents instruments
  2. Paramètres RSI et ATR affinés pour améliorer la détection de la consolidation
  3. Considérez l'ajout de bénéfices via les arrêts de trailing

Conclusion

L'optimisation des paramètres combinée à une gestion prudente des risques peut conduire à des résultats positifs, en particulier dans des environnements de marché haussier persistants.


/*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)


Plus de