Strasmore Research
学習 Matt Connor著者: Matt Connor ・更新: 2026-08-31 · data as of August 31, 2026 · refreshed weekly

インプライド・ボラティリティとベータの違い

インプライド・ボラティリティとベータの違いを解説します。将来の総変動と指数に対する過去の連動性を、10銘柄の測定結果で比較します。

インプライド・ボラティリティとベータの比較は、同じ銘柄について異なる問いに答える二つの数値を比べるものです。インプライド・ボラティリティは、オプション市場が示す将来予想です。一定期間に株価が方向を問わず、合計でどの程度動くかを表します。ベータは過去のデータに基づく回帰係数です。株価の過去の値動きのうち、指数で説明できる部分だけを捉えます。一方が高く、もう一方が低い銘柄もあります。その場合でも、両方の数値が同時に正しいことはあります。

ベータが実際に測定するもの

ベータは、株式と指数という二つのリターン系列に当てはめた直線の傾きです。式で示すと、beta = covariance(stock returns, index returns) / variance(index returns)です。ベータが1.30なら、測定期間中、指数が1%動くごとに、その株式は平均して約1.3%動いたことを示します。ベータが0.40なら、指数の動きの約四割にとどまったことを示します。

公表されるベータには、引用される前に四つの選択が組み込まれています。どの指数に対して株式を回帰するか、測定期間をどれだけ取るか、リターンをどの頻度でサンプリングするか、そして配当をリターンに含めるかです。いずれか一つを変えるだけで、数値は変わります。測定期間を伴わないベータは、条件が示されていない数値です。同じ株式についてデータ提供会社二社の数値が異なっていても、双方が正しい場合があります。

ベータとともに示される統計値がR-squaredです。これは、株式のリターンの分散のうち、指数で説明できる割合を、0から1の尺度で示します。ベータは傾きを示します。R-squaredは、その直線を引く意味があるかを示します。R-squaredが0.65でベータが1.40なら、その株式はおおむね指数に連動しながら、値動きの振幅が大きいことを示します。同じベータ1.40でも、R-squaredが0.10なら、その株式は独自に動き、そこに指数の影響がわずかに加わっている状態です。指数ヘッジが密接に追随できる株式を示すのは、前者だけです。

インプライド・ボラティリティが示すもの

インプライド・ボラティリティ(IV)とは、オプション価格モデルに現在の市場価格を返させるボラティリティの数値です。年率換算の標準偏差で示します。IVが30%なら、1年間ではおおむね30%の1標準偏差の変動、今後30日間では約8.6%の変動を織り込んだ価格になります。ボラティリティは時間の平方根に比例して拡大・縮小するためです。インプライド・ボラティリティとは何かでは仕組みを説明し、インプライド・ボラティリティとヒストリカル・ボラティリティの違いでは、予想値が株価の実際の過去の値動きとどう対比されるかを解説しています。

重要なのは、それぞれの数値が何を捉えているかの違いです。IVは、指数全体の下落、臨床試験の結果発表、業績見通しの変更、買収提案など、値動きのあらゆる要因を一つの数値に織り込みます。ベータが捉えるのは、指数と連動して動いた部分だけです。R二乗が説明しない部分は、ベータからは見えませんが、IVにはすべて織り込まれています。

主要10銘柄のインプライド・ボラティリティとベータ

下図では、2026年8月21日までの12カ月間を対象に、流動性の高い10銘柄をSPY(S&P 500 ETF)に対して回帰分析しています。同じ期間について、日次の終値リターンと週次リターンの2通りで同じ回帰を実施しました。

クエリSPYに対するベータとR-squared:日次リターン対週次、2026年8月21日までの12か月
シンボル日次ベータ週次ベータ決定係数リターン件数
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組の対応するセッションに基づいています。この中で日次ベータが最も高いのはCOINで、ベータは2.83、R二乗は0.28です。最も低いのはXOMで、ベータは-0.51です。この銘柄ではR二乗の0.07が重要です。この期間、指数がその銘柄の値動きを説明した割合は小さく、傾きだけではポジションの動きをほとんど説明できません。

次に、2つのベータ列を比較します。同じ12カ月間、同じ指数を対象にしていても、日次ではなく週次で観測すると傾きは変わります。COINの週次リターンに基づく値は2.5で、日次リターンでは2.83です。どちらも誤りではありません。両者は、わずかに異なる問いに答えています。

同じ銘柄についてオプション市場が織り込む水準

ベータは過去の価格から算出する。一方、このパネルは現在トレーダーが支払っている価格から算出する。満期までの期間が20~45日のアット・ザ・マネー近辺のコントラクトを対象に、Aug 19, 2026年までの3週間の平均値を用いている。ここでは指数の基準としてSPYも加えている。ベータのパネルにSPYがないのは、機械的な理由による。SPY自身に対して回帰すれば、ベータは1.00、R-squaredは1.00になるためだ。

クエリアット・ザ・マネー近辺のインプライド・ボラティリティ、満期まで20〜45日、2026年8月21日までの3週間
シンボルIV (%)30日予想変動率 (%)契約件数IV通過時点
COIN65.518.8598Aug 19
TSLA4111.7653Aug 19
NVDA40.311.6437Aug 19
XOM28.28.1463Aug 19
MSFT27.88922Aug 19
AAPL24.87.1599Aug 19
GLD22.96.62780Aug 19
JNJ22.86.5332Aug 19
KO18.65.3574Aug 19
SPY13.53.97451Aug 19
TLT11.73.41305Aug 19
各数値の背後にある正確な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.5パーセントとなっている。これは30日間で約18.8パーセントの1標準偏差の値動きを織り込む水準だ。最も狭いのはTLTで、11.7パーセントとなっている。このパネルは、予想される値動きの総量で銘柄を順位付けしている。一方、COINが先頭に立つベータのパネルは、指数が説明する値動きで順位付けしている。11銘柄のうち2銘柄はETFで、金を保有するものと、長期国債を保有するものが1銘柄ずつある。いずれも株価指数への投資ではないため、株価指数に対するベータは両銘柄に適した指標ではない。

ベータでは捉えられない値動き

この乖離を具体的に見てみます。SPYの値動きがほとんどなかったセッション、つまり終値ベースの騰落率の絶対値が0.25%未満だった日を抽出し、その日に10銘柄がそれぞれどのように動いたかを測定します。ベータがすべてを説明するなら、指数が横ばいの日には個別株も横ばいになるはずです。

クエリ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
自分で実行する

同じ12カ月間に、このような指数のほぼ横ばいのセッションは69ありました。その日にCOINは平均3.09%、絶対値ベースで動きました。全サンプルでは3.3%でした。その日に10銘柄の中で最も値動きが小さかったTLTでも、平均0.45%動きました。この列に示された値動きは、ベータでは何もないものとして扱われます。しかし、オプションの売り手はその値動きに対して価格を提示します。

ベータは推計値であり、推計値は動く

ベータは、株式数のように銘柄に固有の属性ではない。一定期間のデータから算出する統計値であり、対象期間が前に進むにつれて変化する。以下のパネルでは、各月の初めにNVDAのSPYに対するベータを再推計している。各時点の値は、その直前十二カ月の日次リターンから算出したものだ。

クエリSPYに対するNVDAのベータ、12か月のローリング期間で毎月再推定
48 rows (showing 20)
月ラベル1年ローリングベータ決定係数
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までの期間を対象とし、R二乗は0.44、ベータは1.87となっている。同じ銘柄、同じ指数、同じ手法でも、対象期間が異なれば値は変わる。古い対象期間から算出したベータに基づいてヘッジ比率を決めると、すでにデータが通り過ぎた数値を使うことになる。

インプライド・ボラティリティにも、別の形で同じ注意点がある。これは毎セッション変化するリアルタイムの価格であり、IVは通常、単独ではなく自身の過去の推移と比較して読む。IVの30%は高いのかでは、この比較について説明している。

どの数値がどの役割を担うのか

ベータは指数に関する問いに答える。あるポートフォリオはS&P 500にどの程度連動しているのか。また、それを相殺するにはどれだけの指数ポジションが必要なのか。これがベータ・ウェイティングであり、ポートフォリオのベータ・ウェイティングではその計算方法を説明している。ベータは、同じ市場ファクターに一斉に感応する銘柄群で構成されたポートフォリオも浮き彫りにする。この状況を別の側面から測るのが集中リスクである。

インプライド・ボラティリティは、一定期間における個別銘柄の問いに答える。その株式は今後30日間の値動きに対して、市場でどの程度の価格を付けられているのか。その水準は、その株式自身の過去と比べて高いのか低いのか。いずれの問いにも指数は関係しない。

どちらの数値も方向性を予測するものではない。ベータは、すでに生じた連動性を表す。IVは値動きの大きさに対する価格であり、符号を伴わずに表示される。ベータが1.8でIVが25%の株式も、ベータが0.2でIVが80%の株式も、いずれも異常ではない。両者は異なる種類のリスクを抱えており、それぞれ異なる目的に適した指標で測定される。

FAQ

株価のインプライド・ボラティリティが高く、ベータが低いことはありますか?

はい、よくあります。ベータが捉えるのは指数と連動する値動きだけです。一方、インプライド・ボラティリティは、指数が把握していない単一企業の材料を含め、すべての値動きを価格に織り込みます。二択の発表を待つ銘柄では、広範な指数に対する回帰直線の傾きがほぼゼロでも、IVが非常に高くなることがあります。

ベータはリスクの指標ですか?

ベータが測るのは、選択した指数に対する、選択した過去の期間における感応度という一種類のリスクだけです。企業固有のリスクや、その期間の外にある要因は捉えません。ベータが同じ二つの銘柄でも、全体のボラティリティは大きく異なる可能性があります。

R-squaredは、ベータでは分からない何を示しますか?

R-squaredは、銘柄のリターンの分散のうち、指数で説明できる割合を0から1の尺度で示します。R-squaredが低い場合、回帰直線の当てはまりは悪くなります。そのため、同時に算出されたベータは、銘柄の値動きを表す数値というより、散らばったデータ点の雲を通る傾きにすぎません。

インプライド・ボラティリティは、株価がどちらに動くかを予測しますか?

いいえ。IVは方向を伴わない変動幅です。IVが40パーセントの場合、1年間の1標準偏差の値動きが40パーセントになることを価格に織り込みますが、上昇にも下落にも偏りはありません。実際の株価は、価格が織り込んだ水準を大きく上回ることも、下回ることもあります。

ベータの算出には、どの期間とリターン頻度を使いますか?

単一の標準はありません。一般的な方法には、1年分の日次リターンから5年分の月次リターンまであります。上の最初のパネルが示すように、同じ1年間でも日次と週次でサンプリングすると、異なる傾きが得られます。ベータは、同じ方法で算出した別のベータとのみ比較できます。

数値の測定方法
  • ベータとR-squared:各銘柄およびSPYについて、Aug 19 2026年までの12カ月間の日次・週次の終値リターンを使用しました。ベータは2つのリターン系列の共分散をSPYのリターンの分散で割って算出し、R-squaredは相関係数の二乗としました。
  • インプライド・ボラティリティ:満期まで20~45日で、行使価格が原資産の終値から5パーセント以内にある契約を対象としました。収束した解のみを用い、当日に取引された契約に限定しています。数値はAug 19で終わる3週間の平均です。
  • 指数がほぼ横ばいだったセッション:同じ12カ月間を対象に、SPYの終値から終値までのリターンの絶対値が0.25パーセント未満だったセッションです。
  • ローリング・ベータ:SPYに対するNVDAのベータを、直近12カ月の日次リターンから毎月初めに再推定しました。対象は48個の月次ポイントです。

上の各パネルには、作成に使用したSQLが付いています。そのため、算出期間やフィルターは各チャートの下からワンクリックで確認できます。フォローしている銘柄のベータやインプライド・ボラティリティを測定するには、Strasmore terminalで平易な英語により依頼してください。

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