オーダーブックと出来高から作る仮想通貨の短期売買戦略:実装と運用ガイド

暗号資産トレード
本稿では、取引所の板情報(オーダーブック)と出来高を組み合わせ、優位性のある短期売買ロジックをゼロから構築する手順を解説します。板の傾き(需給)、スプレッド、約定フローの時系列を定量化し、売買の引き金撤退の規律まで具体化します。専門的な数式も登場しますが、実装は難しくありません。記事の流れに沿って進めれば、初めての方でも再現できる構成にしています。

スポンサーリンク
【DMM FX】入金

なぜ「板情報×出来高」なのか

仮想通貨の短期売買は、チャートだけでは見落とす微視的な需給の歪みを捉えると優位性が生まれます。価格は注文によって動きます。つまり、どの価格帯に何枚の買い・売りが待ち構えているかいま叩かれているのは買いか売りかどれくらいの速度で流れているかを定量化できれば、次の数ティックの期待値を読みやすくなります。

用語の整理:DOM / スプレッド / 約定フロー

DOM(Depth of Market)は価格ごとの板数量です。スプレッドは最良買い(Bid)と最良売り(Ask)の価格差。約定フローはマーケット注文によって実際に約定した売買の流れ(テープ)です。板は「意図」、約定は「結果」を示します。両方を観測して初めて「いま効いている力」を測れます。

コア指標①:注文バランス(Order Imbalance)

最良気配からn段分の板数量を集計し、買い優勢か売り優勢かを示す尺度を作ります。

Imbalance(n) = (Σ BidVol[0..n]) / (Σ AskVol[0..n])

これを0.5〜2.0程度のレンジで解釈します。1を上回れば買い優勢、下回れば売り優勢です。実務では深さを取りすぎるとノイズが増えるため、0〜5段0〜10段の二系統を併用し、直近の変化率ΔImbalanceも併せて見ます。

コア指標②:マイクロプライス(Microprice)

BidとAskの数量で重み付けした仮想的なフェアプライスを用います。

Microprice = (Ask * BidQty + Bid * AskQty) / (BidQty + AskQty)

価格がマイクロプライスより上なら「売り優位」、下なら「買い優位」と解釈できます。価格 − Micropriceが拡大している方向へ短期的な押し引きが生まれやすいです。

コア指標③:約定圧(Aggressive Flow)

直近T秒のマーケット買い約定量と売り約定量を積み上げ、買い叩き/売り叩きのどちらが主導しているかを測ります。

Flow(T) = MarketBuyVol(T) − MarketSellVol(T)

Tは1〜5秒の短い窓を基本に、15〜60秒の遅い窓を補助にします。短い窓でトリガー、長い窓で地合い確認という二段構えが有効です。

実戦アルファ:3点合致シグナル

次の3条件が同時に点灯したらエントリー候補とします。

  1. Imbalance(5) > 1.2(買い)または < 0.8(売り)
  2. 価格とMicropriceの乖離がスプレッドの0.6倍以上、優位方向へ拡大
  3. Flow(3秒)が優位方向にスレッショルド超え(例:直近出来高の分位点70%)

スプレッドが広いときは見送り、手数料後の期待値がプラスになる地合いだけに絞ります。

エントリーとイグジットの定義

買いエントリー:3点合致(買い側)。最良買いの隊列に並ぶ「指値」か、流れが強いときは最良売りに「成行」。

初期ストップ:エントリー価格からスプレッド×1.5または直近スイング安値まで。

利確:マイクロプライスとの乖離が均衡化した時点、または固定ティック(例:2〜3ティック)。

トレーリング:Flowの勢いが続く限りMicropriceを基準に追従し、Flowが減速してゼロクロスしたら一括クローズ。

板の“嘘”に対処する:アイスバーグと見せ板

見せ板(大口の瞬間的なキャンセル)やアイスバーグ(隠し玉)は常に存在します。約定フローとセットで検証しましょう。大きな板が出ているのに同価格帯で約定が進まないときは見送り、同価格帯で連続約定が走るなら本物として追随します。

ボラティリティとスプレッドのレジーム管理

スプレッドが広いと期待値が落ちます。次のフィルターでやる時とやらない時を分けます。

  • Spread ≤ 通常時平均の1.2倍
  • 1分実現ボラ(RV1m)が一定以上(例:上位30%分位)
  • 出来高が直近1時間平均の80%以上

この3つが揃わない時間帯は完全休止でも構いません。待つのも戦略です。

実装の最短ルート:データ取得と計算

取引所APIから最良気配と板の深さ、約定履歴を取得し、上記の指標をリアルタイム計算します。サンプルの疑似コードを示します(概念例)。

// 擬似コード(WebSocketから板と約定を購読)
while (true) { 
  orderbook = getOrderbook()        // bids[], asks[] with price, qty
  trades    = getRecentTrades(3s)   // market buys/sells in last 3s
  imb5 = sum(bids[:5].qty) / sum(asks[:5].qty)
  bid, bidQty = bestBid(orderbook)
  ask, askQty = bestAsk(orderbook)
  micro = (ask * bidQty + bid * askQty) / (bidQty + askQty)
  flow3 = trades.buyVol - trades.sellVol
  if (imb5 > 1.2 and price <= micro and flow3 > threshold) signal = "LONG"
  if (imb5 < 0.8 and price >= micro and flow3 < -threshold) signal = "SHORT"
}

バックテストの考え方:板系戦略の落とし穴

板系のバックテストはスリッページとキュー位置が命です。約定可否を楽観視すると過大評価になります。次のルールで厳しめに見積もります。

  1. 成行は常にスプレッド半分の不利を被る(価格半ティック不利など、取引所仕様に合わせる)。
  2. 指値は自分の前にある数量が全て捌けた後に約定とみなす。
  3. キャンセル再提示(リプレース)はキュー後尾に回るとして再カウント。

これらを守ると見た目の成績は落ちますが、実運用の乖離が小さくなります。

検証メトリクス:勝てるかどうかの判定基準

  • 手数料控除後の期待値(Avg P/L per trade)が正
  • 勝率50%前後でもペイオフレシオ>1を確保
  • 滑りの悪化時でも最大ドローダウンが資金の3〜5%以内
  • レジーム別(高ボラ/低ボラ、狭/広スプレッド)での一貫性

資金管理:ロットと損失許容

1トレードの想定損失(ストップ幅+滑り+手数料)を資金の0.5〜1.0%以内に収めます。複数ポジションで相関が高い場合は合算で1%以内に抑えます。

実運用プレイブック

  1. 事前チェック:スプレッド、出来高、ボラの3条件を満たすか。
  2. ウオームアップ:5分間は観察のみ。板の呼吸(補充の速さ)を掴みます。
  3. エントリー:3点合致の最初の点灯で半分、二度目の再点灯で残り半分。
  4. リスク対応:逆行3ティックで半分カット、Flowゼロクロスで全決済。
  5. 休憩:連敗2回で30分離席。地合いが噛み合うまで待ちます。

テクニカル指標との統合

板と出来高は直近の力学、テクニカルは文脈を与えます。移動平均線でトレンド方向だけ採用、RSIで逆張りゾーンはシグナル無効化、出来高急増バーのみ取引など、フィルター用途に限定すると整合性が高まります。

手数料・資金調達コスト・約定品質の最適化

期待値の源泉が小さい戦略ほど、手数料やスリッページの管理が勝敗を分けます。VIPティアや取引マイニング、成行の比率最適化など、コストのKPI化をおすすめします。

よくある失敗と回避策

  • 見せ板に飛びつく:約定フローの伴わない板は信用しません。
  • 広いスプレッドで連打:スプレッド上限を厳格に。
  • 雑なバックテスト:キュー位置と滑りを必ずモデル化。
  • 連敗時の熱くなり:ルールに離席を組み込みます。

ケーススタディ:ロングの具体例

価格が27,000→27,010の狭い帯で推移。Spread=1、Imbalance(5)=1.35、Microprice=27,009.6、Flow(3s)=+180。条件合致で27,010の成行買い。初期ストップはスプレッド×1.5=1.5ティック(実装上は2ティック)。Flowが+から0へ減速した27,013でクローズ、+3ティック獲得。

ケーススタディ:ショートの具体例

価格が31,500で頭打ち。Spread=1、Imbalance(5)=0.72、Microprice=31,499.4、Flow(3s)=−220。条件合致で31,499の成行売り。反発で−2ティックに達したら半分撤退、Flowがゼロクロスした31,496で残り決済、合計+3ティック。

自動化と半自動化

完全自動化は約定品質の劣化や誤作動のリスクが高まるため、半自動(シグナル提示+ワンクリック執行)から始めると良いです。アラート条件は3点合致+スプレッド上限とし、音・ポップアップ・メールの三重通知で見逃しを減らします。

運用後の振り返りテンプレート

日次で次を記録します。

  • レジーム(狭/広スプレッド、高/低ボラ、出来高分位)
  • シグナルの点灯回数と取引回数(見送り率)
  • 平均滑り、平均手数料、ネットP/L
  • 連勝/連敗の最大、離席トリガー発動回数

チェックリスト(印刷用)

  • スプレッド上限を超えていない
  • 出来高・ボラの閾値クリア
  • Imbalance・Microprice・Flowの3点合致
  • 初期ストップと利確幅を提示済み
  • 連敗時の離席ルール確認

まとめ

板情報と出来高は価格の最前線です。Imbalance、Microprice、Flowという3つの物差しで「いつ、どちらへ、どれだけ」動きやすいかを測り、やらない時間を決めるフィルター厳格な資金管理で期待値を守りましょう。最小限の裁量と半自動化の併用から始め、記録と改善をルーチン化すれば、短期売買の安定性は着実に上がります。

コメント

タイトルとURLをコピーしました