マルチプル EMA 購入戦略

作者: リン・ハーンチャオチャン,日付: 2024-02-20 15:38:08
タグ:

img

概要

これは価格の動きと短期的なトレンドに基づいた購入のみの戦略です.入口と出口の技術指標として複数の指数関数移動平均値 (EMA) を使用します.

戦略の論理

この戦略は5日,10日,20日50日,100日,200日EMAの6つのEMAを使用しています.

  1. 5 日間EMAが10 日間EMAを上回る
  2. 10日間のEMAは20日間のEMAを上回る
  3. 20日間のEMAが50日間のEMAを上回る
  4. 50日間のEMAが100日間のEMAを上回る
  5. 100 日間 EMA は 200 日間 EMA を越える
  6. 閉じる価格が5日間EMAを上回る

6つの条件がすべて満たされると,ロングポジションが開始されます.

終了シグナルとは 閉じる価格が200日間のEMAを下回る時です

利点分析

この戦略の利点は以下の通りです.

  1. 中短期間の傾向を効果的に識別するために複数の EMA をフィルターとして使用する
  2. 複数の EMA に関する厳格なクロスオーバー基準は,偽のブレイクを避けるのに役立ちます.
  3. 閉じる価格を考慮すると,誤ったブレイクリスクが回避される.
  4. 購入のみで,ショートリスクを回避する
  5. 利得の引き上げに有利な保守的な退出メカニズム

リスク分析

リスクもあります:

  1. EMAの連続的なクロスオーバーの確率が低く,機会を逃す傾向があります
  2. 購入のみで,ドロップから利益を得ることはできません
  3. 市場に閉じ込められる傾向がある
  4. 早く退社し,利益の一部を放棄した
  5. 製品や市場に適応できない静的パラメータ設定

解決策:

  1. 市場状況に基づいて EMA の数を減らす
  2. CCI などを組み込むことを検討し,ショートカミングの機会を導入
  3. トレイリングストップ損失または手動監視を設定する
  4. トレンド製品に基づいてパラメータを調整する
  5. パラメータを調整するために手動監視を推奨

増進 の 機会

戦略の強化の方法:

  1. 誤ったブレイクを避けるためにボリュームを組み込む
  2. パラメータを最適化するために波動度測定を活用する
  3. パラメータを動的に最適化するための機械学習モデルを導入する
  4. ブレイクアウト検証メカニズムを追加する
  5. 傾向予測のためにディープラーニングモデルを組み込む
  6. ストップ・ロスを導入し,利益を取ります

結論

概要すると,これは価格技術指標に基づいた戦略をフォローする中短期トレンドである.複数のEMAフィルターを使用してトレンドを特定し,偽のブレイクアウトを避けるために接近価格を組み込む.論理はシンプルで理解しやすい.デメリットは機会が少なく,罠にかかりやすい.マニュアル監督と組み合わせた補完ツールとして使用することが提案されている.戦略をより堅牢にするため,ボリューム,パラメータ最適化,機械学習などの側面で改善が可能である.


/*backtest
start: 2023-02-13 00:00:00
end: 2024-02-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Multiple EMA Buy Strategy with Price Condition", overlay=true)

// Calculate EMAs
ema5 = ta.ema(close, 5)
ema10 = ta.ema(close, 10)
ema20 = ta.ema(close, 20)
ema50 = ta.ema(close, 50)
ema100 = ta.ema(close, 100)
ema200 = ta.ema(close, 200)

// Plot EMAs
plot(ema5, color=color.blue, title="EMA 5")
plot(ema10, color=color.green, title="EMA 10")
plot(ema20, color=color.red, title="EMA 20")
plot(ema50, color=color.purple, title="EMA 50")
plot(ema100, color=color.orange, title="EMA 100")
plot(ema200, color=color.yellow, title="EMA 200")

// Entry conditions
buy_condition = ema5 > ema10 and ema10 > ema20 and ema20 > ema50 and ema50 > ema100 and ema100 > ema200 and close > ema5

// Exit conditions
exit_condition = close < ema200

// Strategy entry and exit conditions
strategy.entry("Buy", strategy.long, when = buy_condition)
strategy.close("Buy", when = exit_condition)

もっと