Strasmore Research
Deep Dives · Matt ConnorBy Matt Connor ·

注文変更でキューの優先順位を失うのか

指値注文の価格変更や数量追加で失う優先順位を解説します。約定確率への影響と、ボットが再価格付けすべき損益分岐距離も確認できます。

注文変更とキュー内の優先順位は、相反する関係にあります。米国株の注文板や大半の先物取引所では、待機中の指値注文の価格を変更すると、変更後の価格帯でキューの最後尾に回されます。表示数量を増やした場合も同様です。数量を減らすだけなら、優先順位は維持されます。注文を取り消して新たに発注すれば、利用するプラットフォーム上のボタン名にかかわらず、新しいタイムスタンプを持つ新規注文として扱われます。

注文を変更するとキューの優先順位を失うのか

個人投資家が利用するほぼすべての取引市場では、四つのルールで説明できる。

  • 価格を変更すると優先順位を失う。注文は変更後の価格に新規注文として到着し、すでにその価格で待機している注文の後ろに並ぶ。
  • 表示数量を増やすと優先順位を失う。市場によっては追加数量だけを再びキューに入れ、元の数量をそのまま残す。一方、注文全体の時刻を更新する市場もある。いずれの場合も、追加した株数に以前の順位が引き継がれることはない。
  • 表示数量を減らしても優先順位は維持される。市場はこれを一部取消として扱うため、数量を減らしてもキュー内の順位を失わない。
  • 取消して再送すると、毎回優先順位を失う。しかも、その間は有効な注文が市場に存在しない。

この非対称性には理由がある。時間優先は、他の参加者が待つ中で、ある価格に注文を置き続けたことへの対価である。数量の追加や価格の変更は新たなリスクを引き受ける行為であり、新たなリスクは列の最後から始まる。数量を減らす場合はリスクを取り下げるだけなので、順位を失う必要はない。プロラタ方式の板では計算が変わる。配分は注文を出した時刻ではなく、表示数量に基づくためだ。価格・時間優先とプロラタ方式では、両方の仕組みを説明している。

注文を変更するか、いったん取り消して出し直すか

取引所では、これらは異なる指示です。プラットフォームによって「変更」や「差し替え」と呼ばれる訂正は、既存注文と変更内容を指定する一つのメッセージです。処理は原子的に行われます。変更が反映されるか、注文がそのまま残るかのいずれかです。これに対し、取り消して新規注文を出す場合は、間に時間差のある二つのイベントになります。その間、注文の優先順位はまったくありません。時間差の中で市場価格が注文価格を通過すれば、その値動きには参加できていません。

一部の取引所では、内部処理として注文の訂正を取り消しと新規注文に分けています。また、取引所が真の注文変更に対応していても、一部のブローカーは送信時に訂正を取り消し・差し替えへ変換します。結果は同じです。時間優先順位を失います。訂正が拒否されても、元の注文は板に残ります。一方、取り消しが先に成功し、その後の新規注文が拒否されると、執行待ちの注文は何も残りません。優先順位を維持できる訂正であっても、通常は新しい注文識別子が返されます。そのため、自社の記録では新規注文として表示されますが、板では従来の注文として扱われています。

注文変更のコスト

板の順位の価値は、約定できる売買高によって決まります。自分より前にある株数が先に約定しなければ、自分の注文は約定しません。約定ペースは取引時間中に大きく変動します。

クエリ時間帯別のテープによるキュー消化速度(AAPL、2026年6月)
各数値の背後にある正確なSQL
SELECT
    formatDateTime(toStartOfFifteenMinutes(et), '%H:%i')                    AS et_time,
    round(toFloat64(avg(volume)) / 1000, 1)                                 AS avg_k_shares_per_min,
    round(quantileDeterministic(0.5)(toFloat64(volume),
                                     toUInt64(toUnixTimestamp(et))) / 1000, 1) AS median_k_shares_per_min
FROM
(
    SELECT
        toTimeZone(window_start, 'America/New_York') AS et,
        volume
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'AAPL'
      AND window_start >= '2026-06-01'
      AND window_start <  '2026-07-01'
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
)
GROUP BY et_time
ORDER BY et_time
Run this yourself

2026年6月を通じて、09:30 ETから始まる15分間では、AAPLの1分当たりの売買高中央値は182.8千株でした。これに対し、12:00から始まる時間帯では62千株でした。同じ注文で、同じ価格です。それでも、注文の前にある待ち行列は、寄り付きと日中では性質が異なります。

修正前後の約定確率

修正注文は、約定確率を織り込んだ価格で提示される。下のパネルは、通常取引時間の一カ月分について、各1分間の約定で少なくとも所定の株数が取引された頻度を集計したものだ。自分の前にある同じ規模の注文列が1分以内に消化される確率として読むとよい。

クエリ少なくともN株を含む1分間ウィンドウの割合(2026年6月)
各数値の背後にある正確なSQL
WITH minute_volume AS
(
    SELECT
        ticker,
        toStartOfMinute(toTimeZone(window_start, 'America/New_York')) AS et_minute,
        sum(volume)                                                   AS shares
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker IN ('AAPL', 'KO')
      AND window_start >= '2026-06-01'
      AND window_start <  '2026-07-01'
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
           + toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
    GROUP BY ticker, et_minute
)
SELECT
    q.ahead                                                                                           AS shares_ahead,
    round(100 * countIf(mv.ticker = 'AAPL' AND mv.shares >= q.ahead) / countIf(mv.ticker = 'AAPL'), 1) AS aapl_pct_of_minutes,
    round(100 * countIf(mv.ticker = 'KO'   AND mv.shares >= q.ahead) / countIf(mv.ticker = 'KO'),   1) AS ko_pct_of_minutes
FROM minute_volume AS mv
CROSS JOIN
(
    SELECT arrayJoin([500, 1000, 2000, 4000, 8000, 16000, 32000, 64000, 128000]) AS ahead
) AS q
GROUP BY q.ahead
ORDER BY q.ahead
Run this yourself

前に500株ある場合、AAPLでは100%の1分間で十分な出来高があった。KOでは100%だった。8000株ではAAPLの数値は100%となり、128000株まで増えると22.2%に低下する。曲線は一方向にしか傾かない。優先順位を失うことは、曲線上を右へ移動することにほかならない。

この線は楽観的な上限として扱うべきだ。1分間の出来高は複数の価格帯と売買両サイドに分散し、その一部しか自分の価格水準に到達しないため、実際の注文列はこれよりもゆっくり消化される。約定が一件もない1分間は集計対象に含まれない。自分の注文列の位置を推定することで、板の厚みと取消率を加味して見積もりを精緻化できる。

損益分岐点となる再値付け幅

次に、修正注文に価格を付けます。前に8,000株の注文が並び、次の1分以内に約定する確率が60%ある買い注文を想定します。買い気配を1セント引き上げると、前に注文がない新たな最良気配になります。そこでの確率を99%とします。この改善には、約定した全株について1株当たり1セントのコストがかかります。

約定1株当たりの価値をVとします。これは自身の優位性にリベートを加えたものです。再値付け幅をtとします。改善後の約定確率に、価格改善で減少した受取額を掛けた値が、従来の約定確率に全額の受取額を掛けた値と一致するとき、修正注文は損益分岐点に達します。整理すると、次の一行になります。

t = V x (1 - p0 / p1)

約定1株当たりの価値が3セントで、確率が60%から99%に上がる場合、損益分岐点となる幅は約1.2セントです。1セントの改善なら元が取れます。2セントの追随では元が取れません。

同じ式を、優位性がマーケットメイカー・リベートだけのボットにも当てはめます。2026年半ば時点の公表手数料表では、米国の大手株式取引所における最上位のマーケットメイカー・リベートは1株当たり約0.20~0.30セントです。ここでは4分の1セントとします。式から得られる損益分岐点は約0.1セントですが、米国の取引所が受け付ける最小の価格変化は1セントです。これは約10倍も大きすぎます。リベートを守るために再値付けするボットは、4分の1セントを追うために1ティックを支払うことになります。

リベートは約定に対して支払われるものであり、注文を出しただけでは受け取れません。優れたキュー順位を確保していても、約定しなければ収益はゼロです。受け取れないリベートは節約とはいえません。マーケットメイカー・テイカー手数料とリベートでは、こうした手数料体系による支払いの仕組みを説明しています。

改善の余地がない場合

ビッドとオファーの間に値幅がある場合に限り、価格を改善できます。大型銘柄では、ほとんどの場合、その余地はありません。

クエリ提示スプレッドが1セントになる頻度(2026年6月10日のセッション)
各数値の背後にある正確なSQL
SELECT
    ticker                                                                                  AS symbol,
    round(avg(toFloat64(ask_price) - toFloat64(bid_price)) * 100, 2)                        AS avg_spread_cents,
    round(100 * countIf(toFloat64(ask_price) - toFloat64(bid_price) <= 0.0105) / count(), 1) AS one_tick_wide_pct
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('AAPL', 'KO', 'SPY', 'NVDA', 'COST', 'NFLX')
  AND sip_timestamp >= '2026-06-10 13:30:00'
  AND sip_timestamp <  '2026-06-10 20:00:00'
  AND bid_price > 0
  AND ask_price > bid_price
  AND toFloat64(ask_price) - toFloat64(bid_price) < 5
GROUP BY ticker
ORDER BY one_tick_wide_pct DESC
Run this yourself

NFLXは2026年6月10日、クオート更新の81.4%で一セントのスプレッドを提示し、平均スプレッドは1.3セントでした。パネルの反対側では、COSTの平均スプレッドが77.53セントでした。一ティック市場では、ビッドとオファーの間に移動できる価格がありません。注文の列の前に出る唯一の方法は、スプレッドをまたぐことです。そうするとテイカーになり、リベートを受け取る代わりにテイカー手数料を支払います。さらに、スプレッドの一部ではなく、スプレッド全体を手放すことになります。

リプライシングボットが選択を迫られる頻度

マーケット追随型ボットは、この取引を一度だけ行うわけではない。板の最良気配が注文から離れるたびに、同じ取引を実行する。

クエリ15分間ごとの異なる最良買い気配値(AAPLおよびKO、2026年6月10日)
各数値の背後にある正確なSQL
SELECT
    formatDateTime(toStartOfFifteenMinutes(et), '%H:%i') AS et_time,
    uniqExactIf(bid_price, ticker = 'AAPL')              AS aapl_distinct_bids,
    uniqExactIf(bid_price, ticker = 'KO')                AS ko_distinct_bids
FROM
(
    SELECT
        toTimeZone(sip_timestamp, 'America/New_York') AS et,
        ticker,
        bid_price
    FROM global_markets.cache_stocks_quotes
    WHERE ticker IN ('AAPL', 'KO')
      AND sip_timestamp >= '2026-06-10 13:30:00'
      AND sip_timestamp <  '2026-06-10 20:00:00'
      AND bid_price > 0
)
GROUP BY et_time
ORDER BY et_time
Run this yourself

10 June 2026の09:30 ETから始まる15分間に、AAPLの最良買い気配は359個の異なる価格を付けた。15:45 ETから始まる15分間には、152個の価格を付けた。KOの最良買い気配は、最初の時間帯に78個の価格を付けた。こうした値動きの一つ一つが、リプライシングボットが送信する可能性のある注文変更に当たる。注文を変更するたびに、待機時間はリセットされる。グリッド取引ボットは、固定価格に注文を段階的に置くことで、別の選択をする。価格は古くなるが、優先順位は維持される。

アイスバーグ注文と自己取引防止

2つの二次的な影響が、トレーダーの想定外の結果を招く。

リザーブ注文は通常、アイスバーグ注文と呼ばれる。注文の一部だけを表示し、残りを非表示にする。多くの板では、表示部分を更新するたびに、その価格帯の待ち行列の最後尾に並び直す。そのため、大口のアイスバーグ注文は、小口注文が連続する形になる。表示数量を全面表示した注文に何度も譲ることになる。表示数量を変更すると、同じサイクルが再び始まる。

もう一つは自己取引防止である。取引所などの売買プラットフォームは、同一参加者の注文同士が約定することを認めない。通常は2つの注文の一方を取り消す。プラットフォームによっては、両方を取り消すこともある。狭い板でボットが価格を変更すると、反対側に出していた自分の気配値が失効することがある。その結果、1回の変更で、待ち行列の順位を2つ失うことになる。変更注文は通常、当初の有効期間を引き継ぐ。一方、取消しと再発注では有効期間がリセットされる。この点は注文の有効期間で説明する。

よくある質問

指値注文の価格を変更すると、キュー内の順位を失いますか?

はい。米国株式の板や、ほとんどの先物取引所では、価格を変更した注文は新規注文として扱われます。変更後の価格ですでに待機しているすべての株数の後ろに並びます。同じ価格で注文数量を減らす場合だけは、優先順位が維持されます。

注文のキャンセル・アンド・リプレースは、注文の変更と同じですか?

取引所によって扱いが異なります。注文変更は単一のメッセージで処理され、数量を減らすだけなら優先順位を維持できる場合があります。キャンセル・アンド・リプレースは、注文が板に存在しない空白を挟む二つのイベントです。差し替え注文は必ずキューの最後に加わります。

注文数量を減らすと、キュー内の優先順位は維持されますか?

はい。同じ価格であれば維持されます。取引所は数量の減少を一部キャンセルとして扱い、残った株数には元のタイムスタンプが引き継がれます。数量を増やす場合は同じ扱いになりません。

キュー内の順位には、実際にどれだけの価値がありますか?

その順位によって得られる約定確率に、約定が自分にもたらす価値を掛けたものです。双方とも測定できます。上のパネルは一分当たりにどれだけの売買が成立しているかを示しており、自分の優位性とリベートによって約定の価値が決まります。


このページの各パネルには、データ生成に使ったSQLが記載されています。ティッカーまたは期間を変更すれば、Strasmore terminal上の任意の銘柄について同じ質問を行えます。

#order book#queue position#execution#maker taker#trading bots