緩やかなRSIとATRフィルターを持つ高度なEMAトレンドフォロー戦略

作者: リン・ハーンチャオチャン,日付: 2024-02-29 14:44:10
タグ:

img

概要

これは,RSIとATRフィルタを組み込んだEMAトレンドフォロー戦略で,長期的なトレンドを把握することを目的としています.これは,長期EMAトレンドフィルター,リラックスしたRSI過剰販売/過剰購入レベル,およびATRベースの統合検出とともに,高速および遅いEMAクロスオーバーを使用します.

戦略の論理

  1. 低速EMA (20) が低速EMA (50) を越える場合
  2. 低速EMAが低速EMAを下回る場合
  3. 200 EMA で判断された長期トレンド方向での取引のみ
  4. RSIは,ロングで比較的売れ過ぎ,ショートで買い過ぎである必要があります.
  5. 偽の突破を避けるため,ATRを使用して統合ゾーンを検出します.

利点

  1. EMAのクロスオーバーシステム
  2. 追加的な長期フィルターは,取引の反傾向を回避します.
  3. 緩和されたRSIドレッホは,見逃した収益性の傾向を減少させる
  4. ATRフィルターは,不安定な統合期間をナビゲートするのに役立ちます

リスク

  1. 強烈なトレンドの牛市場では劣る可能性があります
  2. 統合中にEMAクロスオーバーで可能であるウィップソー
  3. RSI と ATR パラメータは,各楽器ごとに個別に最適化する必要があります.

改良

  1. 異なる楽器の EMA 長さを最適化する
  2. RSIとATRのパラメータを精調整し,統合の検出を改善する
  3. トレーリングストップで利益を引き出すことを検討する

結論

RSIとATRのような補助指標の組み込みにより,高度なEMAトレンドシステムとなっている.このモデルでは,長期的トレンドを様々なツールでフォローする効果的なシステムである.パラメータの最適化と慎重なリスク管理が相まって,特に持続的な牛市環境でポジティブな結果をもたらすことができる.


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


もっと