複数インデックス移動平均自動取引追跡利益確定システム

EMA MA
作成日: 2024-12-04 15:35:32 最終変更日: 2024-12-04 15:35:32
コピー: 0 クリック数: 547
1
フォロー
1617
フォロワー

複数インデックス移動平均自動取引追跡利益確定システム

概要

この戦略は,複数の指数移動平均 ((EMA) に基づく自動取引システムで,5周期,20周期および50周期EMAの分層判断によって取引信号を構築する.システムの設計の特徴は,高点,低点およびクローズアップ価格に基づく複数のEMAの判断を採用し,ダイナミックなストップ損失とトラッキングストップの仕組みを組み合わせて,リスクを効果的に制御しながら利益をロックすることです.

戦略原則

戦略は,複数の時間周期のEMA交差と位置関係に基づく取引決定を行う.具体的には:

  1. 5サイクル,20サイクル (最高価格,最低価格,閉店価格に基づく) と50サイクルEMAを使用
  2. 倉庫建設条件は,すべての指標が明確な多頭列を提示することを要求します:50EMA < 20EMA (低点) < 20EMA (閉点) < 20EMA (高点) < 5EMA
  3. 価格がすべての均線上にあるように要求し,強いトレンドを保証します.
  4. 出場は二重メカニズムを使用します:価格が5周期EMAを下回ると利益を得て終了し,20周期EMAの低点に達すると停止します.

戦略的優位性

  1. 層次フィルタリングにより,偽信号を大幅に減少させる.
  2. 多重EMAのクロス認証により取引の正確性向上
  3. ダイナミックストップポジション 市場の変動に適応し,適応性強
  4. 感情的な干渉を避け,完全に自動化されたシステム
  5. トラッキング・ストップ・メカニズムにより,既得利益を有効にロックする

戦略リスク

  1. 横軸の振動で市場が頻繁に動き回る可能性
  2. EMAは本質的に遅滞の指標で,市場がスタートする点を逃している可能性がある.
  3. 複数の条件により,一部の取引機会を逃す可能性があります.
  4. 20EMAの低点でのストップ・ローは比較的緩やかかもしれません.

戦略最適化の方向性

  1. 交付量確認の仕組みを増やし,信号の信頼性を向上させる
  2. ポジションのサイズを動的に調整する
  3. 倉庫の減量など,より柔軟な減量策を導入する
  4. RSIなどの振動指標を組み合わせて入場時間を最適化
  5. トレンドの強さを判断し,弱い市場をフィルターする

要約する

これは,厳格に設計された多重均線取引システムで,階層的なフィルタリングと動的ストップローズによってリスクを効果的に制御する.いくつかの急速な動きを逃す可能性があるが,トレンドする市場では安定したパフォーマンスを発揮する.異なる市場の特徴に応じてパラメータを適切に調整し,取引量などの補助指標を追加することを考慮して信頼性を向上させることを推奨する.この戦略は,安定した収益を追求する中期投資家に適しています.

ストラテジーソースコード
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-03 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Automated EMA Strategy with Hierarchical Conditions", overlay=true)

// Inputs for EMA lengths
length_5 = 5
length_20 = 20
length_50 = 50

// Calculating EMAs
ema_5 = ta.ema(close, length_5)
ema_20_high = ta.ema(high, length_20)
ema_20_low = ta.ema(low, length_20)
ema_20_close = ta.ema(close, length_20)
ema_50 = ta.ema(close, length_50)

// Buy condition: 50 EMA < 20 EMA (Close) < 20 EMA (High) < 20 EMA (Low) < 5 EMA
// and LTP above all EMAs
buy_condition = ema_50 < ema_20_low and ema_20_low < ema_20_close and ema_20_close < ema_20_high and ema_20_high < ema_5 and close > ema_5 and close > ema_20_close and close > ema_20_high and close > ema_20_low and close > ema_50

// Stop-loss and target levels
stop_loss = ema_20_low

// Target condition: Close below 5 EMA
target_condition = close < ema_5

// Check if there's an open position
is_in_position = strategy.position_size > 0

// Execute Buy Signal only if no position is open
if (buy_condition and not is_in_position)
    strategy.entry("Buy", strategy.long)

// Exit conditions: Stop-loss or target (close below 5 EMA)
if (is_in_position and (target_condition or close < stop_loss))
    strategy.close("Buy")

// Plotting the EMAs
plot(ema_5, color=color.blue, title="5 EMA")
plot(ema_20_high, color=color.green, title="20 EMA (High)")
plot(ema_20_low, color=color.red, title="20 EMA (Low)")
plot(ema_20_close, color=color.purple, title="20 EMA (Close)")
plot(ema_50, color=color.orange, title="50 EMA")