🎓 レベル:標準 | 重要度:A(必須)
📎 前提:リスクの測り方(分散・下方リスク) | 関連:CVaR(期待ショートフォール)・整合的リスク測度の公理・金融工学(VaR)
要点(BLUF)
- VaR(Value at Risk) は、信頼水準 (例 95%)のもとで「損失がこれを超えない最大額」。要するに損失分布の 分位点です。
- 「95% VaR が15万」=「95%の確率で損失は15万以内に収まる(裏返すと5%の確率で15万を超える)」。1つの数字でリスクを語れる直感性が普及の理由。
- ただしVaRは閾値を超えた先の損失の大きさを無視し、劣加法性を満たさない(分散投資を罰しうる)という重大な弱点があります。これを補うのがCVaR(期待ショートフォール)です。
1. VaR の定義
損失を (正が損失)とするとき、信頼水準 のVaR は損失分布の 分位点として定義されます。
「損失が 以下である確率が 以上になる、最小の 」。 なら、損失がそれ以下に収まる確率が95%となる境界額です。
VaR の推定には主に2つの方法があります。
- ヒストリカル法:過去(またはシミュレーション)の損失データの経験分位点をそのまま使う。分布を仮定しない。
- パラメトリック法:損失(損益)が正規分布に従うと仮定し、( は標準正規の 分位点)で計算。
import numpy as np
from scipy import stats
rng = np.random.default_rng(42)
mu, sigma = 2.0, 10.0
profit = rng.normal(mu, sigma, size=200_000)
loss = -profit # 損失 = -損益
for alpha in [0.95, 0.99]:
var_hist = np.quantile(loss, alpha) # ヒストリカルVaR
var_param = -mu + sigma * stats.norm.ppf(alpha) # パラメトリックVaR
print(f"信頼水準 {alpha:.0%}: VaR(ヒストリカル)={var_hist:.2f} VaR(正規)={var_param:.2f} 万円")
出力:
信頼水準 95%: VaR(ヒストリカル)=14.51 VaR(正規)=14.45 万円
信頼水準 99%: VaR(ヒストリカル)=21.28 VaR(正規)=21.26 万円
出力の意味:95% VaR は約14.5万——「95%の確率で損失は14.5万以内、5%の確率でそれを超える」。99%にすると21.3万に増えます(より稀な悪い事象まで見るほどVaRは大きい)。ヒストリカルと正規がほぼ一致するのは、データを正規分布で生成したから。現実の損益は裾が厚く(fat tail)、この2つがズレる——そのとき正規VaRは大損失を過小評価しがちです。
2. 図で見る:VaR は裾の「入口」
VaR は損失分布のどこを指しているのか。ヒストグラム上に置くと、最悪 の裾が始まる境界であることが分かります。
import numpy as np
import matplotlib.pyplot as plt
import japanize_matplotlib
rng = np.random.default_rng(42)
profit = rng.normal(2.0, 10.0, size=200_000)
loss = -profit
alpha = 0.95
var = np.quantile(loss, alpha)
cvar = loss[loss >= var].mean() # 参考:裾の平均(CVaR)
plt.figure(figsize=(7.5, 4.5))
plt.hist(loss, bins=120, density=True, alpha=0.5, color="steelblue", label="損失分布")
plt.axvline(var, color="orange", lw=2, label=f"VaR(95%)={var:.1f}")
plt.axvline(cvar, color="red", lw=2, label=f"CVaR(95%)={cvar:.1f}")
plt.xlabel("損失 L = -損益(万円)"); plt.ylabel("確率密度")
plt.title("VaRは裾の入口、CVaRは裾の平均(95%)")
plt.legend(); plt.grid(alpha=0.3); plt.tight_layout(); plt.show()
図の意味:オレンジの線(VaR=14.5)が、損失分布の右裾の「入口」に立ちます。その右側の面積がちょうど5%。VaR は**「裾がどこから始まるか」だけを教え、その先で損失が14.5万なのか100万なのかは区別しません。赤い線(CVaR=18.6)は裾の平均**で、VaR より右——「裾に入ったら平均どれだけ損するか」を表します。VaR の弱点(裾の中身を無視)が、この2本の線の差として見えています。
3. VaR の2つの弱点
VaR は直感的で規制(バーゼル等)でも長く使われましたが、理論的な欠陥があります。
- 裾の厚みを無視する:VaR は「閾値を超える確率が5%」しか言わず、超えたときにいくら損するかを完全に無視します。VaR が同じでも、その先が −20万の分布と −500万の分布では危険度が段違い。VaR は両者を区別できません。
- 劣加法性を満たさない:2つの資産を組み合わせた(分散投資した)ポートフォリオのVaRが、個別VaRの和を上回ることがあります。。これは「分散投資でリスクが減る」という常識に反し、リスク測度として致命的です(整合的リスク測度の公理で実例)。
どちらの弱点も、損失分布の「裾の中身」を見ないことに起因します。これを正面から補うのが、裾の平均を取るCVaR(期待ショートフォール)です。
数式の直観的意味:分位点は「順位」、平均ではない
VaR が分位点であることが、弱点の根源です。分位点は順位の情報(上位5%の境目)しか使わず、その先の値の大きさを捨てます。中央値が外れ値に鈍感なのと同じ理屈で、VaR は裾の外れ値(巨大損失)に鈍感。これは平時には安定性として働きますが、危機時には「ありえない損失」を見落とす盲点になります。さらに分位点は一般に非線形・非凸な汎関数なので、和に対して素直に振る舞わず(劣加法性が破れ)、最適化の目的関数としても扱いにくい。分位点でなく裾の期待値を取れば線形性・凸性が回復する——これが CVaR が整合的になる数学的な理由で、整合的リスク測度の公理の核心です。
⚠️ よくある誤解
- 「VaRは最大損失」ではない:VaR は「95%の確率で超えない額」であって、最大損失ではありません。残り5%ではVaRをいくらでも超えうる。「最悪でもVaRまで」と誤解すると危険です。
- 「99% VaRなら安全」ではない:信頼水準を上げても、その先(1%の世界)の損失は依然見えません。金融危機の損失はまさにこの「先」で起きます。
- 「正規分布VaRで十分」ではない:現実の損益は裾が厚く、正規VaRは稀な大損失を過小評価します。ヒストリカルやストレステストで補完します。
- 「VaRが小さい=低リスク」とは限らない:裾が極端に厚ければ、VaRが小さくてもCVaRは巨大になりえます。VaRだけでリスクを語らないこと。
対応シミュレーション
本文のコードで、分布を裾の厚いもの(t分布や混合正規)に変えると、ヒストリカルVaRと正規VaRが乖離し、正規VaRが大損失を過小評価する様子を確認できます。
関連ノート
- 第5章 リスク測度とリスク管理 目次
- リスクの測り方(分散・下方リスク) — 前提:下方リスクという発想
- CVaR(期待ショートフォール) — 次のトピック:VaRの弱点を補う裾の平均
- 整合的リスク測度の公理 — VaRが破る劣加法性の実例
- 意思決定分析・リスク分析 全体目次