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

0DTEオプションの取引時間帯

0DTEオプションは終盤ではなく午前中に取引が集中します。時間帯別の取引量やコールとプットの比率を詳しく解説します。

0DTEオプションに関する俗説では、これらは取引終了間際に購入される宝くじのような、ギャンブル的な存在だとされています。しかし、実際の取引データはそれとは異なります。時間帯別に計測すると、同日満期オプションの取引量は午前中に最も多くなります。最も流動性の高い契約は最初の30分間に集中し、オプション総取引量に占める割合は、一日の終わりに最低水準となります。以下のパネルでは、取引量の多い0DTEセッション(2026年7月10日金曜日)におけるこのリズムを測定し、原資産、コール、プット、および曜日ごとの傾向を検証します。

0DTEオプションの取引が最も活発な時間帯はいつか?

本パネルでは、金曜日のすべてのオプション取引を、当日満期(その日の午後に満期)の契約とそれ以外に分類し、ニューヨーク時間に基づいて集計しています。09:00の行は、市場開始が9:30であるため、わずか30分間のみをカバーしています。そのため、最後の列では、公平な比較のために各時間帯を「1分あたりの契約数」に正規化しています。

クエリ0DTE契約の出来高、オプション総出来高に占める割合、およびET時間帯別フロー — 2026年7月10日
各数値の背後にある正確なSQL
SELECT
    formatDateTime(toStartOfHour(toTimeZone(sip_timestamp, 'America/New_York')), '%H:%i') AS et_hour,
    round(sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260710') / 1e6, 2) AS same_day_contracts_m,
    round(sum(size) / 1e6, 2) AS all_options_contracts_m,
    round(100.0 * sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260710') / sum(size), 1) AS same_day_pct,
    round(sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260710')
          / uniqExact(toStartOfMinute(sip_timestamp)) / 1000, 1) AS same_day_k_per_minute
FROM global_markets.options_trades
WHERE sip_timestamp >= toDateTime64('2026-07-10 13:30:00', 9)
  AND sip_timestamp < toDateTime64('2026-07-10 20:00:00', 9)
GROUP BY et_hour
ORDER BY et_hour

取引速度。 開始後の30分間は、1分あたり148.9千契約を記録し、セッション中で最も速い時間帯となりました。それ以降の各時間帯は、これよりも低速です。10時台は1分あたり119.8k、正午までに66.6k、14:00時には最低の50.3k、最終時間帯は62.6kとなりました。

絶対取引量。 最大の取引量は10時台の7.19百万契約です。これは30分間ではなく、丸1時間分の数値です。その後、取引量は14:00時には3.02Mまで減少しますが、取引終了にかけて3.75Mまで増加します。終盤の取引増加は実態を伴うものであり、午前の水準には遠く及びません。

シェア。 全オプション取引量に占める当日満期契約の割合は、52.9%で始まり、11:00時台に53.4%でピークに達します。その後、毎時間減少していき、取引終了時には一日の最低値となる38.4%まで低下します。最後の1時間帯は、通説とは異なる動きを見せるため注意が必要です。取引終了にかけてオプションの総取引量は増加し(6.63M契約に対し、その前の時間は9.78M契約。これは10:00時および11:00時の13.58Mおよび10.86Mに次ぐ、一日で3番目に活発な時間帯です)、一方で0DTEのシェアは低下します。取引終了間際はオプション取引が活発な時間帯ですが、0DTEの集中度はセッション中で最も低い時間帯となります。

午前中のピークはSPYだけか?

妥当な疑問です。インデックスETFは毎取引日に満期を迎えるため、「0DTE」の実態はSPYとQQQに関するものかもしれません。次のパネルでは、金曜日の同日満期(same-day)の出来高を原資産別に内訳し、各銘柄の同日満期の株式数と、正午までに取引された割合を示します。

クエリ原資産別当日オプション出来高 — 上位10銘柄、2026年7月10日
各数値の背後にある正確なSQL
WITH by_name AS (
    SELECT substring(ticker, 3, length(ticker) - 17) AS underlying,
           sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260710') AS same_day_size,
           sumIf(size, substring(ticker, length(ticker) - 14, 6) = '260710'
                       AND toHour(toTimeZone(sip_timestamp, 'America/New_York')) < 12) AS morning_size,
           sum(size) AS all_size
    FROM global_markets.options_trades
    WHERE sip_timestamp >= toDateTime64('2026-07-10 13:30:00', 9)
      AND sip_timestamp < toDateTime64('2026-07-10 20:00:00', 9)
      AND ticker NOT LIKE 'O:SPCX%'
    GROUP BY underlying
)
SELECT underlying,
       round(same_day_size / 1e6, 2) AS same_day_contracts_m,
       round(100.0 * same_day_size / sum(same_day_size) OVER (), 1) AS pct_of_all_0dte,
       round(100.0 * same_day_size / all_size, 1) AS same_day_pct_of_name,
       round(100.0 * morning_size / same_day_size, 1) AS pct_traded_before_noon
FROM by_name
ORDER BY same_day_size DESC
LIMIT 10

インデックス銘柄が主流ですが、独占はしていません。SPYだけで市場全体の同日満期契約の25.5%を占め、QQQがさらに14.5%を占めています。S&P 500インデックスシリーズ(SPXW)と小型株ETF(IWM)を含め、インデックス銘柄が上位6銘柄のうち4つを占めています。残りの2つは個別株で、NVDA8.7%、TSLA7.3%です。

same_day_pct_of_nameの列は、各銘柄のオプション市場がいかに「0DTE中心」であったかを示しています。SPYのオプション出来高のうち、その日の午後に満期を迎えた割合は72.1%であり、表の最下部にあるAMZN46.9%と比較されます。

午前中の偏り(skew)は、全10銘柄に共通しています。正午までの時間枠は、取引時間6.5時間のうち2.5時間、つまり時間の38%に相当します。しかし、すべての銘柄において、同日満期出来高のそれ以上の割合がこの時間枠内に記録されました。最も高い割合はIWM67.4%、最も低い割合はMU44.5%、SPY54.4%、NVDA56.3%でした。この傾向は特定のETFではなく、商品特性に起因するものです。

コールとプットの動向は一致しているか?

一般的には、プットの取引は遅い時間帯に集中すると考えられています。つまり、翌日のギャップダウンに備えたヘッジ注文が引けにかけて増えると予想されます。しかし、データによれば両者の動向はほぼ同じ時間軸で動いています。

クエリET時間帯別当日コール vs プット、および0DTE出来高に占めるプットの割合 — 2026年7月10日
各数値の背後にある正確なSQL
SELECT formatDateTime(toStartOfHour(toTimeZone(sip_timestamp, 'America/New_York')), '%H:%i') AS et_hour,
       round(sumIf(size, substring(ticker, length(ticker) - 8, 1) = 'C') / 1e6, 2) AS call_contracts_m,
       round(sumIf(size, substring(ticker, length(ticker) - 8, 1) = 'P') / 1e6, 2) AS put_contracts_m,
       round(100.0 * sumIf(size, substring(ticker, length(ticker) - 8, 1) = 'P') / sum(size), 1) AS put_share_pct
FROM global_markets.options_trades
WHERE sip_timestamp >= toDateTime64('2026-07-10 13:30:00', 9)
  AND sip_timestamp < toDateTime64('2026-07-10 20:00:00', 9)
  AND substring(ticker, length(ticker) - 14, 6) = '260710'
GROUP BY et_hour
ORDER BY et_hour

両者ともに午前10時頃にピークを迎えます。4.1Mのコールに対し、プットは3.09Mです。その後、午後は両者ともに減少傾向にあり、引けにかけて再び上昇します。注目すべきは、当日出来高に占めるプットの割合です。取引開始直後が最も低く34.9%)、午前10時には43%まで急増します。その後は狭い範囲で推移し、41.7%で取引を終えます。

この構成比の変化は、ヘッジ需要の説とは逆の結果を示しています。取引開始直後のラッシュは、一日の中で最もコールへの偏りが大きい時間帯です。その後、プットの割合は数ポイント上昇しますが、引けにかけてプットが急増する傾向は見られません。

火曜日でもこのパターンは維持されるのか?

1時間ごとのリズムは、日次のリズムに従います。1セッションにおける0DTE取引の量は、その日にどの銘柄が満期を迎えるかに左右されます。金曜日は満期カレンダーのピークであり、ウィークリー、マンスリー、および日次のETFシリーズがすべて重なります。一方、火曜日は日次満期の銘柄のみとなります。このパネルでは、6週間分のセッションを曜日ごとに集計しています。

クエリ曜日別当日オプション出来高の割合 — 全セッション、2026年6月1日〜7月10日
各数値の背後にある正確なSQL
WITH sessions AS (
    SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
           sumIf(volume, substring(ticker, length(ticker) - 14, 6)
                         = formatDateTime(toDate(toTimeZone(window_start, 'America/New_York')), '%y%m%d')) AS same_day_vol,
           sum(volume) AS all_vol
    FROM global_markets.options_minute_aggs
    WHERE window_start >= toDateTime64('2026-06-01 13:30:00', 9)
      AND window_start < toDateTime64('2026-07-10 20:00:00', 9)
      AND toHour(toTimeZone(window_start, 'America/New_York')) BETWEEN 9 AND 15
    GROUP BY session_date
)
SELECT toDayOfWeek(session_date) AS dow,
       formatDateTime(session_date, '%W') AS weekday,
       count() AS sessions,
       round(avg(same_day_vol) / 1e6, 2) AS avg_same_day_contracts_m,
       round(100.0 * sum(same_day_vol) / sum(all_vol), 1) AS same_day_pct_of_volume
FROM sessions
GROUP BY dow, weekday
ORDER BY dow

6の月曜日、6の火曜日、6の水曜日、6の木曜日、4の金曜日において、その差は顕著です。金曜日のオプション取引総量に占める当日満期の割合は46.1%であり、1セッションあたりの当日満期契約数は平均で36.1百万件に達しました。これは5日間のうち、両方の指標において最高値です。Tuesdayが最も少なく(29.2%、18.92M)、週の中日は密集しています(34.5%がMonday34.2%がWednesday35.4%がThursday)。当日満期の取引は、どのセッションでも発生する現象です。最も取引の少ない平日でもオプション取引の29.2%を占めています。しかし、その「水準」はカレンダーに依存する事実であり、上記のパネルにおける金曜日は、その範囲の最上位に位置しています。1時間ごとの「形状」は一般化できますが、その「高さ」は一般化できません。

朝方の市場が機械的に選ばれる理由

当日満期のオプションの全期間は、わずか1セッションです。そのため、デイトレード、イベントヘッジ、あるいは最終日のタイムディケイ(時間的価値の減少)を狙うプレミアム売りなど、エクスポージャーを求める投資家にとって、市場開始直後が最も取引機会が豊富です。取引可能な時間、プレミアム、および未決済のデイレンジが最大となるためです。時間が経過するごとにオプションの価値は減少します。午後の価格下落は、オプションそのものがリアルタイムで満期を迎えていく過程を意味します。

What actually trades in the final hour?

The standard assumption is that the last hour's residue is deep in-the-money contracts converging to stock, plus pennies-wide lottery strikes. The panel tests it, bucketing same-day trades by premium paid — a stand-in for moneyness on expiration day, since a contract with hours to live priced at $0.05 is far out of the money and one above $10 is deep in it.

クエリ最終時間の取引内容:支払プレミアム別当日出来高、午前10時台 vs 大引け前 — 2026年7月10日
各数値の背後にある正確なSQL
SELECT multiIf(price < 0.10, 'under $0.10', price < 0.50, '$0.10-0.50', price < 2, '$0.50-2', price < 10, '$2-10', '$10 and up') AS premium_bucket,
       round(100.0 * sumIf(size, toHour(toTimeZone(sip_timestamp, 'America/New_York')) = 10)
             / sum(sumIf(size, toHour(toTimeZone(sip_timestamp, 'America/New_York')) = 10)) OVER (), 1) AS pct_of_10am_contracts,
       round(100.0 * sumIf(size, toHour(toTimeZone(sip_timestamp, 'America/New_York')) = 15)
             / sum(sumIf(size, toHour(toTimeZone(sip_timestamp, 'America/New_York')) = 15)) OVER (), 1) AS pct_of_3pm_contracts,
       round(100.0 * sumIf(price * size, toHour(toTimeZone(sip_timestamp, 'America/New_York')) = 15)
             / sum(sumIf(price * size, toHour(toTimeZone(sip_timestamp, 'America/New_York')) = 15)) OVER (), 1) AS pct_of_3pm_premium_dollars
FROM global_markets.options_trades
WHERE sip_timestamp >= toDateTime64('2026-07-10 13:30:00', 9)
  AND sip_timestamp < toDateTime64('2026-07-10 20:00:00', 9)
  AND substring(ticker, length(ticker) - 14, 6) = '260710'
  AND toHour(toTimeZone(sip_timestamp, 'America/New_York')) IN (10, 15)
GROUP BY premium_bucket
ORDER BY min(price)

The mix shifts hard toward the cheap end. In the 10 o'clock hour the modal bucket is $0.50-2, at 37.4% of contracts, with the sub-dime bucket on 17.1%. By the closing hour the sub-dime bucket has roughly doubled its share, to 33.8%, $0.10-0.50 adds 34.9%, and $0.50-2 contracts drop to 19.6%. Most of what trades into the bell costs under fifty cents.

The final column is the corrective. Those expensive contracts are rare — the $10 and up bucket is 2.6% of last-hour contracts — yet they carry 54.2% of the premium dollars traded in that hour, against 0.8% for the sub-dime bucket. Both halves of the folk picture are there, in different currencies: counted in contracts the last hour is a lottery-ticket market; counted in dollars, a thin tape of deep in-the-money contracts converging on the stock (the 0DTE guide follows one such last-hour lottery strike).

0DTEのスプレッドが最も狭くなる時間はいつか?

流動性の指標の一つは出来高ですが、トレーダーが実際に支払うコストは、マーケットを跨ぐ際のコスト(スプレッド)です。本パネルでは、金曜日のSPY 0DTEコントラクトの全気配値を分析しています。価格帯が$1から$10の間にあるコントラクトに限定し、時間ごとの bid-ask spread の中央値を報告します。これは同等のプレミアム帯を比較するためのものです(満期が近づくにつれ、対象となるコントラクトは変化します)。

クエリSPY当日契約($1-$10)のET時間帯別ビッド・アスク・スプレッド中央値 — 2026年7月10日
各数値の背後にある正確なSQL
SELECT formatDateTime(toStartOfHour(toTimeZone(sip_timestamp, 'America/New_York')), '%H:%i') AS et_hour,
       round(count() / 1e6, 1) AS quote_updates_m,
       round(quantileDeterministic(0.5)(toFloat64(ask_price - bid_price), toUInt64(sequence_number)), 3) AS median_spread_usd,
       round(quantileDeterministic(0.5)(toFloat64(ask_price - bid_price) / toFloat64(bid_price + ask_price) * 200,
                                        toUInt64(sequence_number)), 2) AS median_spread_pct_of_mid
FROM global_markets.cache_options_quotes
WHERE ticker LIKE 'O:SPY260710%'
  AND sip_timestamp >= toDateTime64('2026-07-10 13:30:00', 9)
  AND sip_timestamp < toDateTime64('2026-07-10 20:00:00', 9)
  AND bid_price > 0
  AND toFloat64(bid_price + ask_price) / 2 BETWEEN 1 AND 10
GROUP BY et_hour
ORDER BY et_hour

取引時間が経過するにつれて、スプレッドは拡大します。当該価格帯におけるSPY同日満期コントラクトの中央値は、最もスプレッドが狭い取引開始後30分間で、中間価格の 0.8% でした。一方、最もスプレッドが広い取引終了前の1時間では 2.67% でした。同じ製品、同じプレミアム帯において、6時間後には約2倍のコストがかかることになります。現物価格の中央値スプレッドは$0.03から$0.11へと推移し、正午付近でその中間(1.57% at 12:00)となります。気配値の更新頻度も同様の動きを見せます。10時台には1.4百万件の更新がありますが、最終時間帯は0.1Mです。market makers は、コントラクトの時間的価値がゼロに近づくにつれて更新頻度を大幅に下げ、スプレッドを広げる傾向があります。

要点:実用的な解釈

現在の状況は、「減衰する時計における午前の指標」と言えます。

  • 0DTE契約のライフサイクルにおいて、最も取引量が多く、流動性が高く、コストが低いのは最初の2時間です。それ以降、時間は経過するごとにスプレッドが広がり、取引量も減少します。
  • これは指数ETFによる影響ではありません。主要な10の原資産すべてにおいて、当日の取引ボリュームは午前に集中しており、コールおよびプットも同様の傾向を示します。
  • 最終時間は実体がありますが、規模は小さいものです。市場は二極化しています。非常に安価な契約が大量に存在し、一方で、取引額の大部分を占める非常に高価な契約はごくわずかです。
  • 曜日が重要です。金曜日の当日分シェアは、週の中日のどの曜日よりも大幅に高くなります。

これらは、プレミアムが午後のうちにゼロになる可能性のある商品の「取引すべきか否か」を示すものではありません。市場の流動性が最も高く、取引コストが最も低い「時間帯」を示しています。DTEの用語集では、より広範な満期スペクトラムについて説明しています。

FAQ

0DTEオプションは引けにかけて取引が活発になりますか?

市場全体と比較すると、そうではありません。2026年7月10日、引けの1時間における当日満期(0DTE)契約の割合は、全オプション取引量の38.4%まで低下しました。これはその日の最低水準です。同セッションの総オプション取引量は9.78百万枚に達し、3番目に取引が活発な時間帯となりました(10:0013.58M、11:0010.86Mに次ぐ)。0DTEの取引量は大引けに向けて増加しますが(午前のピークである7.19Mに対し3.75M)、市場全体の増加率の方が大きいです。当日満期の取引が最も活発だったのは、開始後30分間の1分あたり148.9千枚でした。

平均的な取引日におけるオプション取引量に占める0DTEの割合は?

曜日によって異なります。2026年7月10日までの6週間において、当日満期契約の割合は金曜日が46.1%、Tuesday日は29.2%でした。すべての取引日に一定の0DTE取引量が存在しますが、その割合は満期スケジュールによって決まります。

プットとコールは同じタイミングで0DTE取引されますか?

ほぼ同様です。2026年7月10日は、両者とも午前10時台にピークを迎え、午後にかけて減少しました。当日満期の取引量に占めるプットの割合は、開始直後の34.9%が最も低く、最終的に41.7%となりました。引け間際のヘッジ需要による急増は見られません。

午前のピークはSPYと個別銘柄で同じですか?

はい、同じです。当該金曜日、取引時間の38%を占める正午までの時間帯において、ETFと個別銘柄を含む上位10の原資産すべてが、当日満期取引のより高い割合を記録しました。個別銘柄のNVDA56.3%、SPY54.4%でした。


上記の数値はすべて、オプションの全取引データに対する保存・バージョン管理されたクエリに基づいています。各パネルを展開してSQLを確認するか、Strasmoreターミナルで別のセッションを分析してください。