SMC市場の高値と安値の突破戦略

SMC HTF
作成日: 2024-05-23 18:04:59 最終変更日: 2024-05-23 18:04:59
コピー: 0 クリック数: 773
1
フォロー
1617
フォロワー

SMC市場の高値と安値の突破戦略

概要

SMC市場高低点突破戦略は,高度な市場概念 (SMC) の原理に基づく量化取引戦略である.この戦略は,高レベル時間枠における重要な買入圧力の領域 (注文ブロック) を識別し,現在の時間枠の中で最適な突破点の入場を探している.これは,SMC原理と一致する.すなわち,これらのブロックは,通常,支持位または抵抗位として機能する.この戦略は,トレンドの方向を考慮し,形状とリスク報酬を誘導し,入場位と損率を最適化する.

戦略原則

  1. 高級時間枠 (例えば1時間図) で,上昇傾向と下降傾向を識別する.上昇傾向は,閉盤価格が前期閉盤価格より高く,低点が前期低点より高く定義される.下降傾向は,その逆である.
  2. 高級時間枠で誘導形を探します.多頭誘導形は,上昇傾向で,前期高点が前2期および前3期高点より高くなります.空頭誘導形は,下降傾向で,前期低点が前2期および前3期低点より低くなります.
  3. 高級時間枠で注文ブロックを識別する.多頭誘導形態の後に,その周期の最高価格と最低価格を注文ブロックの上下境界として定義する.空頭誘導形態は逆である.
  4. 現在のタイムフレーム (例えば15分図) で最適なエントリーポイントを探します. 複数のエントリーは,現在のクローズアップ価格がオーダーブロックを突破する際に,そのブロックの下側にあり,前回のクローズアップ価格がブロック内にある. 空頭エントリーは,クローズアップ価格がオーダーブロックを破る際に,そのブロック上側にあります.
  5. ストップとストップを設定する. ストップの位置は,注文ブロックの境界であり,ストップは,設定されたリスク・リターン比率 (例えば:1.5) によって計算される.

戦略的優位性

  1. SMCの原理に基づいて,主要トレンドと重要なサポートの抵抗点を高レベルタイムフレームで捉え,低レベルタイムフレームでの市場騒音の干渉を回避します.
  2. 誘導形態の識別は,トレンドの強さと持続性を判断するのに役立つため,入場のためのさらなる根拠を提供します.
  3. 信号の無効性や撤退のリスクを減らすために,現在の時間枠で正確に突破する.
  4. リスク・リターン・比率の柔軟な設定は,個人リスクの好みに合わせて調整できます.

戦略リスク

  1. 市場が揺れ動いた時やトレンドが逆転した初期に,この戦略は一定の撤回リスクに直面する可能性があります.
  2. 極端な状況では (例えば急が急落した場合) 注文ブロックは失効し,ストップ・ロスが過度に緩やかになる可能性があります.
  3. 取引量などの他の重要な指標を無視して,価格行動のみを考慮すると,偏差がある可能性があると判断する.

戦略最適化の方向性

  1. フィルターとして,より高度な時間枠 (日線,周線など) を導入し,長期のトレンドを確実に捉える.
  2. 傾向と誘導形状を識別する際に,均線システム,動量指標などと組み合わせて判断の正確性を向上させることができる.
  3. 注文ブロックの境界を動的に最適化します.例えば,ATR ((平均リアル波幅) を考慮するか,異なる市場状況に対応するために通路幅を考慮します.
  4. エントリー後,ATRまたはSAR ((パラロイドライン指標) を追跡するなど,移動ストップを設定して,ポジションのリスクを減らすことができます.
  5. 市場情緒指標 (VIXなど) やマクロ経済データを考え,潜在的なトレンド逆転やブラックスウェット事件を識別する.

要約する

SMC市場高低点突破戦略は,SMC原理に基づく量化取引戦略で,ハイレベルタイムフレームで重要なプレッシャーエリアを特定し,現在のタイムフレームで最高の突破点入場を探します.この戦略は,トレンドの方向性,誘導形状,リスク報酬比を考慮して,エントリーポイントと損失比を最適化します.戦略の優勢は,ハイレベルタイムフレームに基づくノイズフィルタリング,トレンドを正確に捉え,柔軟なリスク管理機能を持っています.しかし,震荡の市場またはトレンドの逆転の初期には,戦略は一定量の撤回リスクに直面する可能性があります.

ストラテジーソースコード
//@version=5
strategy("SMC Indian Market Strategy", overlay=true)

// Input Parameters
htf = input.timeframe("60", title="Higher Timeframe")  // For Inducement & Order Block
riskRewardRatio = input.float(1.5, title="Risk:Reward Ratio", minval=0.1)

// Higher Timeframe Data
[htfOpen, htfHigh, htfLow, htfClose] = request.security(syminfo.tickerid, htf, [open, high, low, close])

// Trend Identification (HTF)
bool htfUptrend = htfClose > htfClose[1] and htfLow > htfLow[1]  // Price action
bool htfDowntrend = htfClose < htfClose[1] and htfHigh < htfHigh[1]

// Inducement Identification (HTF)
bool htfInducementHigh = htfUptrend and high[1] > high[2] and high[1] > high[3] 
bool htfInducementLow = htfDowntrend and low[1] < low[2] and low[1] < low[3]
float inducementLevel = htfInducementHigh ? high[1] : htfInducementLow ? low[1] : na

// Order Block Identification (HTF)
var float htfOBHigh = na // Highest high within the order block
var float htfOBLow = na  // Lowest low within the order block

if htfInducementHigh
    htfOBHigh := htfHigh
    htfOBLow := htfLow
else if htfInducementLow
    htfOBHigh := htfHigh
    htfOBLow := htfLow

// Optimal Entry (Current Timeframe)
bool longEntry = htfUptrend and close > htfOBLow and close[1] < htfOBLow  // Break of OB low
bool shortEntry = htfDowntrend and close < htfOBHigh and close[1] > htfOBHigh  // Break of OB high

// Stop Loss and Take Profit
float longSL = htfOBLow
float longTP = close + (close - longSL) * riskRewardRatio
float shortSL = htfOBHigh
float shortTP = close - (shortSL - close) * riskRewardRatio

// Strategy Execution
if longEntry
    strategy.entry("Long", strategy.long, stop=longSL, limit=longTP)
else if shortEntry
    strategy.entry("Short", strategy.short, stop=shortSL, limit=shortTP)