SMC / ICT 概念(Smart Money Concepts)
SMC(Smart Money Concepts)/ ICT(Inner Circle Trader)は、2010 年代後半以降にリテール SNS で急速に広まった用語群です。基本思想は「機関投資家(smart money)が個人(retail)の逆に位置する仕掛けを事前に読む」というもので、Michael J. Huddleston(通称 ICT)が YouTube を中心に体系化した用語を、後続のトレーダーが再パッケージ化しました。ローソク足パターンや相場構造の用語の上に、「注文が滞留する水準」の考察を重ねます。
使いどころは、相場構造(BOS / CHoCH)と併用したエントリー水準の絞り込み、リテール的な逆張り水準の回避、上位足のリクイディティ狩り(stop hunt)の先読みです。ただし SMC 系の統計的有意性は未検証で、独立の一次エッジ源としては扱いません。定義は流派で揺れており、本ページは ICT に近い共通定義を採用します。
前提と注意
用語の起源と揺れ
SMC / ICT 系概念は以下の由来を持ちます。
| 概念 | 起源 | 現代化 |
|---|---|---|
| Order Block | Wyckoff 系の accumulation / distribution 概念 | ICT が 2010 年代半ばに再定義 |
| Fair Value Gap(FVG) | 株式の gap 概念 | ICT が FX の 24 時間市場に転用 |
| Liquidity | 板情報(bid-ask depth)の代替概念 | SNS で「リクイディティ狩り」の説明用語として普及 |
| Breaker Block | Order Block の反転版 | ICT 由来 |
| Premium / Discount | フィボナッチ 50% 基準の応用 | ICT の「PD Array」用語群 |
| Killzone | セッションの高ボラ時間帯 | ICT の名称、旧来の「London Open / NY Open」の再命名 |
注意点は次のとおりです。
- ICT 系用語の定義は SNS で細分化・変異が続いている。同じ用語でも流派で意味が違う
- 統計的有意性の検証は限定的。本サイトの検証セクションと同じ FDR フレームで検証すべき対象
- 本ページは「SMC を薦める」のではなく、「SMC 用語で語られるものの共通定義を残す」ことが目的
前提となる概念
SMC を扱う前に、以下の概念が身についていることを想定します。
- ローソク足の実体・髭
- 支持抵抗・水平線 → 水平線・サポート/レジスタンス
- Swing 高安・BOS / CHoCH(相場構造)
- セッション時間帯
Order Block(OB)

模式図。SMC系の統計的有意性は未検証で、独立のエッジ源としては扱わない。
定義
Order Block は、相場構造を反転 / 継続させる直前の「最後のローソク足」です。
- Bullish OB:上昇 impulse の直前の最後の陰線(下落側の実体)
- Bearish OB:下落 impulse の直前の最後の陽線(上昇側の実体)
判定条件は次のとおりです。
- 対象足の直後に、対象足の実体と同方向(反対色)の強い動きが発生する
- 対象足の後、直近スイングを終値ブレイクする(BOS)
- 対象足の高値 / 安値までは価格が戻る可能性がある水準として認識する
視覚化はローソク足の実体(open〜close)を長方形で塗ります。髭までを含める「wick OB」と、実体のみの「body OB」の 2 流派があります。
使い方
- 上昇トレンド中の押し目で、直近の bullish OB(実体)までの押しを買い候補にする
- OB へのタッチ(最初の 1 回)が反発の期待値が高いとされる。2 回目・3 回目の反発は弱まる
- 損切りは OB の反対側の外側に置く。実体を割れたら「破損 OB」として扱う
変形
- Extreme OB:直近スイングの最も端に近い OB。上位足の OB として意識される
- Refined OB:上位足の OB の内部を下位足で細分化した OB
- Institutional OB / IOB:FVG(後述)と組み合わされた OB を指す流派
Breaker Block
Order Block が価格に「破損」された(実体を割られた)後、逆方向の水準として作用する概念です。
- Bullish Breaker:元は bearish OB だったが上抜けされ、下からの支持線として機能する
- Bearish Breaker:元は bullish OB だったが下抜けされ、上からの抵抗線として機能する
使い方は次のとおりです。
- CHoCH 後に元の OB が Breaker に変質する
- 元 OB の水準(実体端 or 髭端)がリテスト水準として機能する期待値がある
Fair Value Gap(FVG)/ Imbalance
定義
Fair Value Gap(FVG)は、連続する 3 本のローソク足で構成される「価格の不連続」です。
- Bullish FVG:1 本目の高値()が 3 本目の安値()より低い → 2 本目の実体を挟んで上方向の gap
- Bearish FVG:1 本目の安値()が 3 本目の高値()より高い → 下方向の gap
判定式は次のとおりです。
- Bullish FVG: の場合、 の帯が FVG
- Bearish FVG: の場合、 の帯が FVG
意味と使い方
FVG は強い一方向の動きで「価格が飛んだ」領域を示します。後で埋めに戻る(retrace / mitigate)期待値があり、埋めに来た水準を「戻り位置」として買い戻し / 売り戻しの候補にします。
視覚化は、3 本のローソク足のうち 1 本目と 3 本目の髭で挟まれた帯を長方形で塗ります。
判定では、FVG は「埋めるまで有効」として扱い、全埋めしたら消滅とします。50% 埋めた時点でエントリーする流派(mid-fill)と、完全埋めまで待つ流派があります。
変形
- BPR(Balanced Price Range):Bullish FVG と Bearish FVG が同水準に重なった帯。強い反転水準として扱う
- Inversion FVG:埋められた FVG が、逆方向の作用に変質した水準
- Volume Imbalance:FVG のうち、隣り合う 2 本のみで判定する簡易版( の gap)
Liquidity(リクイディティ)
定義
Liquidity は、板情報上に想定される「注文の集合」です。SMC 系では価格チャートの swing 高安・水平線を「リテールのストップ注文が置かれている水準」と解釈します。
- Buy-side Liquidity(BSL):直近の swing 高値の上に想定される「買いのストップ」(売りポジションの損切り注文と、ブレイクアウト買い注文)
- Sell-side Liquidity(SSL):直近の swing 安値の下に想定される「売りのストップ」(買いポジションの損切り注文と、ブレイクアウト売り注文)
リクイディティ狩り(Liquidity Grab / Stop Hunt)
価格が意図的に swing 高値 / 安値の外側まで動き、そこに滞留する注文を吸収した後、逆方向に走る挙動です。SMC 系では「smart money が retail の stop を掃除してから本命方向に動かす」と解釈します。判定は「swing 高値を髭で抜けたが、実体では戻る」動きです。
使い方
- 直近スイングハイの上をわずかに髭抜けした直後の反転 = SSL 狙いの上抜け後の売り
- 直近スイングローの下をわずかに髭抜けした直後の反発 = BSL 狙いの下抜け後の買い
- 主要な水平線(前日高値・安値、ロンドン高値・安値、東京高値・安値)はリクイディティが集中しやすい
Equal Highs / Equal Lows
- 複数回同水準で反発している水準 = 「リテールが強い抵抗と認識している」水準
- SMC 系では「抜けを狙われる水準」として扱う
- Equal Highs の上をわずかに抜けた後の反落は SMC 用語で「Liquidity Sweep」と呼ばれる
PDA(Premium / Discount Array)
定義
PDA は、直近の swing 高安の間を「プレミアム(上半分)」と「ディスカウント(下半分)」に分けます。
- Premium(プレミアム):swing 高安の中点(50%)より上 = 「高い」領域
- Discount(ディスカウント):中点より下 = 「安い」領域
- Equilibrium(EQ):中点(フィボナッチ 50%)
使い方
- 上昇トレンド継続の押し目買い → ディスカウント領域まで待つ(中点より下、望ましくは 61.8% 以下)
- 下降トレンド継続の戻り売り → プレミアム領域まで待つ(中点より上、望ましくは 61.8% 以上)
- OB や FVG などの水準が Discount / Premium のどちら側にあるかで、エントリー優先度を判定する
フィボナッチとの対応
| フィボナッチ | SMC 呼称 | 意味 |
|---|---|---|
| 0% | Swing 直近端 | 反発の起点 |
| 38.2% | Weak retrace | 押しが浅い |
| 50% | Equilibrium(EQ) | 中央 |
| 61.8% | Deep retrace | 深い押し |
| 70.5〜79% | Optimal Trade Entry(OTE) | ICT の推奨帯 |
| 100% | Swing 前端 | 破損したら CHoCH |
Killzone(キルゾーン)
定義
Killzone は、ICT が命名した「高ボラかつ方向性が出やすい」セッション時間帯です。
- London Killzone:JST 15:00〜18:00(BST 06:00〜09:00)— ロンドン序盤
- New York Killzone:JST 21:30〜24:30(EDT 07:30〜10:30)— NY 序盤(指標発表を含む)
- London Close:JST 24:00〜25:00 — ロンドン引け近辺
- Asian Range:JST 08:00〜15:00 — 東京セッション(方向性より range 形成として扱う)
使い方
- Killzone 外では大きな仕掛けを避け、Killzone 内でのエントリーを優先する
- ロンドン Killzone 序盤で東京レンジのブレイク / リクイディティ狩りを狙う
- NY Killzone で米指標・米株の初動を利用する
- ロンドン引けで NY 序盤の逆走(fake move)が出やすい
実務での注意
- Killzone は US サマータイム(夏時間)の切替で 1 時間ずれる。JST 換算は季節で調整する
- ICT の Killzone は「特別な時間」ではなく、既存の「London Open / NY Open」の再命名で、同じ時間帯を指している
SMC ワークフロー(代表例)
以下は SMC 用語での典型的なエントリー手順です。
- HTF(日足・4H)の方向決定(HH-HL 判定)
- 上昇トレンドを確認(BOS 継続)
- HTF の Premium / Discount 判定
- 直近 swing の中点を計算
- 現在価格が Discount 領域か確認(押し目)
- HTF の OB / FVG を特定
- 直近の下落 impulse 前の bullish OB
- 直近の上昇 impulse 内の bullish FVG
- LTF(15 分・5 分)で CHoCH / BOS を待つ
- OB or FVG にタッチ → LTF で下降が終わり CHoCH(bullish)
- LTF の bullish OB or FVG でエントリー
- 損切り:HTF OB の外側
- 目標値:直近 HTF swing 高値(BSL の掃除まで)
落とし穴
- 用語を丸暗記しない:SMC 用語は市場観察の「ラベル」にすぎない。ラベル貼りが上手になっても、勝てるようになるとは限らない
- 後出しで OB / FVG を認定しない:チャートを遡って「この OB が効いた」を後付けで指摘するのは容易だが、実運用ではリアルタイムで OB / FVG を認定する必要がある
- 統計的 edge を仮定しない:SMC 概念の統計検証は限定的。ICT 教材の「80% 勝率」などの主張は独立検証がなく、本サイトの他セクションと同じ FDR フレームで扱うべき対象
- 上位足の構造と反する SMC シグナルは弱い:日足下降トレンド中の 15 分 bullish OB は勝率が下がる。SMC 用語は HTF-LTF alignment の上に載る補助
- リクイディティの「意図」を過剰に読まない:「smart money が retail の stop を掃除する」は分かりやすい物語だが、実際の板の動きは複数プレイヤーの合成。物語を根拠に大きく Bet しない
- FVG が必ず埋まる前提を持たない:FVG は「埋まる期待値がある」のみ。強いトレンド中の FVG は埋まらないまま次の FVG が生成される
- Killzone を絶対視しない:Killzone 外でも大きな動きは起きる(中央銀行の緊急発表、地政学イベント)。時間帯フィルタは補助
- ICT / SMC の「教義化」を避ける:教材動画やコミュニティで「正しい SMC の使い方」が過度に定式化される傾向がある。一次資料が YouTube 講義中心で、書籍・査読論文の裏付けは弱い
Python 実装スケッチ
FVG と Order Block の検出関数の骨格です。
import pandas as pdimport numpy as np
def detect_fvg(df: pd.DataFrame) -> pd.DataFrame: prev = df.shift(1) nxt = df.shift(-1)
bullish_fvg = nxt["low"] > prev["high"] bearish_fvg = nxt["high"] < prev["low"]
return pd.DataFrame({ "bullish_fvg": bullish_fvg, "bearish_fvg": bearish_fvg, "bull_low": prev["high"], "bull_high": nxt["low"], "bear_low": nxt["high"], "bear_high": prev["low"], })
def detect_order_blocks(df: pd.DataFrame, impulse_bars: int = 3, impulse_min: float = 0.005) -> pd.DataFrame: is_bear = df["close"] < df["open"] is_bull = df["close"] > df["open"]
future_high = df["high"].shift(-impulse_bars).rolling(impulse_bars).max().shift(-1) future_low = df["low"].shift(-impulse_bars).rolling(impulse_bars).min().shift(-1)
bull_impulse = (future_high - df["close"]) / df["close"] >= impulse_min bear_impulse = (df["close"] - future_low) / df["close"] >= impulse_min
bullish_ob = is_bear & bull_impulse bearish_ob = is_bull & bear_impulse
return pd.DataFrame({ "bullish_ob": bullish_ob, "bearish_ob": bearish_ob, "ob_low": df["low"], "ob_high": df["high"], })
def compute_premium_discount(swing_high: float, swing_low: float, price: float) -> dict: mid = (swing_high + swing_low) / 2 return { "equilibrium": mid, "in_premium": price > mid, "in_discount": price < mid, "distance_pct": (price - swing_low) / (swing_high - swing_low), }detect_fvgは 3 本足の gap を検出する。bullish_fvgが True の位置は、bull_lowとbull_highに FVG の帯の端点が入るdetect_order_blocksは「反対色のローソク足 + 直後 N 本での N% 以上の逆方向動き」で OB を検出する。impulse_barsとimpulse_minは通貨ペア・時間足で調整するcompute_premium_discountは swing 高安と現在価格から Premium / Discount を判定する- 実運用では FVG や OB が「後で埋められた / 破損された」状態を追跡する後段処理(mitigation tracking)が必要
参考
- Michael J. Huddleston(ICT), The Inner Circle Trader YouTube 講義シリーズ. https://www.youtube.com/@ICTMentorships
- Michael J. Huddleston, ICT Mentorship 2022 / 2023 series — Killzone、PDA、OB、FVG の定義が最も体系的
- Richard D. Wyckoff, The Richard D. Wyckoff Method of Trading and Investing in Stocks, 1931 — Order Block の遠祖(accumulation / distribution)
- SMC 系コミュニティで広まった二次資料(書籍名を伴わない教材が多数)— 定義の揺れの原因