Kapan Waktu Perdagangan Opsi 0DTE Paling Aktif?
Opsi 0DTE diperdagangkan paling berat di pagi hari, bukan saat penutupan: volume per jam, perbandingan call vs put, serta spread hari yang sama semua diukur.
Cerita umum mengenai opsi 0DTE adalah kasino akhir hari: tiket lotre yang dibeli pada jam terakhir untuk lemparan koin terakhir. Data pasar menunjukkan hal yang berbeda. Jika diukur jam demi jam, opsi hari yang sama diperdagangkan paling berat di pagi hari — aliran kontrak tercepat terjadi dalam tiga puluh menit pertama, dan pangsa volume mereka terhadap seluruh volume opsi berakhir di titik terendah pada akhir hari. Panel di bawah ini mengukur ritme tersebut pada sesi 0DTE yang padat (Jumat, 10 Juli 2026) dan mengujinya pada berbagai underlying, call dan put, serta hari kerja.
Kapan waktu perdagangan opsi 0DTE paling aktif?
Panel ini membagi setiap perdagangan opsi pada hari Jumat tersebut menjadi kontrak hari yang sama (berakhir sore itu) dan kontrak lainnya, dikelompokkan berdasarkan waktu New York. Baris 09:00 hanya mencakup setengah jam — sesi dibuka pukul 9:30 — sehingga kolom terakhir menormalisasi setiap kelompok menjadi kontrak per menit untuk perbandingan yang adil.
SQL tepat di balik setiap angka
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_hourTingkat aliran. Setengah jam pertama menggerakkan 148.9 ribu kontrak hari yang sama per menit — periode tercepat dalam sesi tersebut. Setiap kelompok setelahnya lebih lambat: 119.8k per menit pada pukul 10, 66.6k pada tengah hari, titik terendah 50.3k pada jam 14:00, dan 62.6k pada jam terakhir.
Volume absolut. Kelompok terbesar adalah jam 10 dengan 7.19 juta kontrak — satu jam penuh, bukan setengah jam — setelah itu volume turun menjadi 3.02M pada jam 14:00, kemudian naik menjelang penutupan menjadi 3.75M. Peningkatan di akhir hari memang terjadi, namun tidak mendekati volume pagi hari.
Pangsa. Pangsa kontrak hari yang sama dari SELURUH volume opsi dibuka pada 52.9%, mencapai puncak pada jam 11:00 sebesar 53.4%, lalu turun setiap jam hingga 38.4% saat penutupan — titik terendah hari itu. Perhatikan jam terakhir tersebut dengan saksama, karena di situlah letak anggapan umum: total volume opsi naik menjelang bel penutupan (9.78M kontrak dibandingkan 6.63M pada jam sebelumnya — kelompok tersibuk ketiga hari itu, setelah jam 10:00 dan 11:00 pada 13.58M dan 10.86M) sementara pangsa 0DTE justru menurun. Penutupan adalah jam yang sibuk untuk opsi, dan merupakan jam dengan konsentrasi 0DTE paling rendah dalam sesi tersebut.
Apakah puncak pagi hari hanya terjadi pada SPY?
Sebuah keberatan yang wajar: ETF indeks mencantumkan tanggal kedaluwarsa setiap hari perdagangan, sehingga mungkin "0DTE" sebenarnya adalah cerita tentang SPY dan QQQ. Panel berikutnya merinci volume hari yang sama pada hari Jumat tersebut berdasarkan aset dasar, menambahkan pangsa hari yang sama untuk setiap nama dan seberapa banyak yang tercatat sebelum tengah hari.
SQL tepat di balik setiap angka
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 10Produk indeks mendominasi, tetapi tidak memonopoli. SPY sendiri mengambil 25.5% dari setiap kontrak hari yang sama yang diperdagangkan di seluruh pasar, QQQ mengambil 14.5% lainnya; dengan seri indeks S&P 500 (SPXW) dan ETF small-cap (IWM), produk indeks mengisi empat dari enam slot teratas. Dua lainnya adalah saham tunggal — NVDA sebesar 8.7%, TSLA sebesar 7.3%.
Kolom same_day_pct_of_name menunjukkan seberapa berat 0DTE pasar opsi masing-masing nama: 72.1% dari volume opsi SPY pada hari itu kedaluwarsa pada sore yang sama, dibandingkan dengan 46.9% untuk AMZN di bagian bawah tabel.
Kemiringan pagi hari berlaku untuk kesepuluh nama tersebut. Jendela sebelum tengah hari adalah dua koma lima dari enam koma lima jam sesi — tiga puluh delapan persen dari waktu — dan setiap nama mencatat lebih dari pangsa volume hari yang sama di dalamnya: terberat IWM sebesar 67.4%, teringan MU sebesar 44.5%, SPY sebesar 54.4%, NVDA sebesar 56.3%. Kecenderungan ini milik produk tersebut, bukan milik satu ETF.
Apakah call dan put mengikuti waktu yang sama?
Kecurigaan umum adalah bahwa put berjalan lebih lambat — bahwa menjelang penutupan pasar dipenuhi dengan hedge terhadap gap overnight. Namun, data menunjukkan bahwa kedua sisi mengikuti waktu yang hampir sama.
SQL tepat di balik setiap angka
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_hourKedua sisi mencapai puncak pada bucket pukul 10 yang sama — 4.1M call berbanding 3.09M put — keduanya menurun sepanjang sore, dan keduanya meningkat menjelang penutupan. Pangsa put dari volume hari yang sama adalah kolom yang menarik: terendah pada bucket pembukaan (34.9%), melonjak menjadi 43% pada pukul 10, kemudian bertahan dalam rentang sempit, dan berakhir di 41.7%.
Efek campuran ini berjalan berlawanan dengan narasi hedging: lonjakan pembukaan adalah periode yang paling condong ke call sepanjang hari, dan put mengambil kembali beberapa poin pangsa setelah periode tersebut berlalu. Tidak terlihat adanya lonjakan put di akhir hari.
Apakah pola ini tetap berlaku pada hari Selasa?
Ritme per jam mengikuti ritme harian: seberapa banyak perdagangan 0DTE yang bisa terjadi dalam satu sesi bergantung pada apa yang jatuh tempo pada hari itu. Jumat adalah puncak dari kalender jatuh tempo — kontrak mingguan, bulanan, dan seri ETF harian semuanya jatuh tempo pada hari tersebut — sementara Selasa hanya menawarkan nama-nama dengan jatuh tempo harian. Panel ini mengumpulkan sesi selama enam minggu berdasarkan hari kerja.
SQL tepat di balik setiap angka
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 dowSepanjang 6 hari Senin, 6 hari Selasa, 6 hari Rabu, 6 hari Kamis, dan 4 hari Jumat, perbedaannya sangat mencolok. Jumat mencatat pangsa volume same-day sebesar 46.1% dari seluruh volume opsi dan rata-rata 36.1 juta kontrak same-day per sesi — tertinggi dari kelima hari tersebut pada kedua ukuran. Tuesday adalah yang terendah (29.2%, 18.92M); hari-hari tengah minggu berkumpul rapat (34.5% pada Monday, 34.2% pada Wednesday, 35.4% pada Thursday). Perdagangan same-day adalah fenomena setiap sesi — bahkan hari kerja terendah pun mencatat 29.2% dari total transaksi opsi — tetapi level-nya ditentukan oleh kalender, dan hari Jumat dalam panel di atas berada di dekat batas atas rentang tersebut. Bentuk per jam bersifat umum; namun tinggi kurvanya tidak.
Mengapa pagi hari, secara mekanis
Seluruh masa berlaku opsi same-day hanya satu sesi. Oleh karena itu, siapa pun yang menginginkan eksposur tersebut — trader day-range, hedger event, penjual premium yang memanen decay hari terakhir — memiliki produk terbanyak untuk dikelola saat pembukaan: jam terbanyak, premium tertinggi, dan rentang harian terluas yang belum terselesaikan. Setiap jam menghabiskan produk itu sendiri, dan penurunan nilai di sore hari adalah bentuk kedaluwarsa produk tersebut secara real time.
Apa yang sebenarnya diperdagangkan pada jam terakhir?
Asumsi standarnya adalah sisa perdagangan pada jam terakhir terdiri dari kontrak deep in-the-money yang konvergen ke saham, ditambah lottery strike dengan spread yang sangat tipis. Panel ini mengujinya dengan mengelompokkan perdagangan hari yang sama berdasarkan premi yang dibayar — sebagai pengganti moneyness pada hari kedaluwarsa, karena kontrak dengan sisa waktu beberapa jam yang dihargai $0,05 berada jauh out of the money dan yang di atas $10 berada deep in the money.
SQL tepat di balik setiap angka
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)Komposisinya bergeser kuat ke arah harga murah. Pada jam 10, bucket modal adalah $0.50-2, dengan 37.4% dari kontrak, sementara bucket sub-dime berada pada 17.1%. Menjelang jam penutupan, pangsa bucket sub-dime meningkat kira-kira dua kali lipat menjadi 33.8%, $0.10-0.50 bertambah 34.9%, dan kontrak $0.50-2 turun menjadi 19.6%. Sebagian besar yang diperdagangkan hingga bel penutupan berharga di bawah lima puluh sen.
Kolom terakhir adalah koreksinya. Kontrak mahal tersebut jarang terjadi — bucket $10 and up hanya 2.6% dari kontrak jam terakhir — namun mereka membawa 54.2% dari total dolar premi yang diperdagangkan pada jam tersebut, dibandingkan 0.8% untuk bucket sub-dime. Kedua sisi gambaran umum tersebut ada di sana, dalam satuan yang berbeda: jika dihitung berdasarkan jumlah kontrak, jam terakhir adalah pasar tiket lotre; jika dihitung dalam dolar, ini adalah aliran tipis kontrak deep in-the-money yang konvergen ke saham (panduan 0DTE mengikuti salah satu lottery strike jam terakhir tersebut).
Kapan spread 0DTE paling ketat?
Volume adalah salah satu ukuran likuiditas; biaya untuk crossing market adalah biaya yang dibayar oleh trader. Panel ini membaca setiap pembaruan quote pada kontrak SPY 0DTE hari Jumat tersebut dan melaporkan median bid-ask spread per jam, terbatas pada kontrak yang dikutip antara $1 dan $10 — pita premium yang setara (kontrak di dalamnya berubah seiring berjalannya hari; begitulah karakteristik produk yang akan kedaluwarsa).
SQL tepat di balik setiap angka
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_hourSpread melebar seiring berjalannya sesi. Median kontrak SPY hari yang sama dalam pita tersebut dikutip 0.8% dari mid-price wide pada setengah jam pertama pembukaan — bucket terketat hari itu — dan 2.67% pada jam penutupan, yang terlebar: lebih dari dua kali lipat biaya crossing, produk yang sama, pita premium yang sama, enam jam kemudian. Dalam bentuk tunai, median spread bergerak dari $0.03 menjadi $0.11, dengan nilai tengah di tengah hari (1.57% pada 12:00). Trafik quote bergerak dengan cara yang sama — 1.4 juta pembaruan pada jam 10 pagi dibandingkan 0.1M pada jam terakhir: market makers melakukan refresh jauh lebih jarang saat kontrak mendekati zero time value, dan memberikan quote yang lebih lebar saat mereka melakukannya.
Jadi apa: pembacaan praktis
Gambaran yang terukur adalah instrumen pagi pada jam yang menyusut:
- Bagian terberat, tercepat, dan termurah untuk dieksekusi dari siklus hidup kontrak 0DTE adalah dua jam pertamanya. Setiap jam setelah itu memiliki kuotasi yang lebih lebar dan perdagangan yang lebih tipis.
- Ini bukan artefak dari index ETF: sepuluh underlying terberat semuanya menggeser volume hari yang sama ke pagi hari, dan calls serta puts mengikuti jam yang sama.
- Jam terakhir adalah nyata tetapi kecil — dua pasar sekaligus: sangat banyak kontrak yang sangat murah, dan sangat sedikit kontrak yang sangat mahal yang membawa sebagian besar nilai dolar.
- Hari kerja berpengaruh: pangsa hari yang sama pada hari Jumat berada jauh di atas hari pertengahan minggu mana pun.
Semua ini tidak menentukan apakah harus memperdagangkan produk yang premiumnya bisa menjadi nol dalam satu sore; ini menentukan kapan pasar untuk produk tersebut berada pada titik terdalam dan termurah untuk dieksekusi. Halaman kosakata DTE memuat spektrum expiration yang lebih luas.
FAQ
Apakah opsi 0DTE lebih aktif saat penutupan?
Tidak jika dibandingkan dengan keseluruhan pasar. Pada 10 Juli 2026, kontrak same-day turun menjadi 38.4% dari seluruh volume opsi pada jam penutupan — pangsa terendah hari itu — meskipun total volume opsi naik menjadi 9.78 juta kontrak, jam tersibuk ketiga dalam sesi tersebut (di belakang 13.58M pada 10:00 dan 10.86M pada 11:00). Volume 0DTE memang meningkat menjelang bel penutupan (3.75M dibandingkan puncak pagi hari sebesar 7.19M), tetapi bagian pasar lainnya naik lebih tinggi. Aliran same-day terberat terjadi pada setengah jam pertama pembukaan, yaitu 148.9 ribu kontrak per menit.
Berapa persentase volume opsi 0DTE pada hari rata-rata?
Hal ini tergantung pada hari kerja. Selama enam minggu hingga 10 Juli 2026, kontrak same-day mencakup 46.1% dari seluruh volume opsi pada hari Jumat dan 29.2% pada hari Tuesday — setiap hari perdagangan membawa volume 0DTE yang signifikan, dan kalender expiration menentukan jumlahnya.
Apakah put dan call diperdagangkan 0DTE pada waktu yang sama?
Hampir sama: keduanya mencapai puncak pada jam 10 yang sama pada 10 Juli 2026 dan keduanya menurun sepanjang sore. Pangsa put dari volume same-day terendah pada periode pembukaan (34.9%) dan berakhir pada 41.7% — tidak terlihat adanya lonjakan hedging di akhir hari.
Apakah puncak pagi hari untuk SPY sama dengan saham tunggal?
Ya. Pada hari Jumat tersebut, setiap satu dari sepuluh underlying terberat — baik ETF maupun saham tunggal — mencatat pangsa volume same-day yang lebih besar sebelum tengah hari dibandingkan 38% dari total waktu sesi yang dicakup jendela tersebut: 56.3% untuk saham tunggal NVDA, 54.4% untuk SPY.
Setiap angka di atas adalah query tersimpan dan terversi dari seluruh options tape — perluas panel apa pun untuk membaca SQL, atau analisis sesi lain pada terminal Strasmore.