Strasmore Research
学習 Matt Connor著者: Matt Connor ・更新: 2026-07-24

オープニング・オークションとは

米国株の始値を決める仕組みを解説します。午前九時三十分のオークションがどのように公式な始値を決定するかを説明します。

オープニング・オークションは、米国東部時間午前9時30分に行われるシングル・クロス取引であり、各銘柄の公式始値を決定します。ベルが鳴る前に、上場取引所は始値指定されたすべての注文を集計します。そして、最も多くの株数が約定する価格を算出し、全注文を一括して執行します。これは、一日の取引を締めくくる クロージング・オークション の朝の版といえます。以下の数値はすべてコンソリデーテッド・テープ(米国の全株式取引の公的記録)に基づいています。各パネルには正確なSQLが添付されています。

オープニング・オークションとは?平易な定義

取引所は、9:30に開始して単に注文を一つずつマッチングさせるわけではありません。夜間およびプレマーケットを通じて、上場取引所は開始に向けて指定された注文と、板に残っている適格な指値注文を蓄積します。そしてベルが鳴ると、プール全体を単一の価格で一括して約定させます。この約定には、独自の売買条件ラベル(コード 17、"Market Center Opening Trade" — 最終パネルの受領分)が付与されます。この価格が公式な始値となります。つまり、その日の価格記録における「始値」であり、「ギャップアップ」や「ギャップダウン」の基準となる価格です。オークションと連続取引は同じテープ(取引記録)の一部であり、ベルが鳴る際に変化するのはその仕組みです。

実取引データに基づく始値オークション:SPY, AAPL, NVDA

以下のパネルは、2026年7月2日(検証済みのフルセッション、詳細は次パネルを参照)のデータを基に、SPY、AAPL、NVDAの始値クロス(opening cross)をその日の他の取引と比較しています。「マッチング・ボリューム」には、コンソリデーテッド・ボリューム(統合ボリューム)に加算される株式のみを含みます。管理用メッセージ(売買条件 15, 16, 38)は、すべての分母から除外されています。

クエリオープニング・クロスと日中の比較 — SPY, AAPL, NVDA (2026年7月2日)
各数値の背後にある正確なSQL
SELECT
    ticker,
    round(toFloat64(maxIf(size, has(conditions, 17))) / 1e3, 1) AS auction_shares_k,
    toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 17))) AS auction_price,
    formatDateTime(toTimeZone(argMaxIf(sip_timestamp, (size, sip_timestamp), has(conditions, 17)), 'America/New_York'), '%H:%i:%S') AS auction_time_et,
    countIf(has(conditions, 17)) AS opening_print_count,
    countIf(has(conditions, 17) AND formatDateTime(toTimeZone(sip_timestamp, 'America/New_York'), '%H:%i:%S') = '09:30:00') AS open_prints_at_0930,
    minIf(size, has(conditions, 17)) AS smallest_open_print_shares,
    round(toFloat64(sumIf(size, NOT hasAny(conditions, [15, 16, 38]) AND (toHour(toTimeZone(sip_timestamp, 'America/New_York')) * 60 + toMinute(toTimeZone(sip_timestamp, 'America/New_York'))) >= 570 AND (toHour(toTimeZone(sip_timestamp, 'America/New_York')) * 60 + toMinute(toTimeZone(sip_timestamp, 'America/New_York'))) < 575)) / 1e3) AS first5_shares_k,
    round(100 * toFloat64(maxIf(size, has(conditions, 17))) / toFloat64(sumIf(size, NOT hasAny(conditions, [15, 16, 38]) AND (toHour(toTimeZone(sip_timestamp, 'America/New_York')) * 60 + toMinute(toTimeZone(sip_timestamp, 'America/New_York'))) >= 570 AND (toHour(toTimeZone(sip_timestamp, 'America/New_York')) * 60 + toMinute(toTimeZone(sip_timestamp, 'America/New_York'))) < 575)), 1) AS auction_pct_of_first5,
    round(100 * toFloat64(maxIf(size, has(conditions, 17))) / toFloat64(sumIf(size, NOT hasAny(conditions, [15, 16, 38]))), 2) AS auction_pct_of_day,
    round(toFloat64(maxIf(size, has(conditions, 8))) / 1e6, 2) AS closing_auction_shares_m,
    round(toFloat64(maxIf(size, has(conditions, 8))) / toFloat64(maxIf(size, has(conditions, 17))), 1) AS close_vs_open_x
FROM global_markets.stocks_trades
WHERE ticker IN ('SPY', 'AAPL', 'NVDA')
  AND sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
GROUP BY ticker
ORDER BY indexOf(['SPY', 'AAPL', 'NVDA'], ticker)

まずAAPLの行を確認してください。始値クロスは、09:30:00 ETに$294.1323.3千株でした。NVDAのクロスは690千株、SPYは122千株でした。このクロス単体で、セッション開始後5分間にマッチングされたAAPLの全株式(1856千株)の17.4%を占めています。NVDAでは13.8%、SPYでは9.4%となりました。しかし、1日の総取引量は、それぞれわずか0.43%、0.48%、0.21%であり、0.5%未満でした。

最後の2つの列は、その日の終値クロスを示しています。同日のAAPLの終値クロスは10.89百万株に達し、始値の33.7倍となりました。NVDAは25.2倍、SPYは13.5倍でした。インデックス・ファンドやベンチマーク運用デスクは公式終値で取引を行い、そのフローは午後4時のクロスに集中します。午前中にこれに相当する取引はありません。終値オークションは、その日最大の取引となりますが、始値オークションは公式な取引が始まる場です。

なぜ公式始値は当日の初値と異なる場合があるのか?

オークションが開始されるまでに、株式は通常数時間前から取引されています。プレマーケット取引は米国東部時間の早ければ午前4時から行われますが、それらの約定価格が公式始値を決定することはありません。以下の1行の記録は、2026年7月1日から2日にかけてのAAPLを網羅しており、セッション確認から始まります。SPYは7月2日に正確に390回のレギュラーセッション・ミニットバーを記録しました。これは仮定ではなく、検証された完全なセッションです。

クエリAAPLのオープニング・クロスとそれ以前の取引比較 (2026年7月1-2日)
各数値の背後にある正確なSQL
WITH
    (
        SELECT countIf(window_start >= toDateTime('2026-07-02 09:30:00', 'America/New_York') AND window_start < toDateTime('2026-07-02 16:00:00', 'America/New_York'))
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY' AND window_start >= toDateTime('2026-07-02 00:00:00', 'America/New_York') AND window_start < toDateTime('2026-07-03 00:00:00', 'America/New_York')
    ) AS bars_jul02,
    (
        SELECT argMax(sip_timestamp, (size, sip_timestamp))
        FROM global_markets.stocks_trades
        WHERE ticker = 'AAPL' AND sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00' AND has(conditions, 17)
    ) AS auction_ts,
    (
        SELECT argMax(exchange, (size, sip_timestamp))
        FROM global_markets.stocks_trades
        WHERE ticker = 'AAPL' AND sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00' AND has(conditions, 17)
    ) AS listing_exchange
SELECT
    bars_jul02 AS spy_session_bars_jul02,
    countIf(has(conditions, 8) AND sip_timestamp < '2026-07-02 00:00:00') AS jul01_close_print_count,
    toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 8) AND sip_timestamp < '2026-07-02 00:00:00')) AS prior_close_price,
    countIf(has(conditions, 17) AND sip_timestamp >= '2026-07-02 00:00:00') AS opening_print_count,
    toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 17) AND sip_timestamp >= '2026-07-02 00:00:00')) AS auction_price,
    formatDateTime(toTimeZone(auction_ts, 'America/New_York'), '%H:%i:%S.%f') AS auction_et,
    round(100 * (toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 17) AND sip_timestamp >= '2026-07-02 00:00:00')) - toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 8) AND sip_timestamp < '2026-07-02 00:00:00'))) / toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 8) AND sip_timestamp < '2026-07-02 00:00:00')), 2) AS overnight_gap_pct,
    formatDateTime(toTimeZone(minIf(sip_timestamp, sip_timestamp >= '2026-07-02 00:00:00' AND NOT hasAny(conditions, [15, 16, 38])), 'America/New_York'), '%H:%i:%S') AS first_trade_et,
    toFloat64(argMinIf(price, (sip_timestamp, sequence_number), sip_timestamp >= '2026-07-02 00:00:00' AND NOT hasAny(conditions, [15, 16, 38]))) AS first_trade_price,
    countIf(sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < auction_ts AND NOT hasAny(conditions, [15, 16, 38])) AS trades_before_official_open,
    countIf(sip_timestamp >= toDateTime('2026-07-02 09:30:00', 'America/New_York') AND sip_timestamp < auction_ts AND NOT hasAny(conditions, [15, 16, 38])) AS bell_to_cross_trades,
    countIf(has(conditions, 16) AND sip_timestamp >= '2026-07-02 00:00:00') AS official_open_msgs,
    countIf(has(conditions, 16) AND sip_timestamp >= '2026-07-02 00:00:00' AND exchange = listing_exchange) AS listing_venue_open_msgs,
    round(toFloat64(anyIf(price, has(conditions, 16) AND sip_timestamp >= '2026-07-02 00:00:00' AND exchange = listing_exchange)) - toFloat64(argMaxIf(price, (size, sip_timestamp), has(conditions, 17) AND sip_timestamp >= '2026-07-02 00:00:00')), 4) AS listing_open_msg_price_difference
FROM global_markets.stocks_trades
WHERE ticker = 'AAPL' AND sip_timestamp >= '2026-07-01 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'

AAPLの7月2日の最初の出来高記録は、東部時間04:00:00に$296.1で発生しました。公式始値は09:30:00.491313(東部時間)のクロス(取引成立)まで存在しませんでした。クロス価格は$294.1でした。この時点で、すでに15832件のAAPLの約定が記録されており、そのうち173件は9:30:00.000からクロスまでのわずかな間に発生したものです。これらは、ベルの音とともにマッチングを開始する他の取引所での継続的な取引です。その直後に2件の「Market Center Official Open」メッセージ(売買条件16)が発生しました。これは各マーケットセンターが自社の公式始値を記録したもので、出来高には加算されません。上場取引所の記録はオークション価格と正確に一致します(差分:0)。

この記録はオーバーナイト・ギャップも測定しています。AAPLの直前の公式終値(7月1日の正確な1の終値)は$294.38でした。翌朝のオークション価格は$294.1となり、オーバーナイトの変化は-0.1%でした。静かな夜であり、ギャップはわずかでした。決算やニュースが夜間に発表された場合、まずプレマーケットで価格が再設定され、その後のオークションによってその変動が公式記録として刻印されます。

オープニング・オークションの仕組み:MOO注文とLOO注文

開始時のオークションには、取引終了時の注文と同様に、以下の2つの専用注文タイプがあります。

  • market-on-open (MOO) 注文は、オークションで決定した価格で約定します。価格指定はありませんが、公式な開始時の取引に参加できる可能性が極めて高い注文です。
  • limit-on-open (LOO) 注文は、開始価格が指定した制限価格以下(買いの場合)または以上(売りの場合)の場合にのみ、オークションに参加します。価格指定による保護がありますが、約定しないリスクがあります。

両注文は、オークションが開始されるまで取引所に留まり、プレマーケットで取引されることはありません。取引所は午前9:30の直前に開始注文の受付や変更を停止します(停止時間は取引所により異なります)。また、多くの証券会社はそれよりも早い期限を設定しています。

オープニング・オークション・インバランスとは

取引開始に向けて、取引所は開始時のインバランス(不均衡)データを公表します。これには、買いと売りの注文残高、およびその時点での推定約定価格が含まれます。例えば、100万株の買いインバランスがある場合、現時点で100万株の買い注文が約定せずに残っていることを意味します。プレマーケットのトレーダーはこれらのデータを確認し、それに基づいたポジション構築を行います。

9:30の分足は公式の始値でもありません

ほとんどのチャートプラットフォームでは、最初の1分足に始値を組み込んでいます。これには、すべての取引所における9:30:00.000から9:30:59.999までのデータが含まれます。つまり、オークション(寄付)と約1分間の連続取引の両方です。チャート上の「始値」は、その時間枠内で最初に記録された価格であり、必ずしもオークション価格とは限りません。

クエリ9:30のバー vs 12:30のバー — SPY, AAPL, NVDA (2026年7月2日)
各数値の背後にある正確なSQL
WITH auctions AS (
    SELECT ticker, toFloat64(argMax(price, (size, sip_timestamp))) AS official_open
    FROM global_markets.stocks_trades
    WHERE ticker IN ('SPY', 'AAPL', 'NVDA')
      AND sip_timestamp >= '2026-07-02 00:00:00' AND sip_timestamp < '2026-07-03 00:00:00'
      AND has(conditions, 17)
    GROUP BY ticker
)
SELECT
    b.ticker AS ticker,
    toFloat64(anyIf(b.open, b.window_start = toDateTime('2026-07-02 09:30:00', 'America/New_York'))) AS bar_0930_open,
    a.official_open AS official_open,
    round(100 * (toFloat64(anyIf(b.open, b.window_start = toDateTime('2026-07-02 09:30:00', 'America/New_York'))) - a.official_open), 0) AS bar_open_minus_official_cents,
    round(sumIf(b.volume, b.window_start = toDateTime('2026-07-02 09:30:00', 'America/New_York')) / 1e3) AS bar_0930_vol_k,
    anyIf(b.transactions, b.window_start = toDateTime('2026-07-02 09:30:00', 'America/New_York')) AS bar_0930_trades,
    round(sumIf(b.volume, b.window_start = toDateTime('2026-07-02 12:30:00', 'America/New_York')) / 1e3) AS bar_1230_vol_k,
    round(sumIf(b.volume, b.window_start = toDateTime('2026-07-02 09:30:00', 'America/New_York')) / sumIf(b.volume, b.window_start = toDateTime('2026-07-02 12:30:00', 'America/New_York')), 1) AS x_0930_vs_1230
FROM global_markets.delayed_stocks_minute_aggs AS b
INNER JOIN auctions AS a ON a.ticker = b.ticker
WHERE b.ticker IN ('SPY', 'AAPL', 'NVDA')
  AND b.window_start >= toDateTime('2026-07-02 00:00:00', 'America/New_York')
  AND b.window_start < toDateTime('2026-07-03 00:00:00', 'America/New_York')
GROUP BY b.ticker, a.official_open
ORDER BY indexOf(['SPY', 'AAPL', 'NVDA'], b.ticker)

7月2日、3つの9:30の足はすべて公式の始値より高い値で始まりました。AAPLの足は$294.12で、公式の$294.1に対し2セントの差があります。SPYは18セント、NVDAは2セント、それぞれクロス(交差)より高い値を示しました。他の取引所でのクロス前の価格が、各足の最初に記録されたことが原因です。チャートの始値が公式の始値と数セントずれる場合、通常はこの仕組みによるものです。

出来高の列は、最初の1分間の取引量を示しています。AAPLの9:30の足は14662回の取引で743千株に達しました。これは、12:30のランチタイムの足(121千株)の6.1倍に相当します。NVDAの倍率は7.5倍、SPYは3.6倍でした。これほど出来高が大きい分足は、VWAP(出来高加重平均価格)において大きな影響力を持ちます。

市場開始前後の取引動向

午前4時から午後8時までのAAPLの7月分のティックデータを、64四半期ごとの時間枠に分類すると、寄り付きの急騰が浮き彫りになります。プレマーケットの取引量はわずかですが、9:30に急増します。その後、昼にかけて減少した後、大引けに向けて再び増加します。一日の取引は、10.89百万株のAAPLのクロス取引で終了します。

クエリAAPL 15分ごとの出来高 (2026年7月2日) — Pre-marketからAfter-hours (ET)
各数値の背後にある正確なSQL
SELECT
    formatDateTime(toStartOfInterval(toTimeZone(window_start, 'America/New_York'), INTERVAL 15 MINUTE), '%H:%i') AS et_time,
    round(sum(volume) / 1e6, 2) AS shares_m
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'AAPL'
  AND window_start >= toDateTime('2026-07-02 00:00:00', 'America/New_York')
  AND window_start < toDateTime('2026-07-03 00:00:00', 'America/New_York')
GROUP BY et_time
ORDER BY et_time

オープニング・オークション・プリントの識別方法:売買条件コード

どのプリントがオークションなのか。その答えはテープ自体にあります。コード辞書は同じ倉庫に保管されており、以下の内容は断定ではなく、クエリに基づいたものです。

クエリコード辞書に基づく、寄り付き時のテープのラベル
各数値の背後にある正確なSQL
SELECT
    name,
    id,
    toUInt8(JSONExtractBool(update_rules, 'consolidated', 'updates_volume')) AS counts_toward_volume
FROM global_markets.stocks_condition_codes
WHERE asset_class = 'stocks' AND type = 'sale_condition' AND id IN (8, 15, 16, 17, 38)
ORDER BY id

一つの非対称性に注意が必要です。終値には一つの統合されたラベル(コード 8、"Closing Prints")が付与されます。一方、始値のラベルは取引所ごとに異なります。コード 17、"Market Center Opening Trade" は各市場センター独自の始値取引を示し、上場取引所のものがオークションとなります。SPYの7月2日のテープには 2 件のプリントが含まれています。これには 122 千株のクロス取引と、別の取引所からの 4 株のプリントが含まれます。一方、AAPLとNVDAはそれぞれ正確に1件(1 および 1)を示しており、すべて9:30:00の秒単位(open_prints_at_0930 列で特定)の範囲内にあります。上記のオークション番号はすべて、そのセッションにおける最大規模のプリントです。コード 16、"Market Center Official Open" は、ボリュームのない管理用エコー(ボリューム列では 0)であり、コード 15 および 38 を用いたすべての分母から除外されます。

オープニング・オークションに関するFAQ

オープニング・オークションの時間はいつですか?

東部標準時(ET)の午前9時30分、通常の取引セッションの開始とともに行われます。流動性の低い銘柄は、その直後にクロスが発生する場合があります。2026年7月2日、SPY、AAPL、およびNVDAのクロスは、すべて正確に09:30:00 ETに記録されました。早期終了が予定されている日は、午後の取引時間が短縮されますが、午前中の時間は変わりません。その場合、クロージング・オークションは午後1時に移動します。詳細は市場の休場日および早期終了をご参照ください。

基準となる始値は何ですか?

上場取引所におけるオープニング・オークションの価格です。2026年7月2日、AAPLのクロスは$294.1で成立しました。15832 AAPLの銘柄がその日の朝に取引されていたとしても、これがその日の公式な始値となります。

オープニング・オークションで取引できますか?

はい。ほとんどの証券会社では、Market-on-open (MOO) および Limit-on-open (LOO) 注文が標準的に利用可能です。MOOはオークションで決定された価格で約定し、LOOは指定した指値またはそれ以上の価格でのみ約定します。注文の受付は、午前9時30分の直前に終了します。多くの証券会社では、それよりも早い時間に終了します。

なぜ株価が前日の終値から大きく乖離して始まるのですか?

取引所が閉まっている間、注文は一晩中蓄積され、オークションはその蓄積された需給を一度の価格でクロスさせます。取引が少ない夜間は、乖離は小さくなります。2026年7月2日のAAPLの夜間の変動は-0.1%でした。

オープニング・オークションはクロージング・オークションよりも規模が大きいですか?

いいえ、クロージング・オークションの方がはるかに規模が大きいです。2026年7月2日におけるAAPLのクロージング・クロスは、オープニング・クロスの33.7倍、NVDAは25.2倍、SPYは13.5倍でした。ベンチマークに連動するフローは公式な終値で取引されるため、クロージング・オークションがその役割を担います。


上記の数値はすべて、保存され、検証可能なクエリから生成されています。各パネルの下にあるSQLを展開して、監査を行うことができます。フォローしている銘柄のオープニング・クロスを詳細に分析するには、Strasmoreターミナルで同じ質問を英語で入力してください。