Strasmore Research
學習 Matt Connor作者: Matt Connor · 更新於 2026-09-12 · data as of September 12, 2026 · refreshed weekly

隱含波動率與 Beta:兩者分別告訴你什麼

隱含波動率是選擇權市場對未來總波動的估計,Beta則是相對指數的歷史斜率。比較十檔個股,了解兩者為何可能分歧,以及如何解讀。

隱含波動率與 beta 是對同一檔股票的兩個數值進行比較,但兩者回答的是不同問題。隱含波動率是選擇權市場對未來特定期間內股價總波動幅度的估計,無論股價朝哪個方向變動。beta 則是根據歷史資料計算的迴歸斜率,只反映指數可以解釋的那部分股票過往波動。一檔股票的其中一項數值可能偏高、另一項偏低,而兩者同時正確。

Beta 實際衡量的是什麼

Beta 是將兩組報酬率序列套用線性迴歸後所得直線的斜率,這兩組序列分別是個股與指數。寫成公式就是 beta = covariance(stock returns, index returns) / variance(index returns)。Beta 為 1.30,表示在所測量的期間內,指數每變動 1%,個股平均約變動 1.3%。Beta 為 0.40,則表示個股的變動幅度約為指數的 four tenths。

每一個公布的 beta,在被引用前都包含四項選擇:個股所迴歸對照的指數、觀察期間長度、報酬率的取樣頻率,以及報酬率是否納入股息。只要改變其中一項,數值就會改變。未標示觀察期間的 beta,是一個沒有標籤的數字;兩家資料供應商對同一檔股票給出不同數值時,兩者仍可能都是正確的。

與 beta 一併使用的統計量是 R-squared,代表指數能解釋個股報酬率變異的比例,數值介於 0 到 1。Beta 提供斜率;R-squared 則說明這條線是否值得繪製。Beta 為 1.40、R-squared 為 0.65,表示個股大致跟隨指數,但波動幅度更大。若 beta 同樣為 1.40、R-squared 為 0.10,則表示個股主要自行波動,只在其上帶有微弱的指數傾向。只有前者代表適合由指數避險工具密切追蹤的個股。

隱含波動率衡量什麼

隱含波動率是使選擇權定價模型算出的價格,等於該選擇權目前市場交易價格的波動率數值。它以年化標準差報價。30%的 IV 大致代表一年內出現30%一個標準差幅度變動的定價,也約代表未來30天出現8.6%的變動,因為波動率會按照時間平方根的比例調整。我們的指南什麼是隱含波動率將逐步說明其運作機制;隱含波動率與歷史波動率的比較則介紹這項前瞻性數值與股票實際走勢之間的關係。

關鍵差異在於兩者各自計入的變動來源不同。IV 將所有變動來源納入同一個數值,包括指數全面下跌、臨床試驗結果、財測指引變更及收購要約。Beta 只計算與指數同步變動的部分。R-squared 未涵蓋的所有變動,對 Beta 而言都是不可見因素,但都會完整反映在 IV 中。

十檔家喻戶曉股票的隱含波動率與 beta

下表以 SPY(S&P 500 ETF)為基準,針對截至2026年8月21日止的12個月期間,對十檔流動性高的股票進行迴歸分析。分析執行兩次:一次使用每日收盤報酬率,另一次則使用相同期間的每週報酬率。

查詢相對 SPY 的 Beta 與 R-squared:日報酬率與週報酬率比較,截至2026年8月21日的12個月
代號日β值週β值R平方報酬筆數
COIN2.832.50.28250
TSLA2.231.920.38250
NVDA1.881.660.43250
MSFT0.941.580.14250
AAPL0.710.830.13250
GLD0.70.760.1250
TLT0.170.120.05250
JNJ-0.2-0.520.02250
KO-0.27-0.040.03250
XOM-0.51-0.930.07250
每個數據背後的精確 SQL 語法
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 DESC
自己執行這個查詢

每日斜率是根據 250 組配對交易日計算。這組股票中,每日 beta 最高的是 COIN,數值為 2.83,其 R-squared 為 0.28。最低的是 XOM,數值為 -0.51;其 R-squared 為 0.07,這才是該數值的重點:在這段期間內,指數僅能解釋該股票一小部分的波動,因此這個斜率幾乎無法說明該持倉的實際表現。

接著比較兩個 beta 欄位。在相同的12個月期間、以相同的指數為基準,將取樣頻率從每日改為每週,就足以使斜率出現變化。COIN 以每週報酬率計算為 2.5,每日報酬率則為 2.83。兩者都沒有錯,只是回答的問題略有不同。

同一批標的的選擇權市場收費

Beta 來自過去的價格。本面板則反映交易員目前支付的價格:選取距到期日20至45天、接近平價的合約,並以截至Aug 21、2026年的三週資料計算平均值。SPY 在此加入清單,作為指數參考。由於機械性原因,SPY 未出現在 Beta 面板中:以自身進行迴歸時,其 beta 為1.00,R-squared 也為1.00。

查詢近價外的隱含波動率,距到期20至45天,截至2026年8月21日前三週
代號IV(%)30日預期波動(%)合約數IV截至
COIN65.918.9684Aug 21
TSLA4111.7765Aug 21
NVDA40.311.6509Aug 21
XOM28.28.1533Aug 21
MSFT27.67.91076Aug 21
AAPL24.77.1701Aug 21
GLD23.36.73355Aug 21
JNJ22.76.5389Aug 21
KO18.65.3684Aug 21
SPY13.53.98685Aug 21
TLT11.73.31528Aug 21
每個數據背後的精確 SQL 語法
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 DESC
自己執行這個查詢

這組標的中,隱含波動率最高的是COIN,為65.9%,代表市場定價預期其30天內的單一標準差波動幅度約為18.9%。最低的是TLT,為11.7%。本面板依預期總波動幅度排列各標的。由COIN領先的 Beta 面板,則依指數能解釋的波動幅度排列。這11個標的中有兩檔是 ETF,一檔持有黃金,另一檔持有長天期美國公債。兩者都不是股票指數投資,使用相對股票指數的 beta 並不適合作為這兩檔標的的衡量工具。

市場β看不見的波動

以下將這項差距具體化。先找出 SPY 幾乎沒有變動的交易日,也就是收盤至收盤的絕對報酬率低於 0.25%。接著衡量十檔股票在完全相同交易日的表現。若 β 能解釋全部現象,指數持平就代表個股也應持平。

查詢SPY 波動小於0.25%的交易日之平均絕對日變動
代號指數持平時波動(%)完整樣本波動(%)指數持平筆數
COIN3.093.369
TSLA1.752.2769
NVDA1.321.8269
MSFT1.221.3569
XOM1.161.2469
GLD1.061.369
AAPL1.031.1369
KO0.980.8869
JNJ0.840.9169
TLT0.450.4869
每個數據背後的精確 SQL 語法
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 DESC
自己執行這個查詢

在同一個十二個月期間,這類指數近乎持平的交易日共有 69 天。在這些交易日中,COIN 的平均絕對波動為 3.09%,相較於完整樣本期間的 3.3%。這十檔股票中,在上述交易日最平靜的是 TLT,平均波動為 0.45%。β 無法解釋該欄中的任何波動,而這些波動正是選擇權賣方會據以報價的內容。

Beta 是估計值,也會隨時間變動

Beta 並不是股票像股數那樣的固定屬性。它是在特定期間內計算出的統計值,並會隨著觀察期間向前推移而變動。下圖每月初重新估算 NVDA 相對 SPY 的 beta;每個點都以此前十二個月的日報酬率計算。

查詢NVDA 相對 SPY 的 Beta:以滾動12個月期間每月重新估計
48 rows (showing 20)
月份月份標籤1年滾動β值R平方
2022-09Sep 20222.320.65
2022-10Oct 20222.260.64
2022-11Nov 20222.210.65
2022-12Dec 20222.220.71
2023-01Jan 20232.190.71
2023-02Feb 20232.190.7
2023-03Mar 20232.170.65
2023-04Apr 20232.080.63
2023-05May 20232.040.62
2023-06Jun 20232.060.51
2023-07Jul 20232.050.47
2023-08Aug 20232.080.46
2023-09Sep 20232.030.43
2023-10Oct 20232.110.43
2023-11Nov 20232.180.4
2023-12Dec 20232.050.33
2024-01Jan 202420.3
2024-02Feb 20241.950.28
2024-03Mar 20242.020.29
2024-04Apr 20242.220.29
每個數據背後的精確 SQL 語法
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.anchor
自己執行這個查詢

這條線包含 48 個月度估計值。第一個估計值涵蓋截至 Sep 2022 的年度,數值為 2.32。最新估計值涵蓋截至 Aug 2026 的期間,數值為 1.87,R-squared 為 0.44。同一檔股票、同一個指數、相同的方法,採用的觀察期間不同,結果就不同。若根據過時期間的 beta 設計避險部位,所依據的數值可能已不再反映目前資料。

隱含波動率也以另一種形式帶來相同警示。它是每個交易日都會變動的即時價格;通常應與自身的歷史水準比較,而不是孤立解讀。30% 的 IV 算高嗎?將進一步說明這種比較方式。

哪個數字對應哪項用途

Beta 用來回答指數相關問題。某個投資組合承擔多少 S&P 500 曝險?需要多大的指數部位才能抵銷這項曝險?這就是 beta weighting,而 投資組合的 beta weighting 說明了其中的計算方式。Beta 也能揭示投資組合中多個標的共同曝險於同一市場因子的情況;集中風險則從另一個角度衡量這種情況。

Implied volatility 用來回答固定期間內的單一股票問題。市場對這檔股票未來30天的波動收取多少價格?相較於該股票自身的歷史水準,這個價格偏高還是偏低?這兩個問題都不涉及指數。

兩者都無法預測方向。Beta 描述的是已經發生的共同走勢。IV 是波動幅度的價格報價,不帶正負方向。一檔 beta 為 1.8、IV 為 25 percent 的股票,與一檔 beta 為 0.2、IV 為 80 percent 的股票,都屬於一般情況。兩者承擔的是不同類型的風險,而衡量這些風險的工具也各有不同用途。

常見問題

股票可以同時具有高 implied volatility 與低 beta 嗎?

可以,而且很常見。Beta 只計算與指數同步的波動;implied volatility 則反映所有波動,包括指數完全無法反映的單一公司事件。等待某項二元結果公告的股票,即使相對廣泛指數的迴歸斜率接近零,仍可能具有非常高的 IV。

Beta 是風險的衡量指標嗎?

Beta 衡量的是一種風險:股票在選定過去期間內對特定指數的敏感度。它不反映公司特有風險,也不反映該期間以外的任何因素。兩檔 beta 相同的股票,其總波動度可能完全不同。

R-squared 能告訴你哪些 beta 無法告訴你的事?

R-squared 表示指數能解釋股票報酬變異的比例,數值介於 0 與 1 之間。R-squared 偏低表示迴歸線的配適度不佳,因此與其一同計算出的 beta,只是穿過分散點雲的斜率,不能充分描述股票的行為。

Implied volatility 能預測股票會往哪個方向移動嗎?

不能。IV 只表示幅度,不包含方向。IV 為 40% 時,代表市場定價的是一年期一個標準差、幅度約 40% 的波動;上漲或下跌皆有可能,沒有偏向任何一方。股票實際波動也可能遠高於或低於該價格所隱含的幅度。

Beta 使用哪個期間與報酬頻率計算?

沒有單一標準。常見做法包括使用一年期日報酬,或五年期月報酬;上方第一個面板也顯示,在完全相同的一年期間內,採用日頻率與週頻率取樣會得到不同斜率。只有用相同方法計算的 beta,彼此才具有可比性。

這些數字的計算方式
  • Beta 與 R-squared:使用各標的及 SPY 在截至2026年8月21日的12個月期間內之日收盤報酬與週收盤報酬;beta 為兩組報酬序列的共變異數除以 SPY 報酬的變異數,R-squared 則為兩者相關係數的平方。
  • Implied volatility:採用距到期日20至45天、履約價與標的收盤價差距在5%以內的契約;僅納入收斂求解結果,以及當日確實有交易的契約。數值為截至Aug 21的三週期間平均值。
  • 近乎持平的指數交易日:在相同12個月期間內,SPY 收盤至收盤報酬絕對值低於0.25%的交易日。
  • 滾動 beta:以 SPY 為基準,每月初使用往前追溯12個月的日報酬重新估計 NVDA 的 beta,共涵蓋48個月度觀測點。

上方每個面板都附有產出圖表的 SQL,因此計算期間與篩選條件均可在各圖表下方一鍵查看。若要計算你所關注標的的 beta 或 implied volatility,可在 Strasmore terminal 直接用自然語言提出要求。

#implied volatility#beta#risk metrics#options#portfolio