オプション注文が約定しない理由と対処法
オプション注文が約定しない理由を解説します。取引所の優先順位、プロラタ配分、再価格付けされる待機数量、スプレッドのネット価格ルーティングを説明します。
オプション注文が通常約定しない理由は、個人投資家向け画面には表示されない仕組みに行き着くことが多いです。取引所の配分キューで注文がどこに並んでいるか、参加した数量がまだ残っているか、実際のマーケットがどれほど広いか、複数レッグ注文のネット価格がそもそも約定可能か、といった点です。表示される気配値は、誰かが直前に取引する意思を示した時点のスナップショットです。その価格に注文を合わせれば、注文を列に並べることはできます。しかし、列の先頭に立てるわけではありません。
オプションの気配値は、その価格で取引できるという約束ですか?
いいえ。気配値は、提示者がいつでも取り消したり、価格を変更したりできる買いと売りの両建ての提示です。付随する数量も、その時点に限って有効です。原資産が活発に気配提示されている場合、一つの契約でも、1秒間に何度も買い気配と売り気配を更新します。二つの気配値が何を示すかは、オプションのビッド・アスク・スプレッド解説で説明しています。約定を左右するのは、その気配値の一つの状態がどれだけ短時間しか存続しないかです。
以下のパネルは、2026年6月17日、米東部時間午後2時00分00秒から始まる固定した30秒間について、Appleのオプション契約でフィードが受信したすべての気配値更新を、秒ごとに集計したものです。
各数値の背後にある正確なSQL
SELECT
formatDateTime(toTimeZone(sip_timestamp, 'America/New_York'), '%H:%i:%S') AS et_time,
round(count() / 1000, 1) AS quote_updates_k,
round(count() / uniqExact(ticker), 1) AS updates_per_contract
FROM global_markets.cache_options_quotes
WHERE ticker IN
(
SELECT ticker
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-17'
)
AND sip_timestamp >= toDateTime('2026-06-17 18:00:00', 'UTC')
AND sip_timestamp < toDateTime('2026-06-17 18:00:30', 'UTC')
GROUP BY et_time
ORDER BY et_time開始から最初の1秒間に、これらの契約全体で約0.9千回の気配値更新がありました。1契約当たりでは、その1秒間におよそ1.9回、気配値が再提示された計算です。注文画面でのクリックは、この速度では処理されません。クリックが取引所に届くメッセージになった時点で、注文が入る板はすでに入れ替わっています。
最良価格にいれば、列の先頭に立てますか?
それだけでは立てません。株式取引所は主に価格・時間優先の仕組みで運営されています。同じ価格なら、先に到着した注文が先に約定します。オプション取引所では、これに二つのルールが加わります。約定待ちの注文が取り残される原因は、この二つのルールにあります。
まず、一般顧客の注文が優先されます。米国のほぼすべてのオプション取引所では、同じ価格で待機するマーケットメーカーやプロの注文よりも、一般顧客の注文が優先されます。この点は個人投資家に有利です。
顧客優先の後は、時間順ではなく比例配分です。到着した注文は、待機中の注文数量に応じて分割されます。価格を最初に提示した注文に、小さな優先配分が加わることもあります。取り分を決めるのは到着時刻ではなく数量です。
この二つを合わせると、500ロットの隣で待機する1ロットは、二つの注文のうちの一つではなく、501契約のうちの1契約として扱われます。100ロットの到着注文がその価格を掃ったとしても、小口注文に約定するのは1契約だけになり得ます。
以下のパネルは、2026年6月17日に約定したAppleのオプション取引を取引数量別に分類し、各区分が当日の約定件数と当日の売買契約数に占める割合を比較したものです。
各数値の背後にある正確なSQL
WITH
(
SELECT count()
FROM global_markets.options_trades
WHERE underlying_symbol = 'AAPL'
AND sip_timestamp >= toDateTime('2026-06-17 00:00:00', 'UTC')
AND sip_timestamp < toDateTime('2026-06-18 00:00:00', 'UTC')
) AS day_prints,
(
SELECT sum(size)
FROM global_markets.options_trades
WHERE underlying_symbol = 'AAPL'
AND sip_timestamp >= toDateTime('2026-06-17 00:00:00', 'UTC')
AND sip_timestamp < toDateTime('2026-06-18 00:00:00', 'UTC')
) AS day_contracts
SELECT
multiIf(size = 1, '1 contract',
size <= 5, '2 to 5',
size <= 20, '6 to 20',
size <= 100, '21 to 100',
'over 100') AS size_bucket,
round(100 * count() / day_prints, 2) AS share_of_trades_pct,
round(100 * sum(size) / day_contracts, 2) AS share_of_volume_pct
FROM global_markets.options_trades
WHERE underlying_symbol = 'AAPL'
AND sip_timestamp >= toDateTime('2026-06-17 00:00:00', 'UTC')
AND sip_timestamp < toDateTime('2026-06-18 00:00:00', 'UTC')
GROUP BY size_bucket
ORDER BY min(size)1契約の取引は、当日の約定件数の48.48%、売買契約数の7.83%を占めました。over 100の区分では構成が逆転し、約定件数の0.44%が出来高の16.67%を占めています。比例配分では、到着した注文のどれだけが個々の待機注文に届くかを決めるのは後者です。マーケットメーカーは常時、買いと売りの両方に気配を提示し、同時に在庫を管理しています。詳しい仕組みは、マーケットメーカーの収益構造に関する解説で説明しています。
オプション注文がミッドで約定しないのはなぜですか?
ミッドは算術的な中間値です。買い気配と売り気配を足して二で割ったものです。その価格で取引する義務を負う者はいません。常に存在する二つの価格は、買いの場合の売り気配、売りの場合の買い気配です。自然な価格とミッドの間は交渉になります。相手方のモデルが契約をミッドの自分側の価格で評価したとき、または反対売買を望む別の一般顧客注文が到着したときに、交渉が成立します。
この交渉の幅はマーケットの広さに左右されます。幅は契約価格によって大きく異なります。以下のパネルは同じ30秒間を対象に、Appleのオプション気配値を契約価格別に分類し、気配スプレッドの中央値をセント単位で示したものです。ミッドに対する割合も併記しています。
各数値の背後にある正確なSQL
SELECT
price_bucket,
round(quantileExact(0.5)(spread) * 100, 1) AS median_spread_cents,
round(quantileExact(0.5)(100 * spread / mid), 1) AS spread_pct_of_mid
FROM
(
SELECT
toFloat64(ask_price) - toFloat64(bid_price) AS spread,
(toFloat64(ask_price) + toFloat64(bid_price)) / 2 AS mid,
multiIf(mid < 0.50, 'under $0.50',
mid < 2.00, '$0.50 to $2',
mid < 5.00, '$2 to $5',
mid < 15.00, '$5 to $15',
'$15 and up') AS price_bucket,
multiIf(mid < 0.50, 1, mid < 2.00, 2, mid < 5.00, 3, mid < 15.00, 4, 5) AS bucket_order
FROM global_markets.cache_options_quotes
WHERE ticker IN
(
SELECT ticker
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date = '2026-06-17'
)
AND sip_timestamp >= toDateTime('2026-06-17 18:00:00', 'UTC')
AND sip_timestamp < toDateTime('2026-06-17 18:00:30', 'UTC')
AND bid_price > 0
AND ask_price > bid_price
)
GROUP BY price_bucket
ORDER BY min(bucket_order)under $0.50の区分の契約は、気配スプレッドの中央値が17セントで、ミッドの75%に相当しました。$15 and upの区分では170セント、ミッドの3.8%でした。セント単位では、高価格の契約の方が気配値の幅が広くなっています。割合で見ると、低価格の契約の方が大幅に広いマーケットです。そのミッドで待機する注文は、相手方にスプレッドの大部分を譲るよう求めています。流動性とボラティリティはこの幅を異なる方向に動かします。同じ原資産の二つの契約でも、動きは大きく異なり得ます。
成行注文と指値注文の違いは、価格の問題を別の問題に置き換えます。成行注文は、その時点で板にある注文と取引します。流動性の低いオプション銘柄では、その価格が画面に表示された直前の気配値から数ティック離れていることもあります。
両方のレッグが約定可能に見えるのに、スプレッドが約定しないのはなぜですか?
複数レッグ注文は、二つの単一レッグの板に置かれません。コンプレックス注文板に回送され、ネット価格で一つのパッケージとしてマッチングされます。取引所は、別のコンプレックス注文と、または単一レッグの板を合算した価格が注文のネット価格を上回る場合に限り、その板と約定させます。パッケージ全体の価格が成立するまでは、どちらとも約定しません。
二つのレッグから成るコール・スプレッドを仮定します。買いレッグは買い気配1.20ドル、売り気配1.35ドル、売りレッグは買い気配0.60ドル、売り気配0.72ドルです。自然な価格でパッケージを買う場合、1.35ドルから0.60ドルを差し引いた0.75ドルのデビットになります。自然な価格で売る場合は、1.20ドルから0.72ドルを差し引いた0.48ドルのクレジットです。パッケージのネット・マーケットは買い気配0.48ドル、売り気配0.75ドルで、ミッドは0.615ドルです。レッグを別々に見ても、0.62ドルが約定可能かどうかは分かりません。コンプレックス板には、独自の買いと売りのマーケットと、独自の待機注文があります。
ここから二つの点が分かります。単一レッグの画面で一方のレッグが注文価格で取引されても、スプレッドは未約定のままです。そもそも注文はその板で待機していません。レッグの価格で設定されたスプレッド注文は、存在しない板を相手に価格を設定していることになります。
出来高ゼロの行使価格で注文が約定しないのはなぜですか?
故障ではありません。上場されている行使価格の多くは、ほとんどの日に取引されません。チェーンには取引所が開設したすべての行使価格が表示されますが、その大半は気配値があるだけで取引されず、数週間その状態が続くこともあります。出来高は当日に売買された契約数です。建玉は未決済のポジション数を示します。この二つの違いは、オプションの出来高と建玉の違いで説明しています。
以下のパネルは、外側の行使価格で流動性がどれほど低下するかを測定したものです。2026年5月と6月について、満期まで20~45日のApple契約をすべて対象にしました。当日の原資産価格から行使価格がどれだけ離れていたかで分類し、日次出来高の中央値と、10契約未満の取引にとどまった契約日数の割合を示しています。
各数値の背後にある正確なSQL
SELECT
moneyness_bucket,
round(quantileExact(0.5)(toFloat64(volume)), 0) AS median_daily_volume,
round(100 * countIf(volume < 10) / count(), 1) AS share_under_10_lots_pct
FROM
(
SELECT
abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) AS gap,
multiIf(gap < 0.02, '0% to 2% from spot',
gap < 0.05, '2% to 5% from spot',
gap < 0.10, '5% to 10% from spot',
gap < 0.20, '10% to 20% from spot',
'more than 20% from spot') AS moneyness_bucket,
multiIf(gap < 0.02, 1, gap < 0.05, 2, gap < 0.10, 3, gap < 0.20, 4, 5) AS bucket_order,
volume
FROM global_markets.options_greeks
WHERE underlying_symbol = 'AAPL'
AND date >= '2026-05-01'
AND date < '2026-07-01'
AND days_to_expiry BETWEEN 20 AND 45
AND underlying_close > 0
)
GROUP BY moneyness_bucket
ORDER BY min(bucket_order)0% to 2% from spotの契約は、日次出来高の中央値が354契約で、2%の契約日が10契約未満でした。more than 20% from spotの契約では、日次出来高の中央値が1日当たり6契約で、その区分の55.4%の契約日が10契約未満でした。こうした行使価格で注文を待機させると、到着していないフローを待つことになります。常時存在する相手方は、最初にその行使価格へ気配を提示したマーケットメーカーだけです。
注文画面に関して、この仕組みが意味すること
- スプレッドはネット価格で設定します。コンプレックス板はパッケージをマッチングするため、単一レッグの価格だけではその板における待機注文になりません。
- ミッドは目安として機能します。広いマーケットで常に利用できる二つの価格は、買い注文なら売り気配、売り注文なら買い気配という自然な価格です。
- 比例配分での取り分は数量で決まります。はるかに大きな注文の隣で待機する1ロットは、到着した注文から比例した一部しか受け取りません。
- 取引の少ない行使価格では、まず気配提示の問題があります。マッチングする注文が到着していないためです。
よくある質問
買い気配に合わせたオプションの指値注文が約定しないのはなぜですか?
買い気配に合わせると、その価格のキューに注文が入ります。オプション取引所は、単純な到着順ではなく、顧客区分と数量に基づいて約定を配分します。はるかに大きな注文の隣で待機する小口注文は、取引が成立した場合でも比例した一部しか受け取れず、少量の取引では端数処理によって何も約定しないことがあります。
オプション取引所は到着順に注文を約定させますか?
基本的には、そうではありません。同じ価格では、一般顧客の注文がマーケットメーカーやプロの注文に優先します。残りの数量は通常、各待機注文の数量に応じて比例配分されます。価格を最初に提示した注文に優先配分を加える取引所もあります。
オプション注文で自然な価格を支払うとはどういう意味ですか?
自然な価格とは、マーケットの自分側にすでに表示されている価格です。買う場合は売り気配、売る場合は買い気配を指します。自然な価格での注文は現在の気配値と約定可能ですが、ミッドでの注文は相手方が価格を改善するまで待ちます。
出来高ゼロのオプションがまったく約定しないのは普通ですか?
はい。上場されている行使価格の多くは、ほとんどの日に取引されません。そのため、そこで待機する注文は、到着していないフローをめぐって競うことになります。表示されている気配値は通常、マーケットメーカーの義務に基づくものです。約定するかどうかは、その時点でマーケットメーカーがその価格で取引したいかにかかっています。
パネルの作成方法
二つの気配値パネルは、2026年6月17日の米東部時間午後2時00分から午後2時00分30秒までの固定した30秒間を読み取っています。対象は、同日に日次グリークスの記録があるAppleのオプション契約です。期間を固定することで、記事が再生成されるたびに数値が変わらないようにしています。行使価格の集計は2026年5月と6月を対象とし、出来高がまったく記録されなかった契約も意図的に含めています。上場された行使価格が取引されない頻度こそ、このパネルが測定する対象です。保存されたタイムスタンプはUTCで、各クエリ内で米東部時間に変換しています。
上記の各パネルの下には、使用したSQLがそのまま記載されています。フォローしている契約について同じ測定を行うには、Strasmore terminalで平易な英語の質問を入力してください。