分布ごとに1つのオブジェクト
scipy.stats は、stats.norm、stats.t、stats.lognorm のように、どの確率分布も1つのオブジェクトとして提供します。どれも同じ4つのメソッドを持ちます。pdf(x) は密度で、x の近くの値がどれくらい起こりやすいかを表します。cdf(x) は x 以下になる確率です。ppf(p) は cdf の逆で、下側の確率が p になる値 x(分位点)を返します。rvs(size) は乱数を引きます。どの分布にも位置(loc)と尺度(scale)があり、値は loc + scale * 標準の値 です。dist.fit(data) は最尤法を行い、データが最も起こりやすくなるパラメータを選びます。正規分布では、当てはめた平均は標本平均で、当てはめた標準偏差は n−1 ではなく n で割ります。
日次リターンは裾が厚く、大きな日が正規分布の曲線より、はるかに頻繁に起こります。自由度 ν のスチューデントt分布は裾が厚く、ν が小さいほど厚くなります。その分散は ν/(ν−2)(ν>2 が必要)なので、標準偏差を σ にしたいときは尺度 s=σ(ν−2)/ν を使います。1日・99%のバリュー・アット・リスク(VaR)は、1%の日にしか超えられない損失で、リターンの1%分位点から求めます。
VaR99=−(μ+σz0.01) with z0.01=−2.3263,VaR99t=−(μ+st0.01,ν),s=σνν−2(1) 99%のVaRを2通りで日次リターンの平均を
μ=0.05%、標準偏差を
σ=1.2% とします。正規分布なら
z0.01=−2.3263 なので
VaR=2.3263⋅1.2−0.05=2.74% です。次に、同じ
σ で
ν=4 のt分布を使います。尺度は
s=1.22/4=0.85、標準t分布の1%分位点は
−3.7469 なので
VaR=3.7469⋅0.85−0.05=3.13% です。t分布は遠い裾に重みを多く置くので、損失が大きく出ます。実データでは、SPYの日次リターン
5,403 個の平均は
0.039%、標準偏差は
1.196% です。正規分布の当てはめでは1%分位点は
−2.74% ですが、実際の1%分位点は
−3.52% です。超過尖度は
14.6、最良のt分布の当てはめは
ν=2.45 です。
4% を超える下落は
42 日あり、正規分布なら約
2 日です。
- 同じ4つのメソッド:密度は
pdf、下側確率は cdf、分位点は ppf、乱数は rvs。 - 当てはめて、確かめる:
fit は最尤のパラメータを返し(正規の sigma は n で割る)、極端な日の数をデータと比べる必要があります。 - 裾の厚さはリスクに効く:ν が小さいt分布は、同じ標準偏差の正規分布より大きなVaRを与えます。
ラボ:採点される内容
- 正規分布のVaR15点
- 最尤のsigma15点
- t分布の尺度10点
- t分布のVaR15点
- 共通の4つのメソッド10点
- 裾リスク分析の手順10点
- 正規分布が損失を過小評価する理由25点