多くのトレーダーはスリッページを継続的に過小評価しており、その結果、実際の損失が事前計算より大きくなります。
スリッページは期待価格からの単一のズレとして扱われがちですが、実際の市場では、約定価格は部分約定の連なり、利用可能な流動性の変化、そして攻撃的な注文フローに対する参加者の反応を通じて形成されます。
スリッページが生じるのは、成行注文が注文板の複数の価格水準から数量を取りに行き、それらの部分約定の出来高加重平均価格として記録されるためです。
約定価格は、注文板、約定優先順位、市場の時間的ダイナミクスのレベルで作用する複数の独立したプロセスを集約した結果として見る必要があります。
⚙️ マッチングエンジンは成行注文を指値注文とどう照合するか
成行注文の約定価格は、トレーダーが注文を送信した瞬間ではなく、マッチングエンジンが指値注文と照合する瞬間に形成されます。
注文の照合: マッチングエンジンが、現在の価格水準にある反対側の利用可能な指値注文を使って成行注文を執行する連続的なプロセスです。
成行注文が入ると、マッチングエンジンは売買方向と数量だけを固定し、実際の価格は照合時点の注文板の状態だけで決まります。
エンジンはトレーダーの意図を分析せず、約定価格を最適化もしません。反対側の最良価格水準から始めて、流動性へアクセスするルールを機械的に適用します。
📥 どのルールで流動性が選ばれるか
流動性へのアクセスは、水準間の価格優先と、同一水準内の時間優先によって決まります。
まず最良の利用可能価格にある指値注文が使われ、その後、選ばれた水準内では注文が置かれた時間に基づく厳格な順番が適用されます。
- 反対側の最良価格にある注文が先に使われます。
- 同一水準内の注文は、置かれた時刻の順に約定します。
- 水準に見えている数量は、特定の注文が利用できる数量と同じではありません。
- 数量が不足すると、注文は注文板の次の水準へ移ります。
一部の指値注文により早い時間優先がある場合、成行注文がアクセスできるのはその水準に残った数量だけです。
🧮 マッチングエンジンが行う処理
成行注文の執行は、注文板の特定水準に結び付いた部分約定の連続として進みます。
エンジンは注文を選択された水準の指値注文と照合し、部分約定を記録して、残った数量を次の水準へ移します。
- 最良の利用可能な価格水準が選ばれます。
- 注文はその水準の注文と時間順に照合されます。
- 各部分は個別の取引として記録されます。
- 残った数量は次の水準へ移ります。
1つの成行注文はほぼ常に複数の取引に分かれるため、最終価格は一点の価格ではなく出来高加重平均になります。
各部分約定は照合が起きた水準の価格で記録されるため、最終的な約定価格は注文板における流動性の分布を反映します。
| 照合ルール | 具体的に確認されるもの | 価格にどう現れるか |
|---|---|---|
| 価格優先 | 注文板の価格水準の順番 | 水準を消費していく方向を決める |
| 時間優先 | 水準内の指値注文のキュー | 注文が利用できる数量を制限する |
| 水準数量の制約 | 1つの価格に十分な流動性があるか | 部分約定の数を形成する |
| 注文板の変化 | 執行中の注文取消と追加 | 平均価格の悪化を強める |
例: 最良水準で3枚の契約が利用可能で、成行注文が8枚を必要とする場合、残りの5枚はより悪い価格の次の水準で約定します。
注文送信から照合までの間に注文板で起きるあらゆる変化は自動的に執行へ反映されるため、画面上で気配が変わっていないように見えても、同じ約定結果は保証されません。
照合がスリッページにつながる条件:
- 注文数量が1つの価格水準の流動性を上回る。
- 一部の注文により早い時間優先がある。
- 照合中に注文板が変化する。
- 執行が複数の水準に分散する。
したがって、スリッページは形式的な照合ルールと現在の注文板構造の直接的な結果として発生します。
🧩 スリッページはどの執行段階から成り立つか
スリッページは注文執行の過程で形成され、マッチングエンジンの処理順序と利用可能な流動性の変化に依存します。
スリッページ: 注文が執行に送られた価格と、実際にその執行を構成した全取引の出来高加重平均価格との差です。
スリッページは注文送信の瞬間には発生しません。送信時には取引意図だけが固定され、実際の価格はその後、利用可能な指値注文との照合過程で形成されるからです。
成行注文が入ると、マッチングエンジンは反対側の指値注文を確認し、1つの水準の数量が不足していれば、注文は複数の価格水準で順番に執行されます。
注文板の各価格水準には限られた数量しかないため、1つの注文はほぼ常に複数の部分約定へ分かれ、それぞれが固有の価格で記録されます。
🔍 価格期待に使われるデータ
注文送信前、トレーダーは現在の気配と、近い価格水準に見える注文板の厚みを基準にします。
期待価格は最良bidまたはaskと近接する注文板水準に基づいて形成され、それらはある時点の指値注文の状態を示しています。
- 期待は最良気配に基づくもので、注文全体の数量に基づくものではありません。
- 見えている板の厚みは、現在の瞬間にだけ利用可能な注文を示します。
- 指値注文の順番は約定優先順位に影響します。
- 注文は照合が始まる前に約定または取消されることがあります。
最良価格で約定するという期待が実現するのは、利用可能な指値数量が照合時点まで残っている場合だけです。
⚙️ マッチングエンジンが行う処理
執行中、マッチングエンジンは注文を利用可能な指値注文と順番に照合します。
最初の水準の数量が不足している場合、注文の残りは自動的に次の水準へ移り、平均約定価格が変わります。
- 1つの注文は複数の取引に分割されます。
- 各取引は対応する水準の価格で記録されます。
- 後続の水準は通常、価格面で不利です。
- 時間の経過による注文板の変化は、利用可能な水準に影響します。
スリッページは、流動性が変化する中で注文が注文板の複数水準を通過する結果として現れます。
最良気配が画面上で変わっていなくても、最終価格は期待と異なることがあります。照合は送信時点ではなく、執行時点の注文板状態で行われるためです。
| 執行段階 | 何が起きるか | 価格への影響 |
|---|---|---|
| 注文送信 | 数量を買う、または売る意図が固定される | 価格はまだ決まっていない |
| 照合 | 注文が部分取引に分割される | 価格は複数水準で形成される |
| 完了 | 出来高加重平均価格が組み立てられる | 最終的なスリッページが記録される |
数量が増える、または市場が加速すると、注文板の次の各水準が平均価格の悪化により大きく寄与するため、スリッページは非線形に増加します。
スリッページの複合的な性質が確認できる条件:
- 注文が1回ではなく複数の取引で約定する。
- 平均価格が最初の約定価格と異なる。
- 数量の増加が価格悪化を加速させる。
- インパルス的な動きでは乖離が強まる。
したがって、スリッページは独立した価格効果ではなく、注文執行の連続した段階の結果です。そのため、執行構造を通じて再現可能で分析できます。
📊 平均約定価格の形成における注文板の厚みの役割
注文板の厚みは、注文数量がどの価格水準に分散され、マッチングエンジンがどの平均約定価格を記録するかを決めます。
注文板の厚み: 成行注文が照合される瞬間に、注文板の各価格水準で利用できる指値注文の数量です。
成行注文の約定価格は、単一の気配値を固定したものではなく、複数の価格水準の数量を使った結果として形成されます。
注文数量が最上位水準の利用可能な流動性を上回ると、マッチングエンジンは残りを価格的により離れた次の水準で執行します。
平均価格のズレの大きさは、注文板の2つのパラメータ、つまり上位水準の数量と隣接する価格水準間の距離によって決まります。
| 価格水準 | 価格 | 利用可能数量 | 累積数量 | 執行での役割 |
|---|---|---|---|---|
| 水準1 | 100.00 | 2 | 2 | 注文の最初の部分が約定する |
| 水準2 | 100.05 | 2 | 4 | 2単位を超えた部分の執行が続く |
| 水準3 | 100.15 | 3 | 7 | 平均価格の目立つ悪化を形成する |
| 水準4 | 100.40 | 5 | 12 | 平均価格へ不釣り合いに大きく寄与する |
この連なりは、追加の数量1単位ごとに、より遠い水準へ移り得る注文執行の軌跡を示しています。
平均価格の計算: 7単位を2×100.00、2×100.05、3×100.15の水準で買う場合、平均価格は (2×100.00 + 2×100.05 + 3×100.15) ÷ 7 = 100.0857 です。
スリッページの非線形性は、執行が前の水準より価格的に大きく離れた水準に触れた瞬間に生じます。
非線形効果: 数量を7単位から8単位へ増やすと、100.40で1取引が追加され、平均価格は100.1250へずれます。
同じ合計流動性でも、その数量が水準間で不均等に分布していれば、異なる約定価格を生みます。
🧪 実際の約定から注文板の厚みの影響を確認する方法
確認はエントリー前の注文板の見た目ではなく、注文の実際の執行データで行います。
注文板の厚みは、いくつの水準が執行に参加したか、各水準がどれだけの数量割合を提供したかに現れます。
- 執行は異なる価格の複数取引で構成される。
- 注文の後半部分は、最初の価格から離れた水準で約定する。
- 小さな数量増加が平均価格を急激に悪化させる。
- 平均価格は、重要な数量割合を提供した水準の方向へずれる。
遠い水準が数量の目立つ部分を提供した場合、その価格は平均約定価格に支配的な影響を与えます。
したがって、注文板の厚みは、数量が価格水準に分配される具体的な仕組みと、各水準が平均約定価格へ与える寄与を通じてスリッページに影響します。
🧾 注文の部分約定と、最初の価格と平均価格の乖離
最初の約定価格と取引の平均価格の乖離は、1つの注文の数量が注文板の複数の価格水準に分散されることで発生します。
注文の部分約定: 1つの注文が個別取引の連続として執行されることで、それぞれの取引は流動性が存在した価格水準の価格で記録されます。
最初の約定価格は、注文が注文板の最上位水準と照合された瞬間に固定され、その水準で利用可能だった数量部分の価格だけを反映します。
平均約定価格は、すべての部分取引が完了した後に決まり、各取引の数量を考慮した価格の出来高加重平均として計算されます。
後続部分が最初の価格から離れた水準で約定する場合、その寄与は最初の約定価格自体が変わったかどうかに関係なく平均価格をずらします。
| 約定部分 | 価格 | 数量 | 注文内の割合 | 平均価格への寄与 |
|---|---|---|---|---|
| Fill 1 | 100.00 | 2 | 25% | 最初の約定価格を固定する |
| Fill 2 | 100.05 | 2 | 25% | 平均価格への影響は小さい |
| Fill 3 | 100.15 | 3 | 37.5% | 平均価格のズレに主な寄与をする |
| Fill 4 | 100.40 | 1 | 12.5% | 最終的な乖離を強める |
この約定ログは、最初の価格は変わらない一方で、最終価格は後続のすべての部分取引の合計寄与によって形成されることを示しています。
平均約定価格の計算: 数量が2@100.00、2@100.05、3@100.15、1@100.40の場合、平均価格は (2×100.00 + 2×100.05 + 3×100.15 + 1×100.40) ÷ 8 = 100.1375 です。
最初の価格から離れた水準が提供する数量割合が大きいほど、その価格は最終的な平均約定価格へ強く影響します。
遠い水準で約定した数量が小さくても、近い水準での複数取引より平均価格を大きく変えることがあります。
🔍 実際の取引から最初の価格と平均価格の乖離を確認する方法
確認は注文の執行データで行い、最初に記録された取引価格だけで判断しません。
乖離は、執行に参加した価格水準の数と、各水準で約定した数量割合によって決まります。
- 最初の約定価格は注文板の最上位水準に対応する。
- 平均価格は後続の部分約定によって異なる。
- 最も大きな数量割合を提供した水準が、平均価格の形成を支配する。
- 最終価格は、最初の価格から離れた水準の方向へずれる。
重要な数量部分が遠い水準で約定した場合、平均価格は最初の取引に関係なく、その水準に近づきます。
したがって、最初の価格と平均価格の乖離は、注文の部分約定と、注文板の価格水準への数量分配の直接的な結果です。
⏱️ 注文送信から照合までの時間ラグ
注文送信から照合までの時間ラグは、期待された執行条件と実際の執行条件の乖離を生みます。
時間ラグ: 取引クライアントが注文パラメータを固定してから、マッチングエンジンが実際に照合するまでの間隔です。
価格期待は注文送信時点に形成されますが、約定価格は照合時点の注文板状態によって決まります。
送信から照合までの間に、他の参加者の指値注文の約定や取消によって、流動性構造が変わることがあります。
注文フローの速度と時間優先をめぐる競争が高いほど、「見えている」厚みが照合前に変わる頻度が増えます。これは直接、 HFTと注文フローの速度が執行品質をどう変えるか チャート上で目立つ価格変動がなくても関係します。
🕒 T0 — 注文送信
注文送信段階では注文パラメータが固定されますが、約定価格はまだ決まっていません。
- 注文の方向と数量が決まる。
- 価格期待は直近取引に基づく。
- 指値注文のキューは注文板の見た目で評価される。
T0段階で利用可能な情報は、注文照合で直接使われるわけではありません。
🕒 T1 — 伝達と処理
伝達段階では注文はまだ照合に参加していませんが、注文板の状態は変化し続けます。
- 他の市場参加者の注文が約定する。
- 一部の指値注文が取り消される、または完全に約定する。
- 価格水準内の注文順が再計算される。
T1段階で起きる変化は、注文送信時に形成された期待には反映されません。
🕒 T2 — 注文照合
照合段階では、マッチングエンジンが注文板の実際の状態を使用します。
- 指値注文の残存数量が使われる。
- 注文は現在の時間順キューと照合される。
- 実際の平均約定価格が形成される。
T0からT2の間に最上位水準の利用可能数量が減っていれば、注文は次の価格水準で約定し始めます。
| 段階 | 情報源 | 使用されるデータ | 価格形成での役割 |
|---|---|---|---|
| T0 | トレーダー画面 | 直近取引と注文板 | 期待を形成する |
| T1 | マッチングエンジン | 入ってくる注文フロー | 流動性を変化させる |
| T2 | マッチングエンジン | 実際の注文板 | 約定価格を決定する |
🔍 実際の取引から時間ラグの影響を確認する方法
時間ラグの影響は、送信時点の期待と実際の執行経路を比較して判断します。
- 気配が動いていないのに最初の約定価格が期待より悪い。
- 送信時に見えていた水準から執行が始まっていない。
- 平均価格が、T0段階の注文板にはなかった水準で形成される。
したがって、時間ラグは価格変化そのものではなく、利用可能な流動性と注文順の変化を通じてスリッページを生みます。
⚠️ Adverse selectionと注文執行前の流動性消失
Adverse selectionは、指値参加者が執行後の不利な価格変動を予想して事前に注文を取り消す瞬間に、スリッページを引き起こします。
Adverse selection: 指値参加者が、自分の注文が約定することが、その後に自分のポジションへ不利な価格変動と高い確率で一致すると評価する状況です。
指値注文は、期待される約定価格がその後の価格変動リスクに対して有利である限り、注文板に残ります。
市場に一方向の成行注文フローが形成されると、指値参加者は不利な動きの確率が高まったという情報を得て、新しい注文が照合される前に行動を修正します。
🔍 ステップ1 — 一方向フローの確認
取引テープでは、大きな間隔なく同じ方向で約定する成行注文の連続が観察されます。
- 複数の取引が連続して市場の同じ側で発生する。
- 注文板の上位水準が中立的な状態より速く吸収される。
- 取引間隔が短くなる。
🧠 ステップ2 — 指値参加者によるリスク再評価
指値参加者は、注文の約定が自分のポジションに不利なさらなる価格変動と一致する確率を再計算します。
- 現在価格が不利な動きのリスクを補えなくなる。
- 在庫偏りの確率が上がる。
- スプレッドによる補償では足りなくなる。
🚫 ステップ3 — 指値注文の取消または移動
指値注文は、注文照合の前に取り消されるか、より遠い価格水準へ移されます。
- 最良価格の数量が減る。
- 見えている注文板の厚みが、利用可能な流動性と一致しなくなる。
- 次に利用できる水準が現在価格から遠くなる。
📉 ステップ4 — 実際の執行悪化
成行注文は、指値注文が取り消された後に注文板へ残っている数量と照合されます。
- 執行は期待より悪い価格から始まる。
- 出来高加重平均価格は、見えていた厚みから想定したより速くずれる。
- 注文数量を増やさなくてもスリッページが発生する。
adverse selectionによる流動性消失は執行前に起こり、価格履歴には反映されません。そのため、チャートには最終結果だけが見えます。
| 観察される状態 | 指値参加者の行動 | 実際の流動性 | 執行結果 |
|---|---|---|---|
| 一方向フローなし | 注文が維持される | 注文板と一致する | 価格は期待に近い |
| 一方向フローの形成 | 注文の部分的な取消 | 縮小する | 中程度のスリッページ |
| インパルス的な動き | 注文の大量取消 | 最小限 | 執行が急激に悪化する |
🔎 実際の取引からadverse selectionを診断する方法
Adverse selectionは、注文の期待執行と実際の執行の乖離から検出されます。
- 執行が、エントリー前に見えていた価格より悪い価格から始まる。
- 平均価格の悪化が注文サイズに対して不釣り合いに大きい。
- 執行が一方向の成行取引の連続と重なる。
- 実際の注文板の厚みが期待より低い。
したがって、adverse selectionは、一方向フローの情報に反応して指値参加者が事前に流動性を引き上げることで、スリッページを強めます。
🌪 ボラティリティはスリッページの原因ではなく増幅要因
スリッページは、成行注文の執行時にマッチングエンジンがどの価格水準で反対側の指値注文を見つけるかで決まります。ボラティリティは、指値参加者の具体的な行動、つまり最良価格付近の数量縮小と直近取引から離れた水準への注文移動を通じてスリッページを強めます。
ボラティリティそのものは取引を執行せず、価格を直接変えるものでもありません。取引価格は、成行注文と注文板内の指値注文が照合された瞬間にだけ形成されるからです。
ボラティリティとスリッページの関係は、逆選択リスクを通じて生じます。指値注文が一方向の動きの初期に約定し、その後価格が指値参加者のポジションに不利な方向へ進み続けるリスクです。
実現ボラティリティが上がり価格変化の速度が高まると、マーケットメイクのアルゴリズムは、注文が有効な短い時間内に価格が数ティック動く確率を再計算し、同時に上位水準の数量を減らして気配間の距離を広げます。
📉 低い日中ボラティリティ
価格変動幅が小さいほど、指値注文の約定後に価格が同じ方向へ動き続ける確率は低くなります。
マーケットメーカーは直近取引に近い位置へ気配を置きます。次の注文更新までに価格が数ティック動く確率が低いままだからです。
注文板の第1・第2水準の指値注文は、約定が一方向インパルスの開始ではなくレンジ内で起こることが多いため、より長く有効に残ります。
- 最良bidとaskの距離は最小価格刻みの範囲に保たれます。
- 成行注文は多くの場合、注文板の1つまたは2つの水準で埋まります。
- 平均約定価格の最初の取引からのズレは小さい。
最良水準が吸収された後でも、次の利用可能数量は近くにあるため、スリッページの大きさは価格変動速度ではなく、注文板上部の密度で決まります。
📈 高い日中ボラティリティ
変動幅と速度が増すと、指値注文の約定が一方向の動きの開始と一致する確率が高まります。
マーケットメーカーはスプレッドを広げ、最良価格の数量を減らします。価格が、指値注文の再計算と再提示より速く数ティック進む頻度が高くなるからです。
近い指値水準は取り消されるか縮小されます。安定した取引ではなく価格加速の瞬間に約定することが増えるためです。
- 注文板の最初の水準は数量が少なく、すぐに消える。
- 成行注文は複数の遠い価格で数量を集めざるを得ない。
- 注文が水準を通過するにつれて平均約定価格がずれる。
取引量が同程度でも、近い指値注文までの距離が広がり、実際のスリッページが増えます。
高ボラティリティ時のスリッページ増幅は、価格ローソク足の形や大きさではなく、注文板と取引テープの具体的な変化で確認されます。
| 測定パラメータ | 低ボラティリティ | 高ボラティリティ | 確認方法 |
|---|---|---|---|
| スプレッド幅 | 最小ティック | 数ティックへ拡大 | 注文板スナップショットで最良買値と最良売値の距離拡大を確認する |
| 最初の水準の数量 | 安定して繰り返し現れる | 縮小し不安定 | 同じ価格刻みでも注文板上部の注文サイズが減る |
| 指値注文の取消 | まれな事象 | 頻繁なcancelとreplace | イベントログで追加に対する取消の増加を確認する |
| 執行の深さ | 1〜2水準 | 複数の遠い水準 | 取引テープが悪化する価格での一連のプリントを示す |
同じ成行注文の例。 低ボラティリティ時、12,000 USDTの成行買いは、最初の水準に9,000 USDT、2番目に6,000 USDTがあれば2水準で約定し、平均約定価格は最良気配に近いままです。
高ボラティリティ時、同じ12,000 USDTの買いは、最初の水準に2,000〜2,500 USDTずつしかない場合、5水準で約定し、注文送信時に最良価格付近の数量が不足しているため平均価格がずれます。
執行時に注文板の最初の水準に十分な受動的数量が残っていれば、ボラティリティ上昇だけではスリッページは増えません。
動きが加速しても指値注文が最良価格に残るなら、成行注文は直近取引価格の近くで執行され続けます。
動きの加速時に指値注文が取り消され、数量が遠くへ移るなら、取引量が増えなくてもスリッページは拡大します。マッチングエンジンが注文板のより遠い水準を順番に埋めていくからです。
📦 注文サイズはスリッページの直接的な発生源
成行注文のサイズは、明確な執行メカニズムを通じてスリッページに影響します。マッチングエンジンは、注文数量を注文板の指値注文と順番に照合し、全数量が集まるまで価格水準を移動します。
成行注文は価格を持たず、気配を形成しません。価格と到着時間でマッチングエンジンに並べられた既存の指値注文を起動するだけです。
成行注文の数量が最良価格の指値注文の合計数量を上回ると、未約定部分は自動的に注文板の次の価格水準で約定します。
各部分約定は、それに対応する指値数量が存在した注文板水準によって決まる固有の価格を持つ個別取引として記録されます。
平均約定価格は、指定数量を集めるためにマッチングエンジンが使った価格水準の数に比例して変化します。
この場合のスリッページの大きさは、成行注文の数量と、注文板水準に分布する指値数量との関係だけで決まります。
🔬 成行注文執行の順序
- マッチングエンジンは約定価格を指定しない成行注文を受け取る。
- 執行は最も近い価格水準の指値注文から始まる。
- 数量が不足すると、残りの注文は注文板の次の水準へ移る。
- 全数量が完全に照合されるまでこのプロセスが繰り返される。
- 取引ログには、異なる価格での一連の部分約定が記録される。
注文サイズとスリッページの関係は階段状になります。注文板は各水準に有限の数量を持つ離散的な価格水準で構成されているためです。
注文数量が板の密なゾーンを超え、合計指値数量の少ない領域で執行され始める瞬間に、スリッページは急に大きくなります。
| 執行パラメータ | 小さな成行注文 | 大きな成行注文 |
|---|---|---|
| 注文板上部との数量比 | 数量が1〜2水準の合計数量より小さい | 数量が近い水準の流動性を上回る |
| 価格水準数 | 1つまたは2つの水準 | 複数の連続水準 |
| 平均約定価格 | 最初の取引価格に近い | 数量を集めるにつれてずれる |
| スリッページの発生源 | 最小価格刻み | 注文板の薄さと深さ |
執行例。 注文板の最初の水準に6,000 USDTが利用可能なら、4,000 USDTの成行買いは最良askで完全に約定し、平均価格は最初の取引価格と一致します。
同じ注文板構造で30,000 USDTの成行買いは、各水準に5,000〜7,000 USDTずつある場合、5水準で約定し、マッチングエンジンが遠い水準へ移るため平均価格が悪化します。
| 注文サイズ | 相互作用の深さ | 実際のスリッページ |
|---|---|---|
| 注文板上部の数量未満 | 密なゾーンでの執行 | 低く再現性がある |
| 上部数量に近い | 密なゾーンの境界 | 段階的な増加 |
| 上部数量を大きく超える | 薄い注文板ゾーン | 高く不安定 |
注文サイズは送信者が完全に管理できるスリッページ要因です。マッチングエンジンがどの深さの注文板と相互作用するかを決めるのは、注文サイズだからです。
注文板構造が変わらなければ、注文数量の変更は平均約定価格の再現可能な変化につながります。
注文板構造が変化している場合、大きな注文は近い指値数量の減少にも直面しますが、スリッページの根本原因は機械的であり、執行データに記録されます。
🧱 流動性の水準分布とスリッページの形
成行執行におけるスリッページは、マッチングエンジンが入ってきた注文を利用可能数量と照合する瞬間に、指値注文が注文板の価格水準にどう分布しているかで決まります。
「チャート上の価格」と執行メカニズム上の価格は分けて考える必要があります。前者はすでに成立した取引を示し、後者は照合時にマッチングエンジンが実際にどの注文板水準から数量を集めるかを示します。この差は、技術的な価格基準も存在するデリバティブで特に目立つため、 mark priceとindex priceの仕組み、そしてそれらが約定価格と等しくない理由を理解しておくと役立ちます。
🎯 平均約定価格はどう形成されるか
平均約定価格は、マッチングエンジンが実際に反対側の指値数量を見つけた注文板水準の価格から成り立ちます。
best ask上の数量が成行買いのサイズより小さい場合、マッチングエンジンはその水準の利用可能数量を約定させ、未約定の残りを次の価格水準へ移します。
- 各水準は、それぞれの取引価格と平均価格への寄与を持つ。
- 使われる水準が多いほど、平均価格は最初の取引から遠ざかる。
- 遠い水準への移行はスリッページのジャンプを生む。
ask1の数量が注文の一部にしか足りない場合、残りは必然的により高い価格で「取りに行く」ことになり、最終結果はすべてのfill取引の出来高加重平均として記録されます。
🧮 同じ数量でもスリッページが異なる理由
bid/ask側の合計流動性が同じでも、同じ約定価格は保証されません。重要なのは、最良価格付近の数量密度だからです。
主な数量が1〜2水準にある場合、注文は素早く閉じ、平均価格はbest bid/best askに近いままです。
- 最初の水準への数量集中は、執行の深さを下げる。
- 「薄い層」での分布はfillチェーン内の価格数を増やす。
- 水準間のギャップは平均価格を不釣り合いに悪化させる。
2つの注文板が同じ合計流動性を持っていても、一方では注文がask1〜ask2で「閉じ」、もう一方ではask1〜ask10まで進み、より大きなスリッページを記録します。
潜在的なスリッページは、注文板の最初の水準の数量と価格ギャップの有無で評価します。どの水準で数量の取得が終わるかを決めるのが、この2つのパラメータだからです。
| 注文板プロファイル | 数量分布 | マッチングエンジンの動作 | 執行結果 |
|---|---|---|---|
| 密な上部 | 1〜2水準に大きな数量 | 注文は深く進まずに閉じる | 低いスリッページ |
| 薄い分布 | 各水準の数量が小さい | 注文は複数水準を通過する | 段階的な価格悪化 |
| 価格ギャップ | 水準間に注文がない | 残りが遠い水準で約定する | ジャンプ型のスリッページ |
🗺 図解:水準分布がスリッページに変わる仕組み
| 観察される状態 | マッチングエンジンの動作 | 記録される効果 |
|---|---|---|
| best askで利用可能な数量が成行買いより少ない | 利用可能数量を約定し、残りを移す | 取引テープに複数価格の取引が現れる |
| 次の水準にも限られた数量しかない | 一部を約定し、再び残りを移す | 平均価格が最初の取引から離れる |
| 水準間に注文がない | 次に利用できる水準へ飛ぶ | 平均価格がギャップ分だけ急に悪化する |
| 重要な数量が遠い水準にしかない | 遠い価格で数量を取りに行く | スリッページは執行の深さとして記録される |
同じ合計流動性での執行例。 どちらの注文板でもask側の合計数量は100,000 USDTで、成行買いのサイズは20,000 USDTです。
1つ目の注文板では、ask1に14,000 USDT、ask2に10,000 USDTが置かれているため、マッチングエンジンは2水準で注文を閉じ、平均価格は最初の取引に近いままです。
2つ目の注文板では、ask1〜ask10に各2,000 USDTずつ分布しているため、マッチングエンジンは10水準を通過し、執行の深さによって平均価格が悪化します。
🧾 注文送信前に注文板で何を分析するか
分析の目的は、現在の注文板プロファイルで数量取得がどの水準で終わるかを事前に理解することです。
マッチングエンジンは成行注文を水準ごとに順番に執行するため、予測は「合計流動性」ではなく、best bid/best ask付近にどれだけの数量があるか、そしてギャップがあるかで組み立てます。
- 注文サイズに対する最初の3〜5水準の数量。
- 隣接水準間の価格ギャップの有無。
- 「密なゾーン」から薄い注文板領域へ出る瞬間。
ask1〜ask3の数量が買い注文サイズより小さい場合、執行はさらに深く進むと事前に考えます。ジャンプのリスクは、水準間に価格ギャップがある場所で現れます。
📑 執行後に取引テープで何を分析するか
取引テープと注文レポートは、どの価格が参加し、各価格にどれだけの数量が割り当てられたかという実際の執行経路を示します。
執行が1つの水準だけなら、データには同一価格のプリント列が見えます。注文が複数水準を通過した場合、取引テープには価格の「階段」が現れ、それが最終平均価格を説明します。
- fillチェーン内のユニークな約定価格の数。
- 執行の深さを示す価格の並び。
- 照合時の注文板ギャップを示す価格間のジャンプ。
fillチェーンの隣接価格間に大きなステップがある場合、それはほぼ常に、執行時点の注文板で水準間に注文がなかったことを意味します。
最終基準は常に1つです。スリッページは「ローソク足」ではなく、執行内で数量が価格に分配された結果なので、検証は注文板の水準構造とfill取引リストで行います。
⚙️ 注文タイプはスリッページ形成のメカニズム
注文タイプは、注文数量を注文板の指値注文と照合するルールを定め、マッチングエンジンが執行のために価格を悪化させるのか、許容価格がなければ執行を止めるのかを決めます。
スリッページは注文が指値注文と照合される瞬間に発生するため、注文タイプ間の重要な違いは1つのパラメータに集約されます。エンジンが次の価格水準へ移ってよいかどうかです。
各注文タイプは厳格な制約を設定します。エンジンが遠い水準で数量取得を続けるか、反対側の数量が指定価格より悪い価格でしか利用できない場合に執行を止めるかです。
これはストップ注文で特に目立ちます。トリガー発動後に注文の挙動が変わるため、 ストップロスがほぼ常に指定水準より悪く約定する理由を理解することが重要です。
🟢 成行注文(Market)
Marketは価格制限を持たず、マッチングエンジンに、注文が完全に執行されるまで現在の注文板から反対側の数量を取ることを許します。
マッチングエンジンは反対側の最良利用可能価格から執行を始め、現在水準の数量が不足するたびに次の水準へ移ります。
最初の水準の合計数量が注文サイズより小さい場合、市場がなぜ動いているかに関係なく、執行は必然的に注文板の深いところへ進みます。
その結果、「注文価格」は価格水準の連鎖になり、最終結果は部分取引の出来高加重平均価格として記録されます。
- 各部分取引の価格は、反対側の数量が見つかった水準の価格に等しい。
- 執行の深さは、エンジンが使った水準数に等しい。
- スリッページは最初の価格と平均価格との差として現れる。
🔵 指値注文(Limit)
Limitは、指定価格より悪い価格で数量を執行することをマッチングエンジンに禁じ、未約定リスクと引き換えにスリッページを排除します。
エンジンは許容価格でのみ数量を照合し、次の水準の反対側数量がリミットより悪い価格でしか利用できない場合、残りを「取りに行く」権限はありません。
リミット価格で反対側の数量がない、または不足している場合、注文は板に残り、部分約定するか、まったく約定しません。
最終リスクは約定価格ではなく、未約定残とキューでの待ち時間として固定されます。
- 約定価格は注文パラメータで制限される。
- 価格悪化が禁じられているため、スリッページは発生しない。
- 未約定数量は注文板に残り、時間優先を競う。
🟡 Stop-market注文
Stop-marketはトリガーで有効化され、有効化後は価格制限のない成行注文のように動作します。
トリガーが発動すると、マッチングエンジンは現在の注文板から反対側の数量を取る権限を得て、最良水準から始め、流動性が不足すればさらに進みます。
板の上部が薄い瞬間や指値注文の大量取消時に有効化されると、注文はすぐに複数水準を通過し、平均価格の悪化を記録します。
注文レポート上では、これは複数価格でのfill取引の連続として見え、最終価格は出来高加重平均になります。
- 約定価格は有効化時点の注文板で決まる。
- 執行の深さは、静かな相場の通常のmarketより大きいことが多い。
- スリッページは悪化する価格での一連の取引として現れる。
🟠 Stop-limit注文
Stop-limitはトリガーで有効化されますが、有効化後は価格上限を持つ指値注文になり、約定しないことがあります。
マッチングエンジンは指値注文を置き、許容価格でのみ照合します。執行のために価格を悪化させる権限はありません。
価格が戻らずリミット水準を通過した場合、注文は有効化されたものの、リミット内に反対側数量がないため約定しません。
リスクは急速な動きでの未約定として固定されます。とくにトリガーとリミットの隙間が狭く、注文板が薄い場合です。
- スリッページは指定価格で制限されるが、約定保証はない。
- インパルス時には未約定の確率が急上昇する。
- 未約定数量は注文板に残り、反対側の流動性を待つ。
注文タイプは執行リスクの現れ方を決めます。成行注文とstop-market注文は平均価格の悪化としてリスクを固定し、指値注文とstop-limit注文は未約定数量としてリスクを固定します。
| 注文タイプ | 水準移動が許可されるか | リスクの形 | データ上の見え方 |
|---|---|---|---|
| Market | はい | スリッページ | 複数価格のfillチェーンと出来高加重平均価格 |
| Limit | いいえ | 未約定 | 部分約定と注文板に残る注文残 |
| Stop-market | はい(有効化後) | スリッページ | トリガー後の多水準執行 |
| Stop-limit | いいえ(有効化後) | 未約定 | fill取引なし、または部分fillのみの有効化済み注文 |
注文タイプはスリッページという現象を「消す」のではなく、ルールを設定します。数量を執行するためにマッチングエンジンが価格悪化を許されるのか、許容価格がなければ停止しなければならないのかです。
❓ スリッページFAQ
市場執行で何が正確にスリッページと見なされるのか?
スリッページとは、成行注文(または有効化されてmarketのようになったストップ)が送信された価格と、マッチングエンジンが注文板の複数価格水準で指値注文と照合して作った実際の取引の出来高加重平均価格との差です。
この差は取引テープと注文レポートに記録されます。各部分取引には固有の価格と数量があり、最終的な平均約定価格は、すべての部分の(価格×数量)の合計を総約定数量で割って得られます。
スリッページはスプレッドとどう違うのか?
スプレッドは執行前の注文板の状態です。マッチングエンジンが注文を受け取った瞬間の最良指値買い価格(best bid)と最良指値売り価格(best ask)の差を指します。
スリッページは執行の結果です。買いのbest askまたは売りのbest bidに十分な数量がなければ、エンジンは残りを次の水準で執行し、複数価格の取引チェーンを形成します。そのため、平均約定価格は最初の利用可能気配から離れます。
大きな取引量のある銘柄でもスリッページが起こるのはなぜか?
取引所統計の大きな取引量は、一定期間にすでに成立した取引の合計です。一方、スリッページは、特定の注文が執行される瞬間に注文板へどれだけの指値数量があるかで決まります。
注文板の最初の水準に小さな指値数量しかない、または照合前に一部の指値注文が取り消される場合、成行注文は遠い水準で反対側数量を取りに行き、「ローソク足上の高い出来高」が見えていても平均約定価格はずれます。
「正確な」ストップ水準でもストップ注文がスリッページを生むのはなぜか?
ストップ注文はストップ価格で指値注文として執行されるわけではありません。トリガーに到達すると、マッチングエンジンは攻撃的な執行注文、つまり成行または成行に近い挙動の注文を作り、注文板から反対側の指値注文を取り始めます。
トリガー価格と近い利用可能な指値注文との間に水準ギャップがある、または最寄り水準の数量が不足している場合、執行の一部は注文板の深いところへ進み、平均約定価格は売りではトリガーより低く、買いでは高く記録されます。
取引所データのどこを見れば、スリッページが何から成り立ったか分かるのか?
スリッページのメカニズムは2つのデータ層で読み取ります。(1) 執行前と執行中の注文板は、どの価格水準にどれだけの指値数量が置かれていたかを示し、(2) 取引テープは、マッチングエンジンが最終取引を組み立てた部分約定の実際の価格と数量を示します。
取引所が注文レポートを提供している場合、そこには平均約定価格とfill取引の一覧が表示されます。この一覧から、注文板のどの水準で反対側数量が見つかり、なぜ最終価格が最初の気配から離れたかが分かります。
「流動性の消失」はどうスリッページに変わるのか?
スリッページは、マッチングエンジンが成行注文を最寄り水準の数量と照合するより速く、指値注文が取り消される、または減るときに発生します。
データ上ではこう見えます。注文送信前にはbest askに数量がありましたが、照合時点ではその数量がすでに取り消しまたは縮小されているため、エンジンは次に利用できる水準を取ります。この取消が複数水準で続くと平均約定価格がずれ、取引テープには悪化する価格での一連の取引が現れます。
注文内のスリッページと取引後の価格変動をどう区別するか?
スリッページは注文内部の約定価格に関係し、fillチェーンで観察されます。1つの注文の取引が注文板の価格水準に分散し、最初の利用可能気配より悪い平均価格を生みます。
執行後の価格変動は、あなたの注文が閉じた後に他の参加者の取引によって形成されます。それらの取引は独立したフローとしてテープに表示され、あなたの注文の部分約定リストには含まれません。
実口座で見えるスリッページをバックテストが通常再現しないのはなぜか?
ローソク足ベースのバックテストはOHLC価格で執行をモデル化し、注文板を使わないため、実際の価格水準での部分約定チェーンを作りません。
実際の執行では、マッチングエンジンは照合時点の注文板に反対側の指値数量がある場所でしか数量を執行できません。したがって、板の厚みが薄い場合、実際の出口価格は複数水準の一連の取引で形成され、注文板と取引テープを持たないローソク足モデルではそれを捉えられません。
どの条件でスリッページはゼロに近くなるのか?
スリッページは、成行注文の数量が注文板の最初の利用可能水準、つまり買いならbest ask、売りならbest bidで完全に吸収され、次の水準へ移らない場合にゼロに近くなります。
執行データでは、これはfillチェーン内の1つの価格水準に対応します。全数量が1つの価格で閉じられ、複数水準の「階段」も、最初の取引に対する平均価格のズレもありません。
🧾 スリッページは注文サイズと水準別流動性の照合結果
スリッページは、マッチングエンジンが注文を照合する瞬間に発生し、注文板の具体的な価格水準でどれだけの指値数量が利用可能かによって決まります。
スリッページは、成行注文または有効化されたストップ注文の数量が、注文板の最初の利用可能水準に置かれた指値数量を上回ると現れます。この場合、マッチングエンジンは現在水準で利用可能な数量を執行し、未約定の残りを次の価格水準へ移し、注文が完全に執行されるまでこのプロセスを繰り返します。
最終的な約定価格は、1つの注文に対するすべての部分取引の出来高加重平均価格として記録され、注文レポートと取引テープに表示されます。ローソク足データと集計された取引量には、執行時点の指値注文分布に関する情報がなく、価格水準の連鎖を復元できません。
ストップ注文はスリッページを強めます。トリガー価格に到達すると、価格制限のない成行注文へ変わるためです。トリガー価格と近い指値注文との間に連続した数量がない、またはそれらの水準の数量が不足している場合、マッチングエンジンは注文を注文板のより遠い価格水準で執行し、平均約定価格がトリガー水準からずれます。
スリッページは照合の直接的な結果です