執行トラブルを評価するときに確認すべきこと
「執行トラブル」とは何を指す?
執行トラブルとは、注文を出した後に実際に起きたことが、あなたが注文の取り扱いについて期待していた内容と一致しないことです。実務的には、期待した価格と異なる価格での約定、約定の遅れ、部分約定、または拒否された/約定されなかった注文として現れることがあります。
執行トラブルを客観的に評価するには、次の3つの層を分けて考えます。
- あなたの注文意図(あなたが送信した正確なパラメータ)
- 執行の経路(市場と注文処理の仕組みが、その意図を約定へどう変換するか)
- あなたの結果記録(受け取ったもの:約定、タイムスタンプ、コスト)
この切り分けにより、通常の市場変動をプロバイダーやインフラの問題と混同するのを防げます。
メカニズムを確認する方法(記録で検証すべきこと)
意図した挙動と観測された挙動を比較するチェックリストを使います。
- 注文の詳細と前提
- 選択した注文タイプ(例:成行か指値か)と、すべてのパラメータを確認します。
- 計算する例について、前提を明確にします(たとえば「期待価格」とは、送信時点であなたが最後に提示された価格を意味する、など)。
- タイムスタンプと順序
- 注文の送信時刻と、確認応答(アクノレッジ)および約定を受け取った時刻を確認します。
- 送信から約定イベントまでの間に、異常な遅れがないか見ます。
- 正確な約定と価格情報
- (ある場合)要求した執行条件と、実際の約定価格を比較します。
- 同じイベントの時間帯で、価格差が一貫して見られるかどうかを記録します。
- 数量の一致と部分約定
- 要求した全サイズが約定されたか確認します。
- 部分約定が起きた場合、異なる価格で約定されたか、また残数量が後で約定されたのか、あるいは約定されなかったのかを確認します。
- コストとネットの影響
- 結果記録に含まれる関連コストをすべて特定します(コミッション、スプレッド/取引コスト、表示されているその他の手数料など)。
- ネットの結果を評価します:小さな価格差でも、コストを含めると拡大され得ます。
- 失敗・拒否の目印
- 明示的な拒否/停止/「未実行」メッセージがあれば記録します。
- 問題が注文レベルの失敗(約定なし)なのか、執行レベルの不一致(約定はあるが期待どおりではない)なのかを判断します。
証拠と例:何が起きたかを証明する(推測せずに)
ある出来事を評価する有用な方法は、自分のログから検証できるデータだけを使って「期待 vs 実際」の比較を計算することです。
例の枠組み(前提は明示する必要があります):
- 期待価格=注文を送信した瞬間に表示されていた最後の気配値。
- 価格差=実際の約定価格 − 期待価格(正しい符号の取り方を使う)。
- 約定が複数ある場合(部分約定)、約定ごとの差を計算し、さらに約定数量を用いた加重ベースでも差を計算します。
そしてパターンを分類します:
- 遅れのない価格差は、参照価格と約定の間での市場の動きと一致しやすいです。
- 遅れがあり、最終的に約定した場合は、あなたが使った参照よりも市場の動きが速かったことを示唆する場合があります。
- 拒否や約定の欠落は、注文処理の段階での失敗パターンを示します。
このアプローチは、観察と記録ベースの比較に焦点を当て、責任の所在を決めつけることはしません。
制限、リスク、そして注意すべき主な失敗パターン
執行結果は、市場環境の変化、流動性、そして注文処理の構造の影響を受けます。そのため、よく文書化された「問題」であっても、単一の原因があるとは限りません。
探すべき重大な失敗パターンには次が含まれます:
- スリッページ:参照価格と異なる価格で約定が発生する。
- 部分約定:要求した量より少ない量が、場合によっては複数の約定イベントにまたがって受け取られる。
- 注文拒否または未執行:意図したとおりに執行へ入らない。
- 非同期イベント:確認応答、編集、取消、または約定が、想定外の順序で到着する。
検証上の制限:たとえば「Xが起きたときは、価格が同様に動いた」という過去の関係は、将来の結果を証明しません。コストや市場の挙動は変わり得ます。
検証と次に尋ねるべき質問
結論を独立して検証するには、各主張が、記録上で示せる何かに結びついていることを確認してください:
- あなたが送信した 正確な注文パラメータ はありますか?
- 送信時刻と約定時刻を比較できる タイムスタンプ はありますか?
- 実際に執行された全サイズについて、完全な約定とコストの詳細 はありますか?
- 執行に失敗した場合、明示的な拒否/エラーメッセージ はありますか?
もし不一致が本物なら、次の質問は通常「誰が原因か?」ではなく、「どの層が私の意図と矛盾しているのか?」になります。つまり、あなたの入力、タイミング、約定/価格の詳細、または明示的な失敗メッセージの有無のどれが一致していないのか、ということです。