Volatilità implicita e beta: differenze e significato
Volatilità implicita e beta misurano aspetti diversi: la prima stima il movimento futuro totale, il secondo la sensibilità passata a un indice. Analisi su dieci titoli.
La volatilità implicita e il beta sono due numeri che rispondono a domande diverse sulla stessa azione. La volatilità implicita è la stima forward-looking del mercato delle opzioni sull’ampiezza del movimento complessivo atteso di un’azione in un orizzonte temporale definito, in entrambe le direzioni. Il beta è una pendenza di regressione backward-looking che misura solo la componente dei movimenti passati di un’azione spiegata da un indice. Un’azione può registrare un valore elevato per una misura e basso per l’altra, e entrambe le letture possono essere corrette nello stesso momento.
Che cosa misura davvero il beta
Il beta è la pendenza di una retta adattata a due serie di rendimenti: quella di un’azione e quella di un indice. In forma estesa, è beta = covariance(stock returns, index returns) / variance(index returns). Un beta pari a 1,30 indica che, nel periodo analizzato, l’azione si è mossa in media di circa l’1,3% per ogni variazione dell’1% dell’indice. Un beta pari a 0,40 indica che si è mossa per circa quattro decimi rispetto all’indice.
Prima di essere pubblicato, ogni beta incorpora quattro scelte: l’indice rispetto al quale viene effettuata la regressione, la durata del periodo analizzato, la frequenza con cui vengono calcolati i rendimenti e l’inclusione o meno dei dividendi nei rendimenti. Se si cambia uno solo di questi elementi, cambia anche il valore del beta. Un beta riportato senza indicare il periodo di analisi è un numero privo di contesto. Due data provider possono quindi fornire valori diversi per la stessa azione ed essere entrambi corretti.
La statistica associata al beta è l’R-squared, cioè la quota della varianza dei rendimenti dell’azione spiegata dall’indice, su una scala da 0 a 1. Il beta indica la pendenza. L’R-squared indica se la retta è realmente rappresentativa. Un beta pari a 1,40 con un R-squared di 0,65 descrive un’azione che segue in larga misura l’indice, ma con oscillazioni più ampie. Lo stesso beta di 1,40 con un R-squared di 0,10 descrive invece un’azione che si muove in modo autonomo, con una debole inclinazione verso l’indice. Solo il primo caso descrive un’azione che un hedge sull’indice riesce a seguire da vicino.
Cosa misura la volatilità implicita
La volatilità implicita è il valore di volatilità che, inserito in un modello di pricing delle opzioni, restituisce il prezzo al quale un’opzione viene scambiata in quel momento. È espressa come deviazione standard annualizzata. Un’IV del 30 percento incorpora un movimento di circa il 30 percento, pari a una deviazione standard, nell’arco di un anno e di circa l’8,6 percento nei successivi 30 giorni, perché la volatilità cresce con la radice quadrata del tempo. La nostra guida a cos’è la volatilità implicita illustra il funzionamento del calcolo, mentre volatilità implicita e volatilità storica spiega come il valore prospettico si confronta con ciò che un titolo ha effettivamente fatto.
La differenza rilevante riguarda ciò che ciascun valore misura. L’IV incorpora in un unico dato ogni fonte di movimento: un selloff generalizzato dell’indice, l’esito di uno studio clinico, una revisione della guidance o un’offerta pubblica di acquisto. Il beta misura soltanto la quota del movimento che si è verificata insieme all’indice. Tutto ciò che l’R-squared esclude resta invisibile al beta, ma viene interamente incorporato nell’IV.
Volatilità implicita e beta a confronto su dieci titoli di uso comune
Il pannello seguente regredisce dieci titoli liquidi su SPY, l’ETF sull’S&P 500, nei dodici mesi terminati il 21 agosto 2026. La stessa regressione viene eseguita due volte: una volta sui rendimenti giornalieri di chiusura e una volta sui rendimenti settimanali della stessa finestra temporale.
| simbolo | beta giornalico | beta settimanale | R quadrato | conteggio rendimenti |
|---|---|---|---|---|
| COIN | 2.83 | 2.5 | 0.28 | 250 |
| TSLA | 2.23 | 1.92 | 0.38 | 250 |
| NVDA | 1.88 | 1.66 | 0.43 | 250 |
| MSFT | 0.94 | 1.58 | 0.14 | 250 |
| AAPL | 0.71 | 0.83 | 0.13 | 250 |
| GLD | 0.7 | 0.76 | 0.1 | 250 |
| TLT | 0.17 | 0.12 | 0.05 | 250 |
| JNJ | -0.2 | -0.52 | 0.02 | 250 |
| KO | -0.27 | -0.04 | 0.03 | 250 |
| XOM | -0.51 | -0.93 | 0.07 | 250 |
L'esatto SQL dietro ogni numero
WITH
px AS
(
SELECT
ticker,
date,
toFloat64(close) AS close_px
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('SPY','AAPL','MSFT','NVDA','TSLA','COIN','KO','JNJ','XOM','GLD','TLT')
AND date >= '2025-08-22'
AND date <= '2026-08-21'
),
daily_ret AS
(
SELECT
ticker,
date,
close_px / lagInFrame(close_px) OVER (PARTITION BY ticker ORDER BY date ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) - 1 AS ret
FROM px
),
weekly_px AS
(
SELECT
ticker,
toMonday(date) AS week_start,
argMax(close_px, date) AS week_close
FROM px
GROUP BY ticker, week_start
),
weekly_ret AS
(
SELECT
ticker,
week_start,
week_close / lagInFrame(week_close) OVER (PARTITION BY ticker ORDER BY week_start ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) - 1 AS ret
FROM weekly_px
),
daily_beta AS
(
SELECT
s.ticker AS symbol,
round(covarSamp(s.ret, i.ret) / varSamp(i.ret), 2) AS beta_daily,
round(pow(corr(s.ret, i.ret), 2), 2) AS r_squared,
count() AS return_count
FROM daily_ret AS s
INNER JOIN
(
SELECT date, ret FROM daily_ret WHERE ticker = 'SPY' AND isFinite(ret)
) AS i ON i.date = s.date
WHERE s.ticker != 'SPY' AND isFinite(s.ret)
GROUP BY symbol
),
weekly_beta AS
(
SELECT
s.ticker AS symbol,
round(covarSamp(s.ret, i.ret) / varSamp(i.ret), 2) AS beta_weekly
FROM weekly_ret AS s
INNER JOIN
(
SELECT week_start, ret FROM weekly_ret WHERE ticker = 'SPY' AND isFinite(ret)
) AS i ON i.week_start = s.week_start
WHERE s.ticker != 'SPY' AND isFinite(s.ret)
GROUP BY symbol
)
SELECT
d.symbol AS symbol,
d.beta_daily AS beta_daily,
w.beta_weekly AS beta_weekly,
d.r_squared AS r_squared,
d.return_count AS return_count
FROM daily_beta AS d
INNER JOIN weekly_beta AS w ON w.symbol = d.symbol
ORDER BY beta_daily DESCOgni coefficiente beta giornaliero si basa su 250 sessioni abbinate. Il beta giornaliero più elevato del campione appartiene a COIN, con un valore di 2.83, insieme a un R-squared pari a 0.28. Il più basso appartiene a XOM, con un valore di -0.51; il suo R-squared, pari a 0.07, è il dato rilevante: in questa finestra l’indice spiegava solo una quota ridotta dei movimenti di quel titolo, quindi il coefficiente descrive solo in minima parte l’andamento della posizione.
Ora si possono confrontare le due colonne del beta. Usare rendimenti settimanali invece di quelli giornalieri, sugli stessi dodici mesi e rispetto allo stesso indice, è sufficiente per modificare il coefficiente. COIN registra 2.5 sui rendimenti settimanali, contro 2.83 su quelli giornalieri. Nessuno dei due valori è errato. Rispondono a domande leggermente diverse.
Cosa fa pagare il mercato delle opzioni sugli stessi titoli
Il beta deriva dai prezzi passati. Questo pannello riflette invece quanto pagano oggi i trader: contratti near-the-money, con scadenza tra 20 e 45 giorni, mediati sulle tre settimane che terminano il Aug 21 2026. Qui SPY entra nell’elenco come riferimento dell’indice. È assente dal pannello del beta per una ragione meccanica: regredito su se stesso, il suo beta è 1,00 e il suo R-squared è 1,00.
| simbolo | IV (%) | movimento atteso 30g (%) | conteggio contratti | IV fino a |
|---|---|---|---|---|
| COIN | 65.9 | 18.9 | 684 | Aug 21 |
| TSLA | 41 | 11.7 | 765 | Aug 21 |
| NVDA | 40.3 | 11.6 | 509 | Aug 21 |
| XOM | 28.2 | 8.1 | 533 | Aug 21 |
| MSFT | 27.6 | 7.9 | 1076 | Aug 21 |
| AAPL | 24.7 | 7.1 | 701 | Aug 21 |
| GLD | 23.3 | 6.7 | 3355 | Aug 21 |
| JNJ | 22.7 | 6.5 | 389 | Aug 21 |
| KO | 18.6 | 5.3 | 684 | Aug 21 |
| SPY | 13.5 | 3.9 | 8685 | Aug 21 |
| TLT | 11.7 | 3.3 | 1528 | Aug 21 |
L'esatto SQL dietro ogni numero
SELECT
underlying_symbol AS symbol,
round(avg(toFloat64(implied_volatility)) * 100, 1) AS iv_pct,
round(avg(toFloat64(implied_volatility)) * 100 * sqrt(30.0 / 365.0), 1) AS expected_move_30d_pct,
count() AS contract_count,
formatDateTime(max(date), '%b %e') AS iv_through
FROM global_markets.options_greeks
WHERE underlying_symbol IN ('SPY','AAPL','MSFT','NVDA','TSLA','COIN','KO','JNJ','XOM','GLD','TLT')
AND date >= '2026-08-03'
AND date <= '2026-08-21'
AND iv_converged = 1
AND volume > 0
AND days_to_expiry BETWEEN 20 AND 45
AND underlying_close > 0
AND abs(toFloat64(strike_price) / toFloat64(underlying_close) - 1) < 0.05
GROUP BY symbol
HAVING contract_count >= 25
ORDER BY iv_pct DESCLa volatilità implicita più ampia del gruppo è quella di COIN, pari a 65.9 percento. Questo valore prezza un movimento di circa 18.9 percento in 30 giorni, con una deviazione standard. La più contenuta è quella di TLT, pari a 11.7 percento. Questo pannello ordina i titoli in base al movimento totale atteso. Il pannello del beta, guidato da COIN, li ordina invece in base al movimento spiegato da un indice. Due degli undici strumenti sono ETF: uno investe in oro e uno in Treasury a lunga scadenza. Nessuno dei due è un’esposizione a un indice azionario. Per entrambi, il beta rispetto a un indice azionario è quindi lo strumento sbagliato.
La componente di movimento che il beta non riesce a cogliere
Ecco la divergenza in termini concreti. Consideriamo le sedute in cui SPY si è mosso appena, con un rendimento assoluto da chiusura a chiusura inferiore allo 0,25%, e misuriamo la performance di ciascuno dei dieci titoli esattamente in quelle giornate. Se il beta spiegasse tutto, un indice invariato implicherebbe un titolo invariato.
| simbolo | movimento con indice invariato (%) | movimento sull’intero campione (%) | conteggio indice invariato |
|---|---|---|---|
| COIN | 3.09 | 3.3 | 69 |
| TSLA | 1.75 | 2.27 | 69 |
| NVDA | 1.32 | 1.82 | 69 |
| MSFT | 1.22 | 1.35 | 69 |
| XOM | 1.16 | 1.24 | 69 |
| GLD | 1.06 | 1.3 | 69 |
| AAPL | 1.03 | 1.13 | 69 |
| KO | 0.98 | 0.88 | 69 |
| JNJ | 0.84 | 0.91 | 69 |
| TLT | 0.45 | 0.48 | 69 |
L'esatto SQL dietro ogni numero
WITH
px AS
(
SELECT
ticker,
date,
toFloat64(close) AS close_px
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('SPY','AAPL','MSFT','NVDA','TSLA','COIN','KO','JNJ','XOM','GLD','TLT')
AND date >= '2025-08-22'
AND date <= '2026-08-21'
),
daily_ret AS
(
SELECT
ticker,
date,
close_px / lagInFrame(close_px) OVER (PARTITION BY ticker ORDER BY date ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) - 1 AS ret
FROM px
),
idx AS
(
SELECT date, ret AS index_ret
FROM daily_ret
WHERE ticker = 'SPY' AND isFinite(ret)
)
SELECT
s.ticker AS symbol,
round(avgIf(abs(s.ret) * 100, abs(i.index_ret) < 0.0025), 2) AS move_on_flat_index_pct,
round(avg(abs(s.ret) * 100), 2) AS move_full_sample_pct,
countIf(abs(i.index_ret) < 0.0025) AS flat_index_count
FROM daily_ret AS s
INNER JOIN idx AS i ON i.date = s.date
WHERE s.ticker != 'SPY' AND isFinite(s.ret)
GROUP BY symbol
HAVING countIf(abs(i.index_ret) < 0.0025) > 0
ORDER BY move_on_flat_index_pct DESCNello stesso periodo di dodici mesi si sono verificate 69 sedute con un indice quasi invariato. In queste giornate, COIN si è mosso in media del 3.09 percento in termini assoluti, contro il 3.3 percento dell’intero campione. Il meno volatile dei dieci in quelle sedute, TLT, ha registrato una media del 0.45 percento. Tutto ciò che compare in quella colonna è movimento che il beta non attribuisce a nulla, ma al quale un venditore di opzioni assegna un prezzo.
Il beta è una stima e le stime cambiano
Il beta non è una caratteristica del titolo come il numero di azioni. È una statistica calcolata su una finestra temporale e cambia man mano che la finestra scorre. Il pannello seguente ricalcola il beta di NVDA rispetto a SPY all’inizio di ogni mese. Ogni punto è costruito sui rendimenti giornalieri dei dodici mesi precedenti.
| mese | etichetta mese | beta mobile a 1 anno | R quadrato |
|---|---|---|---|
| 2022-09 | Sep 2022 | 2.32 | 0.65 |
| 2022-10 | Oct 2022 | 2.26 | 0.64 |
| 2022-11 | Nov 2022 | 2.21 | 0.65 |
| 2022-12 | Dec 2022 | 2.22 | 0.71 |
| 2023-01 | Jan 2023 | 2.19 | 0.71 |
| 2023-02 | Feb 2023 | 2.19 | 0.7 |
| 2023-03 | Mar 2023 | 2.17 | 0.65 |
| 2023-04 | Apr 2023 | 2.08 | 0.63 |
| 2023-05 | May 2023 | 2.04 | 0.62 |
| 2023-06 | Jun 2023 | 2.06 | 0.51 |
| 2023-07 | Jul 2023 | 2.05 | 0.47 |
| 2023-08 | Aug 2023 | 2.08 | 0.46 |
| 2023-09 | Sep 2023 | 2.03 | 0.43 |
| 2023-10 | Oct 2023 | 2.11 | 0.43 |
| 2023-11 | Nov 2023 | 2.18 | 0.4 |
| 2023-12 | Dec 2023 | 2.05 | 0.33 |
| 2024-01 | Jan 2024 | 2 | 0.3 |
| 2024-02 | Feb 2024 | 1.95 | 0.28 |
| 2024-03 | Mar 2024 | 2.02 | 0.29 |
| 2024-04 | Apr 2024 | 2.22 | 0.29 |
L'esatto SQL dietro ogni numero
WITH
px AS
(
SELECT
ticker,
date,
toFloat64(close) AS close_px
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('SPY','NVDA')
AND date >= '2021-08-01'
AND date <= '2026-08-21'
),
daily_ret AS
(
SELECT
ticker,
date,
close_px / lagInFrame(close_px) OVER (PARTITION BY ticker ORDER BY date ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) - 1 AS ret
FROM px
),
paired AS
(
SELECT
s.date AS d,
s.ret AS stock_ret,
i.ret AS index_ret
FROM daily_ret AS s
INNER JOIN
(
SELECT date, ret FROM daily_ret WHERE ticker = 'SPY' AND isFinite(ret)
) AS i ON i.date = s.date
WHERE s.ticker = 'NVDA' AND isFinite(s.ret)
),
anchors AS
(
SELECT DISTINCT toStartOfMonth(d) AS anchor
FROM paired
WHERE d >= '2022-09-01'
)
SELECT
formatDateTime(a.anchor, '%Y-%m') AS month,
formatDateTime(a.anchor, '%b %Y') AS month_label,
round(covarSamp(p.stock_ret, p.index_ret) / varSamp(p.index_ret), 2) AS rolling_beta_1y,
round(pow(corr(p.stock_ret, p.index_ret), 2), 2) AS r_squared
FROM anchors AS a, paired AS p
WHERE p.d < a.anchor
AND p.d >= subtractYears(a.anchor, 1)
GROUP BY a.anchor
ORDER BY a.anchorLa linea contiene 48 stime mensili. La prima, relativa all’anno terminato a Sep 2022, indica 2.32. L’ultima, relativa al periodo terminato a Aug 2026, indica 1.87, con un R-squared pari a 0.44. Stesso titolo, stesso indice, stesso metodo, finestra temporale diversa. Una copertura dimensionata sulla base di un beta calcolato su una finestra ormai obsoleta si basa su un numero che i dati hanno già superato.
La volatilità implicita presenta lo stesso problema in un’altra forma. È un prezzo corrente che cambia a ogni seduta, e l’IV viene normalmente valutata rispetto alla propria storia, non in modo isolato. Il 30 per cento di IV è alto? analizza questo confronto.
Quale numero risponde a quale domanda
La beta risponde alle domande sull’indice. Quanta esposizione all’S&P 500 ha un portafoglio e quale posizione sull’indice serve per compensarla? Questo è il beta weighting, e l’applicazione del beta weighting a un portafoglio ne illustra i calcoli. È anche il numero che mette in evidenza un portafoglio composto da titoli tutti esposti allo stesso fattore di mercato: è la situazione che il rischio di concentrazione misura dall’altro lato.
La volatilità implicita risponde alle domande sui singoli titoli nell’ambito di un orizzonte temporale fisso. Quanto sta chiedendo il mercato per l’oscillazione di questo titolo nei prossimi 30 giorni, e questo prezzo è alto o basso rispetto alla storia dello stesso titolo? In nessuna delle due domande entra un indice.
Nessuno dei due numeri prevede la direzione del mercato. La beta descrive una co-movimentazione già avvenuta. L’IV è un prezzo per l’ampiezza del movimento, quotato senza segno. Un titolo con una beta pari a 1,8 e un’IV del 25%, così come un titolo con una beta pari a 0,2 e un’IV dell’80%, rientra nella norma. I due titoli presentano rischi di tipo diverso, misurati con strumenti progettati per funzioni diverse.
FAQ
Un’azione può avere una volatilità implicita elevata e un beta basso?
Sì, ed è comune. Il beta considera soltanto i movimenti che seguono l’indice, mentre la volatilità implicita incorpora tutti i movimenti, compreso un evento specifico della società di cui l’indice non sa nulla. Un’azione in attesa di un annuncio binario può presentare una IV molto elevata, mentre la pendenza della regressione rispetto a un indice ampio resta vicina allo zero.
Il beta è una misura del rischio?
Il beta misura un solo tipo di rischio: la sensibilità a un indice scelto, nell’arco temporale passato considerato. Non riflette il rischio specifico della società né ciò che si verifica al di fuori di quella finestra. Due azioni con beta identici possono avere una volatilità complessiva completamente diversa.
Che cosa indica l’R-squared che il beta non mostra?
L’R-squared indica la quota della varianza dei rendimenti di un’azione spiegata dall’indice, su una scala da 0 a 1. Un R-squared basso significa che la retta di regressione si adatta male ai dati. Il beta calcolato insieme a essa è quindi una pendenza tracciata attraverso una nuvola di punti dispersi, non una descrizione affidabile del comportamento dell’azione.
La volatilità implicita prevede in quale direzione si muoverà un’azione?
No. La IV misura l’ampiezza del movimento, senza indicarne la direzione. Una IV del 40 percento prezza un movimento di una deviazione standard del 40 percento su un anno, al rialzo o al ribasso senza privilegiare nessuna delle due direzioni. L’azione può comunque muoversi molto più o molto meno di quanto indicato dal prezzo.
Quale finestra temporale e quale frequenza dei rendimenti vengono utilizzate per calcolare il beta?
Non esiste uno standard unico. Le convenzioni più comuni vanno da un anno di rendimenti giornalieri a cinque anni di rendimenti mensili. Il primo pannello sopra mostra inoltre che il campionamento giornaliero e quello settimanale, applicati allo stesso anno, producono pendenze diverse. Un beta è confrontabile soltanto con un altro beta calcolato nello stesso modo.
Come sono stati misurati questi valori
- Beta e R-squared: rendimenti di chiusura giornalieri e settimanali per ciascun titolo e per SPY nei dodici mesi terminati il 21 agosto 2026. Il beta è stato calcolato come la covarianza delle due serie di rendimenti divisa per la varianza dei rendimenti di SPY; l’R-squared è il quadrato della loro correlazione.
- Volatilità implicita: contratti con una scadenza compresa tra 20 e 45 giorni e uno strike entro il 5 percento dalla chiusura del sottostante, considerando soltanto le soluzioni convergenti e i contratti scambiati in quella seduta. I valori sono medie delle tre settimane terminate il Aug 21 2026.
- Sedute con indice quasi invariato: sedute in cui il rendimento di SPY tra una chiusura e l’altra è stato inferiore allo 0,25 percento in valore assoluto, negli stessi dodici mesi.
- Beta mobile: NVDA rispetto a SPY, ricalcolato all’inizio di ogni mese sui dodici mesi precedenti di rendimenti giornalieri, per un totale di 48 rilevazioni mensili.
Ogni pannello sopra è corredato dall’SQL che lo ha prodotto. La finestra temporale e i filtri sono quindi disponibili con un solo clic sotto ciascun grafico. Per misurare il beta o la volatilità implicita di un titolo che segui, richiedilo in linguaggio naturale sul terminale Strasmore.