ダイナミック ダーバス ボックス ブレイクアウトと移動平均トレンド確認取引システム

MA25 SMA
作成日: 2024-11-18 16:00:53 最終変更日: 2024-11-18 16:02:45
コピー: 6 クリック数: 617
1
フォロー
1617
フォロワー

ダイナミック ダーバス ボックス ブレイクアウトと移動平均トレンド確認取引システム

概要

この記事では,ダーヴァス・ボックスと25周期移動平均を組み合わせたトレンド追跡取引システムについて説明します. この戦略は,価格の整合区間の形成されたボックスを識別し,均線トレンドの確認と組み合わせて,突破時に強い動きを捕捉します. システムの設計は,トレンドの継続性と偽の突破フィルターを十分に考慮して設計され,トレーダーに完全な市場入出場の枠組みを提供します.

戦略原則

戦略は主に3つのコア構成要素で構成されています.

  1. ダヴァスの箱体の構成:システムは過去5周期の最高値と最低値を計算して箱体の境界を決定する.箱体の頂点は新しい高点によって決定され,底は,対応する区間の最低点によって決定される.
  2. 平均線トレンド確認: 25周期単行移動平均をトレンドフィルターとして導入し,価格がMA25以上である場合にのみポジションを開くことを考慮する.
  3. トランジションシグナル生成:
    • 買取シグナル:価格が箱の上部に突破し,MA25上位にある
    • 売れ行きのサイン:価格が箱底まで落ちた

戦略的優位性

  1. トレンド・トラッキング能力が強い:
    • 箱破りによる捕獲の始まり
    • MA25フィルターと組み合わせて,主動トレンドの方向に取引を保証します.
  2. 信号の質を最適化する:
    • ダブル認証メカニズムは偽の侵入のリスクを低減します.
    • 試合の条件を明確にし,主観的な判断を避ける
  3. リスクの管理は完璧です.
    • 箱の底部に自然に形成された止損位
    • MA25はトレンド保護の追加となる

戦略リスク

  1. 市場を揺るがすリスク:
    • 頻繁に突破すると,継続的な損失が発生する可能性があります.
    • 強いトレンド市場での使用が推奨されています.
  2. 遅滞のリスク:
    • 箱の形成には時間がかかるので,一部を逃しているかもしれない.
    • MA25は中期平均線として一定の遅れがある.
  3. 資金管理リスク:
    • 取引ごとに合理的な資金比率を設定する必要があります
    • 変動率の動態と組み合わせたポジション調整の提案

戦略最適化の方向性

  1. パラメータ最適化:
    • 箱体周期は市場特性に合わせて調整できます.
    • MA周期は,市場周期特性に合わせて調整できます.
  2. 信号の強化:
    • 追加可能な交付量確認メカニズム
    • ダイナミック・ストップ・メカニズムの導入を検討
  3. リスク管理の強化:
    • ボラティリティフィルターを追加
    • ダイナミックなポジション管理を実現

要約する

この戦略は,クラシックなダーバスの箱体理論と移動平均のトレンド追跡を組み合わせて,安定した取引システムを構築している.システムの主要な優位性は,トレンド性のある行動を効果的に捉えることができ,同時に複数のフィルタリングメカニズムによってリスクを制御することです.ある程度の遅れがあるにもかかわらず,合理的なパラメータ最適化とリスク管理により,この戦略は,トレンド市場で安定したパフォーマンスを得ることができます.トレーダーは,実際のディスクを使用する際に,市場環境の選択に重点を置くことをお勧めし,実際の動向に応じてパラメータを調整します.

ストラテジーソースコード
/*backtest
start: 2024-10-01 00:00:00
end: 2024-10-31 23:59:59
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("DARVAS BOX with MA25 Buy Condition", overlay=true, shorttitle="AEG DARVAS")

// Input for box length
boxp = input.int(5, "BOX LENGTH")

// Calculate 25-period moving average
ma25 = ta.sma(close, 25)

// Lowest low and highest high within the box period
LL = ta.lowest(low, boxp)
k1 = ta.highest(high, boxp)
k2 = ta.highest(high, boxp - 1)
k3 = ta.highest(high, boxp - 2)

// New high detection
NH = ta.valuewhen(high > k1[1], high, 0)

// Logic to detect top and bottom of Darvas Box
box1 = k3 < k2
TopBox = ta.valuewhen(ta.barssince(high > k1[1]) == boxp - 2 and box1, NH, 0)
BottomBox = ta.valuewhen(ta.barssince(high > k1[1]) == boxp - 2 and box1, LL, 0)

// Plot the top and bottom Darvas Box lines
plot(TopBox, linewidth=3, color=color.green, title="Top Box")
plot(BottomBox, linewidth=3, color=color.red, title="Bottom Box")
plot(ma25, color=#2195f31e, linewidth=2, title="ma25")

// --- Buy and Sell conditions ---

// Buy when price breaks above the Darvas Box AND MA15
buyCondition = ta.crossover(close, TopBox) and close > ma25

// Sell when price drops below the Darvas Box
sellCondition = ta.crossunder(close, BottomBox)

// --- Buy and Sell Signals ---

// Plot BUY+ and SELL labels
plotshape(series=buyCondition, title="Buy+ Signal", location=location.abovebar, color=#72d174d3, style=shape.labeldown, text="BUY")
plotshape(series=sellCondition, title="Sell Signal", location=location.belowbar, color=color.rgb(234, 62, 62, 28), style=shape.labelup, text="SELL")

// --- Strategy execution ---

if (buyCondition)
    strategy.entry("Buy", strategy.long)

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