Cos'è 0DTE e come funzionano le opzioni
Scopri il significato di 0DTE e come operare con le opzioni a scadenza giornaliera. Analisi tecnica dei contratti con scadenza nello stesso giorno del trading.
Le opzioni 0DTE sono contratti scambiati nell'ultimo giorno della loro vita — zero days to expiration, con scadenza alla chiusura del pomeriggio stesso. Ogni opzione quotata diventa 0DTE nella sua data di scadenza; la denominazione si è diffusa quando i principali prodotti indicizzati hanno iniziato a quotare contratti con scadenza ogni giorno di trading. Lunedì 6 luglio 2026, i contratti con scadenza in giornata hanno rappresentato il 38.8% di tutto il volume delle opzioni negli Stati Uniti. Tutti i dati seguenti sono misurati tramite il tape, includendo un contratto reale.
Cosa significa 0DTE?
DTE è l'abbreviazione utilizzata dai trader per days to expiration: i giorni di calendario rimanenti alla scadenza di un'opzione. Un'opzione con 30-DTE ha un mese di vita residua; un'opzione 0-DTE — "zero days to expiry", un'opzione a scadenza giornaliera — scade oggi. Alla chiusura, un'opzione in-the-money viene esercitata o liquidata in contanti; un'opzione out-of-the-money decade senza alcun valore.
0DTE non è un prodotto separato: la call su SPY che era un contratto con 30-DTE all'inizio di giugno diventa 0-DTE nel suo ultimo giorno di trading. L'intera scala delle scadenze è spiegata in cosa significa DTE nelle opzioni. Il volume indicato si riferisce ai contratti scambiati, non alle posizioni aperte — consultare volume delle opzioni vs. open interest.
Quali opzioni scadono ogni giorno?
Per decenni, le opzioni azionarie quotate negli Stati Uniti scadevano una volta al mese, il terzo venerdì; le scadenze settimanali si sono diffuse durante gli anni 2000 e 2010. Nel 2022, le borse hanno completato il calendario per i principali prodotti indicizzati: Cboe ha aggiunto le scadenze di martedì e giovedì per l'S&P 500 (SPX) in quella primavera, seguite a novembre dalle quotazioni di martedì e giovedì per gli ETF SPY e QQQ. Dalla fine del 2022, SPX, SPY e QQQ hanno introdotto una scadenza per ogni giorno di trading della settimana; anche l'ETF Russell 2000 (IWM) scade quotidianamente. Le singole azioni hanno mantenuto il vecchio ritmo, quindi un venerdì era un tempo l'unico giorno in cui un'opzione azionaria poteva essere 0DTE.
Qual è la quota di volume delle opzioni 0DTE?
Il pannello suddivide ogni contratto scambiato quel lunedì — una sessione completa verificata, dati confermati nelle note — in base ai giorni alla scadenza, estratti dal ticker OCC.
L'esatto SQL dietro ogni numero
SELECT multiIf(dte = 0, '0 (expires today)',
dte = 1, '1 day',
dte <= 7, '2-7 days',
dte <= 30, '8-30 days',
'31+ days') AS days_to_expiry,
round(sum(volume) / 1e6, 2) AS contracts_mm,
round(100.0 * sum(volume) / sum(sum(volume)) OVER (), 1) AS pct_of_volume
FROM (
SELECT toFloat64(volume) AS volume,
dateDiff('day',
toDate(toTimeZone(window_start, 'America/New_York')),
toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6)))) AS dte
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-07-06 08:00:00')
AND window_start < toDateTime('2026-07-07 04:00:00')
AND toDate(toTimeZone(window_start, 'America/New_York')) = toDate('2026-07-06')
)
WHERE dte >= 0
GROUP BY days_to_expiry
ORDER BY min(dte)I contratti con scadenza in giornata rappresentano la quota maggiore: 23.52 milioni, ovvero il 38.8% del totale di 60.64 milioni della sessione — superando i 18.6% scambiati con più di un mese alla scadenza. La quota meno attiva è la successiva: i contratti con un giorno rimanente hanno registrato 4.5%. L'attività a breve termine si concentra nella sessione di scadenza stessa, non nel giorno precedente.
Analisi su un intero mese:
L'esatto SQL dietro ogni numero
SELECT round(sum(toFloat64(volume)) / 1e6, 1) AS contracts_mm,
round(sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / 1e6, 1) AS zero_dte_contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 1) AS zero_dte_pct,
uniqExact(toDate(toTimeZone(window_start, 'America/New_York'))) AS sessions
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-06-01 00:00:00')
AND window_start < toDateTime('2026-07-01 00:00:00')Su 21 sessioni di giugno e 1477.9 milioni di contratti, 506.3 milioni — 34.3% — sono stati scambiati il giorno della scadenza. Il nostro riepilogo del mercato del primo semestre 2026 ha eseguito questa scansione mese per mese, rilevando la quota di scadenza in giornata in crescita dai livelli di gennaio fino al picco di giugno.
Come i trader strutturano un trade 0DTE
Il "trading 0DTE" non è un'unica operazione. Quattro strutture coprono la maggior parte dei volumi, ognuna composta da una combinazione di call e put con scadenza in giornata. Solo definizioni, non raccomandazioni.
- Direzionale a gamba singola. Si acquista una call (genera profitto sopra lo strike) o una put (sotto lo strike) con scadenza in giornata. La perdita massima per l'acquirente è il premio pagato; il contratto vale zero alla chiusura, a meno che non finisca in the money.
- Credit spread (verticale). Si vende un'opzione e si acquista un'altra opzione dello stesso tipo e scadenza, più economica e più out-of-the-money. Il venditore incassa la differenza — il credit — e la trattiene se il sottostante chiude nella direzione corretta; la gamba long limita la perdita alla differenza tra gli strike meno il credit ("rischio definito").
- Iron condor. Due credit spread contemporaneamente: un call spread sopra il mercato e un put spread sotto. Il trader trattiene entrambi i credit se il sottostante chiude tra gli strike short; la perdita è comunque limitata e viene liquidata alla chiusura del pomeriggio.
- Gamma scalping. Si scambia il sottostante contro una posizione in opzioni per mantenere la delta-neutrality mentre la sensibilità oscilla. Il giorno della scadenza queste oscillazioni sono più rapide e l'hedging è più frequente — un motivo per cui i market makers sono così attivi sui contratti in giornata.
Ogni gamba comporta uno spread bid-ask e una commissione in entrata e in uscita — quanto costa fare trading di opzioni misura questo costo, e un condor lo paga quattro volte.
Perché le opzioni 0DTE si muovono così velocemente: theta e gamma
Due termini della matematica delle opzioni spiegano la maggior parte della differenza: si tratta di meccanica dei contratti, non di previsioni.
Theta è il decadimento temporale. Il prezzo di un'opzione ha due componenti: valore intrinseco (il valore attuale dell'esercizio) e valore temporale (il premio per ciò che potrebbe ancora accadere). Il valore temporale deve azzerarsi alla scadenza; nell'ultimo giorno, ciò che resta svanisce in poche ore, non in settimane.
Gamma indica la velocità con cui il delta di un'opzione — la sua sensibilità al prezzo del sottostante — cambia. Vicino alla scadenza, il delta di un'opzione at-the-money oscilla rapidamente tra valori prossimi allo zero e prossimi all'uno quando il sottostante attraversa lo strike.
Theta, gamma e delta sono tre delle opzioni Greeks — le sensibilità standard quotate da ogni desk di opzioni. Per l'elenco completo misurato sui dati reali, consulta le opzioni Greeks, spiegate, poi gli approfondimenti su theta, gamma e delta.
Entrambi, sui dati di mercato. Di tutti i contratti SPY scambiati quel lunedì con scadenza in giornata, i due più attivi sono stati la call da $751 (1.08 milioni di contratti) e la put da $750 (0.99 milioni); la classifica è riportata nelle note ai dati sottostanti. Il panel campiona entrambi ogni trenta minuti rispetto alla distanza di SPY dallo strike di $751. SPY ha aperto a $748.74.
L'esatto SQL dietro ogni numero
SELECT formatDateTime(toTimeZone(window_start, 'America/New_York'), '%H:%i') AS et_time,
round(anyIf(close, ticker = 'O:SPY260706C00751000'), 2) AS call_751_price,
round(anyIf(close, ticker = 'O:SPY260706P00750000'), 2) AS put_750_price,
round(anyIf(close, ticker = 'SPY') - 751, 2) AS spy_vs_751_strike
FROM (
SELECT window_start, ticker, close
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-07-06 09:30:00', 'America/New_York')
AND window_start < toDateTime('2026-07-06 16:01:00', 'America/New_York')
AND ticker IN ('O:SPY260706C00751000', 'O:SPY260706P00750000')
UNION ALL
SELECT window_start, ticker, close
FROM global_markets.delayed_stocks_minute_aggs
WHERE window_start >= toDateTime('2026-07-06 09:30:00', 'America/New_York')
AND window_start < toDateTime('2026-07-06 16:01:00', 'America/New_York')
AND ticker = 'SPY'
)
WHERE toMinute(window_start) % 30 = 0
GROUP BY et_time, window_start
ORDER BY window_startAll'apertura delle 09:30, la call era scambiata a $0.7 e la put a $1.88, con SPY a $-1.75 dallo strike (terza colonna). Un contratto copre 100 azioni: decine di dollari di premio contro 100 azioni di un ETF scambiato vicino a $748.74. Questo è il leverage.
Theta agisce durante la parte centrale della giornata. Alle 11:30 la call era a $0.57 e la put a $0.48, con SPY a $-0.29 dallo strike. Due ore dopo, alle 13:30, SPY era ancora entro un dollaro da esso ($-0.52) — e la call era scesa a $0.42, mentre la put si trovava quasi dove era iniziata a $0.47. La call non aveva valore intrinseco in nessuno dei due campionamenti e SPY ha concluso il periodo dove era iniziato: è stato solo il tempo a consumare il premio.
Gamma agisce nel pomeriggio. SPY ha superato lo strike di $751 dopo le 14:00 e si è concluso a $0.47 sopra di esso — molto meno dello 0,5% nell'ETF. In quell'intervallo la call è passata da $0.29 a $1.29 alle 15:30 e la put è scesa da $0.52 a $0.03: un piccolo movimento dell'indice, un guadagno percentuale a tre cifre per la call e un crollo quasi totale per la put, in direzioni opposte nella stessa giornata.
Cosa succede alla chiusura delle 16:00?
Al suono della campana il calcolo è semplice: un contratto same-day vale il suo valore intrinseco, o nulla. La riga 16:00 sopra indica l'ultimo minuto: la call ha registrato $0.57, vicino al valore intrinseco di $0.47 con cui si è chiusa; la put, con SPY sopra lo strike di $750, ha registrato $0.01. Estendendo il dato a tutti gli strike same-day di SPY, ordinati rispetto alla chiusura di SPY a $751.47:
L'esatto SQL dietro ogni numero
WITH (
SELECT round(argMax(close, window_start), 2)
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= toDateTime('2026-07-06 09:30:00', 'America/New_York')
AND window_start < toDateTime('2026-07-06 16:01:00', 'America/New_York')
) AS spy_close
SELECT if(expired_at_zero, 'Out of the money at the close (expired at zero)',
'In the money at the close (settled with value)') AS at_the_bell,
count() AS contracts,
round(sumIf(vol, opt_type = 'C') / 1e6, 2) AS call_contracts_mm,
round(sumIf(vol, opt_type = 'P') / 1e6, 2) AS put_contracts_mm,
round(100.0 * sum(vol) / sum(sum(vol)) OVER (), 1) AS pct_of_spy_zero_dte_volume
FROM (
SELECT substring(ticker, length(ticker) - 8, 1) AS opt_type,
toFloat64(substring(ticker, length(ticker) - 7, 8)) / 1000 AS strike,
(opt_type = 'C' AND strike > spy_close) OR (opt_type = 'P' AND strike < spy_close) AS expired_at_zero,
sum(toFloat64(volume)) AS vol
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-07-06 08:00:00')
AND window_start < toDateTime('2026-07-07 04:00:00')
AND startsWith(ticker, 'O:SPY260706')
GROUP BY ticker, opt_type, strike, expired_at_zero
)
GROUP BY expired_at_zero
ORDER BY expired_at_zero DESC86 degli strike same-day di SPY è terminato out of the money ed è scaduto a zero, rappresentando 66.9% del volume same-day di SPY della sessione — 3.91 milioni di put e 1.78 milioni di call. Le 33.1% che sono finite in the money si sono distribuite su 163 strike.
Analizzando il dato in entrambe le direzioni: ogni contratto nella riga superiore ha rappresentato una perdita totale per chi era long al suono della campana, e l'intero premio è rimasto a chi era short. Il volume non indica la proprietà — il tape non può dire chi possedeva questi contratti alle 16:00. Indica però che la maggior parte del volume same-day di SPY della sessione era concentrata in contratti finiti a zero. Data l'entità di entrambe le code, i mille dollari migliori e peggiori di giugno 2026 hanno rappresentato un registro a posteriori di un intero mese.
Il settlement varia a seconda del prodotto: le opzioni su SPY, QQQ e singoli titoli si regolano in azioni, quindi un contratto in the money detenuto fino alla scadenza diventa una posizione azionaria: una call SPY da $751 consegna 100 azioni a quello strike. Le opzioni SPX si regolano in cash.
Quali ticker dominano il trading 0DTE?
Ogni ticker di opzioni contiene una root — il prodotto di appartenenza. Il pannello classifica le root in base al volume intraday.
L'esatto SQL dietro ogni numero
SELECT root AS underlying,
round(sum(volume) / 1e6, 2) AS zero_dte_contracts_mm,
round(100.0 * sum(volume) / sum(sum(volume)) OVER (), 1) AS pct_of_zero_dte_volume
FROM (
SELECT substring(ticker, 3, length(ticker) - 17) AS root,
toFloat64(volume) AS volume
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-07-06 08:00:00')
AND window_start < toDateTime('2026-07-07 04:00:00')
AND toDate(toTimeZone(window_start, 'America/New_York')) = toDate('2026-07-06')
AND toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) = toDate(toTimeZone(window_start, 'America/New_York'))
)
WHERE root != 'SPCX'
GROUP BY root
ORDER BY sum(volume) DESC
LIMIT 8I due principali ETF sull'indice occupano la cima della lista: SPY ha registrato il 36.1% del volume intraday della sessione (8.49 milioni di contratti), QQQ un altro 21.2%. SPXW — la root per le opzioni settimanali sull'indice S&P 500 con regolamento in contanti — ha segnato 11.3%, IWM 3.5%. Il dato rilevante: TSLA è stata la più grande root single-stock intraday con 11.9%, seguita da NVDA, AAPL e META — un lunedì, un giorno in cui nessuna opzione azionaria sarebbe scaduta secondo la vecchia convenzione del solo venerdì.
Chi scambia opzioni 0DTE e quando?
Il tape registra contratti, prezzi, dimensioni e orari, mai le identità. Le borse e i regolatori descrivono il flusso come un mix: desk istituzionali che gestiscono spread e hedge, e trader retail che assumono posizioni direzionali. Il "quando" è misurabile: quando si scambiano opzioni 0DTE indica che il flusso intraday è più rapido nella prima mezz'ora di apertura, non nell'ultima.
Note sui dati: sessione e ricevute di parsing
SPY ha registrato 390 candele minute della sessione regolare il 6 luglio — una sessione completa dalle 9:30 alle 16:00 — aprendo a $748.74 e chiudendo a $751.47. Volume delle opzioni la cui scadenza non è stata parsata dal ticker OCC: 0%. Volume su contratti oltre la loro scadenza: 0%. I timestamp sono in UTC, convertiti in Eastern prima di ogni confronto di date; il pannello del percorso dei contratti legge le chiusure delle candele minute (prezzi dell'ultima transazione, non mid-quote).
I due contratti seguiti dalla sezione theta/gamma sono i più attivi per lo strike SPY della sessione, classificati qui per numero di contratti scambiati.
L'esatto SQL dietro ogni numero
SELECT if(opt_type = 'P', 'Put', 'Call') AS side,
toString(intDiv(strike_thousandths, 1000)) AS strike,
round(contracts / 1e6, 2) AS contracts_mm
FROM (
SELECT substring(ticker, length(ticker) - 8, 1) AS opt_type,
toUInt32OrZero(substring(ticker, length(ticker) - 7, 8)) AS strike_thousandths,
sum(toFloat64(volume)) AS contracts
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-07-06 08:00:00')
AND window_start < toDateTime('2026-07-07 04:00:00')
AND startsWith(ticker, 'O:SPY260706')
GROUP BY ticker, opt_type, strike_thousandths
ORDER BY contracts DESC
LIMIT 2
)
ORDER BY contracts DESCL'esatto SQL dietro ogni numero
WITH (
SELECT countIf(window_start >= toDateTime('2026-07-06 09:30:00', 'America/New_York')
AND window_start < toDateTime('2026-07-06 16:00:00', 'America/New_York'))
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= toDateTime('2026-07-06 00:00:00', 'America/New_York')
AND window_start < toDateTime('2026-07-07 00:00:00', 'America/New_York')
) AS spy_bars,
(
SELECT round(argMin(open, window_start), 2)
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= toDateTime('2026-07-06 09:30:00', 'America/New_York')
AND window_start < toDateTime('2026-07-06 16:01:00', 'America/New_York')
) AS spy_open,
(
SELECT round(argMax(close, window_start), 2)
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND window_start >= toDateTime('2026-07-06 09:30:00', 'America/New_York')
AND window_start < toDateTime('2026-07-06 16:01:00', 'America/New_York')
) AS spy_close
SELECT spy_bars AS spy_session_bars_jul06,
spy_open AS spy_open_jul06,
spy_close AS spy_close_jul06,
round(sum(toFloat64(volume)) / 1e6, 2) AS total_contracts_mm,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) IS NULL) / sum(toFloat64(volume)), 2) AS unparsable_expiry_pct,
round(100.0 * sumIf(toFloat64(volume), toDateOrNull(concat('20', substring(ticker, length(ticker) - 14, 6))) < toDate(toTimeZone(window_start, 'America/New_York'))) / sum(toFloat64(volume)), 2) AS past_expiry_pct
FROM global_markets.options_minute_aggs
WHERE window_start >= toDateTime('2026-07-06 08:00:00')
AND window_start < toDateTime('2026-07-07 04:00:00')
AND toDate(toTimeZone(window_start, 'America/New_York')) = toDate('2026-07-06')FAQ sulle opzioni 0DTE
Cosa sono le opzioni zero days to expiry (0DTE)?
Zero days to expiry — 0DTE — è un'opzione scambiata nella propria data di scadenza: alla chiusura di quel giorno viene esercitata per il suo valore intrinseco o scade a zero. "Zero days to expiration", "same-day options" e "dailies" indicano lo stesso concetto — una fase del ciclo di vita di un contratto, non un prodotto specifico. SPX, SPY, QQQ e IWM ne presentano una per ogni giorno di trading; ogni titolo scambiabile ha le proprie opzioni nelle venerdì di scadenza.
Qual è la quota di volume delle opzioni 0DTE?
Nell'intero mercato delle opzioni statunitense, i contratti scambiati nella propria giornata di scadenza hanno rappresentato il 34.3% del volume di giugno 2026 — 506.3 milioni su 1477.9 milioni di contratti. Lunedì 6 luglio 2026, la quota same-day è stata del 38.8%.
È necessaria un'approvazione speciale per fare trading su opzioni 0DTE?
Sì. I contratti 0DTE rientrano nel normale processo di approvazione delle opzioni del broker, che si articola su livelli: acquisto di call e put a un livello inferiore, spread e condor a un livello superiore, vendita scoperta (naked) a un livello ancora più alto — generalmente con un conto margin e un saldo minimo. L'acquisto e la vendita dello stesso contratto all'interno di una singola sessione costituisce un day trade; pertanto, un trader frequente di 0DTE rientra nella regola statunitense pattern-day-trader: quattro o più day trade in cinque giorni lavorativi richiedono un equity di 25.000 dollari nel conto margin. I livelli variano a seconda del broker.
Le opzioni 0DTE sono più rischiose delle opzioni a lunga scadenza?
Esse comprimono gli stessi esiti in una singola sessione: il valore temporale decade in poche ore, la gamma è massima vicino allo strike e un contratto out-of-the-money scade senza valore alla chiusura — con una perdita totale del premium. Le linee guida per gli investitori di FINRA segnalano il trading di opzioni a breve scadenza.
Ogni pannello sopra è una query memorizzata — espandi la SQL sotto ogni tabella, oppure poni la stessa domanda in linguaggio naturale sul terminale Strasmore.