FOK注文とは?フィル・オア・キルの仕組みと実践ガイド
**FOK(フィル・オア・キル、Fill or Kill)**とは、指定した数量の全量が即座に充填できる場合のみ執行される注文タイプだ。1ロットでも不足していれば、注文全体が即時キャンセルされる。「全部か無か」という妥協のない執行ルールが最大の特徴だ。
一般の個人投資家が日常取引でFOKを使う機会は少ない。しかし、機関投資家・大口トレーダー・アルゴリズム取引においては、精密な執行管理のために欠かせない注文タイプとなっている。
FOKの仕組みを理解することは、流動性と注文執行の本質を深く学ぶことに直結する。本記事では、定義から実践的な使い方、注意点まで体系的に解説する。
フィル・オア・キルの仕組み
基本的なプロセス
- トレーダーがFOK注文を発注する(例:EUR/USDを10ロット買う)
- 注文がブローカーに送信される(数ミリ秒)
- ブローカーが流動性を確認する:10ロット全体が即座に利用可能か?
シナリオA:完全執行が可能な場合
- 10ロット全体が即座に執行される
- ポジションが開かれる
シナリオB:完全執行が不可能な場合
- 注文が即座にキャンセルされる
- トレーダーに通知が届く(何も執行されない)
FOKの3つの絶対ルール
- 完全執行のみ:0.1ロットの部分充填も受け入れない
- 即座の決定:待機なし、延長なし
- 全部か無か:妥協ゼロ
具体的な例
- 注文:EUR/USD 5ロット買い(FOK)
- 市場で利用可能:4.8ロット
- 結果:注文全体がキャンセル、何も執行されない
同じ状況でIOC(後述)なら:4.8ロット執行、残り0.2ロットキャンセル。
FOKと他の注文タイプの比較
| 特性 | FOK | IOC(即時か取消) | 成行注文 | 指値注文 |
|---|---|---|---|---|
| 部分充填 | 不可 | 可 | 可 | 可 |
| 執行方式 | 全量即時または全キャンセル | 可能量即時、残りキャンセル | 保証(スリッページあり) | 指値価格以上では不成立 |
| 有効期間 | 即時のみ | 即時のみ | 即時 | 設定期間中 |
| 主な用途 | 大量注文の確実な執行 | 部分充填OKの大量注文 | 通常取引 | 計画的な取引 |
FOK vs IOC の違いを詳しく
FOK(Fill or Kill):
- 注文:10ロット
- 利用可能:8ロット
- 結果:全キャンセル(0ロット執行)
IOC(Immediate or Cancel):
- 注文:10ロット
- 利用可能:8ロット
- 結果:8ロット執行、残り2ロットキャンセル
FOKは「10ロットでなければ意味がない」という場合に使用し、IOCは「可能な分だけでも執行してほしい」場合に使用する。
メリット・デメリット
FOK注文のメリット
部分充填リスクの排除:望む量の全量を得るか、何も得ないかが明確だ。予期しない部分ポジションが発生しない。
完全な戦略的確実性:特定のポジションサイズが戦略の前提となっている場合(ヘッジなど)、部分充填では戦略が成立しない。FOKはそのリスクを排除する。
流動性のテスト:FOK注文を出し、執行されるかどうかで市場の深さ(流動性)を測定できる。
スリッページの回避:指定した条件で全量が執行されるか、まったく執行されないため、予想外のスリッページが発生しない。
FOK注文のデメリット
執行率の低さ:特に流動性の低い市場・通貨ペアでは、注文がキャンセルされやすい。
機会損失のリスク:流動性不足でキャンセルされた場合、その後に価格が有利な方向に動いても参加できない。
ボラティリティ時の使いにくさ:価格が激しく動く時は流動性が断片化し、FOKでの完全執行が困難になる。
複雑さ:すべてのブローカーやプラットフォームがFOKをサポートしているわけではない。
誰に向いているか
FOK注文が有効なトレーダー・場面:
-
機関投資家・大口トレーダー:大きなポジションを一度に正確に構築する必要がある場面。例えば、100万ドル相当のEUR/USDポジションを特定価格で完全に開く必要がある場合。
-
アルゴリズム取引(EA)の開発者:取引システムが特定のロットサイズを前提とした計算を行う場合、FOKで完全執行を保証する。
-
ヘッジ目的の取引:既存ポジションを正確に相殺するためのヘッジポジションに、正確なサイズが必要な場合。
-
流動性の測定:特定の市場にどれだけの流動性があるかをテストする目的。
FOK注文が向かない場面:
- 0.01〜0.5ロット程度の通常サイズのトレード(成行注文で十分)
- 流動性の低い時間帯・エキゾチックペア(キャンセル率が高い)
- 部分充填でも問題ない取引(IOCの方が適切)
FOKを使う実践的なシナリオ
シナリオ1:大口注文の確実な執行
ファンドマネージャーが特定の価格でUSD/JPY 50ロットのポジションを構築する必要がある。
FOKを使えば、50ロット全体が指定価格で執行されるか、まったく執行されないかのどちらかになる。部分的に30ロットだけ執行されて価格が動いてしまうリスクがない。
シナリオ2:精密なヘッジングの構築
既存のEUR/USD 10ロットのロングポジションに対して、GBP/USD 10ロットのショートで相関ヘッジを組む場合。正確な10ロットでなければヘッジが機能しないため、FOKが適切だ。
シナリオ3:流動性スキャン
新しい市場や時間帯でFOK注文を出し、執行されるかどうかで流動性を測定する。執行されれば流動性十分、キャンセルされれば流動性不足のサイン。
FOKを避けるべき場面
- アジア早朝(低流動性時間帯):EUR/USDやGBP/USDでも流動性が薄い。キャンセル率が高い。
- 重要経済指標発表前後30分:流動性が断片化し、大口注文の完全執行が困難になる。
- エキゾチック通貨ペア:USD/TRY、USD/ZARなどは常に流動性が低い。FOKはほぼ機能しない。
- 小さなロットサイズ(0.01〜0.5ロット):成行注文で十分。FOKの複雑さは不要。
最終的な評価
FOK注文は大口取引の精密な執行制御に特化した注文タイプだ。一般的な個人トレーダーが日常の取引で使う機会は少ないが、その仕組みを理解することで注文執行の本質と流動性の概念をより深く理解できる。
自動売買システムや大口資金の運用においては、FOKが戦略の確実性を保証する重要なツールとなる。一方、通常の個人取引では成行注文や指値注文で十分なケースがほとんどだ。
免責事項:本記事は教育目的で提供されており、投資助言ではありません。金融商品の取引にはリスクが伴います。ご自身の判断と責任において取引を行ってください。過去のパフォーマンスは将来の結果を保証するものではありません。
よくある質問(FAQ)
FOKとGTC(Good Till Cancelled)注文の違いは何ですか?
GTCは「取消指示があるまで有効」な指値注文であり、即時執行を要求しない。FOKは「今すぐ全量執行でなければ即時キャンセル」という真逆の性質を持つ。GTCは数日〜数週間有効であり、FOKは注文発出後の一瞬で完結する。
すべてのFXブローカーがFOK注文をサポートしていますか?
すべてのブローカーがFOKをサポートしているわけではない。特にリテール向けのブローカーでは提供されていないケースもある。FOK注文が必要な場合は、ブローカーのサポートに事前に確認するか、MT4/MT5などのプラットフォームのオーダーパネルで注文タイプの選択肢を確認する。
FOK注文でキャンセルが多い場合、どうすればいいですか?
ロットサイズを小さくする、より流動性の高い時間帯(ロンドン・ニューヨークセッションのオーバーラップ時間)に変更する、または代わりにIOC注文を使用することを検討する。EUR/USD、USD/JPY、GBP/USDなど主要ペアで流動性の高い時間帯を選ぶことでFOKの執行成功率が上がる。
アルゴリズム取引でFOKはどう使われますか?
高頻度取引(HFT)では、特定の価格レベルに大量の流動性がある瞬間を捉え、FOKで瞬時に大量執行を行うケースがある。また、アービトラージ(裁定取引)では複数の市場で同時に完全執行する必要があるためFOKが必須だ。個人向けEAでは、スラッページを避けるために特定の条件が整った時のみFOKでエントリーするロジックが組まれることがある。
FOKが「Kill(キャンセル)」された後、同じ注文を再発注すべきですか?
状況次第だ。キャンセルの理由が一時的な流動性不足なら、数秒〜数分後に再発注することで成功する場合がある。しかし、価格が既に大きく動いていれば、再発注は異なるリスクプロファイルになる。自動的に再発注するロジックを組む場合は、無限ループにならないよう最大再試行回数を設定することが重要だ。