GEV によるリスク推定
2010年1月1日に GE 株を € 1,000,000 保有していたとします。2008〜2009年の過去2年分のデータに基づき、翌週に起こり得る「期待」最大損失をカバーしたいと考えています。GE の週次最大損失は一般化極値分布(GEV)に従うと仮定します。
期待損失をモデル化するため、GEV 分布に対して信頼水準 99% の CVaR を推定し、それを用いて 2010年1月における週次の期待最大損失をカバーするために必要な積立金額を計算します。
ワークスペースには scipy.stats の genextreme 分布と、2008〜2009年期間の GE の losses が用意されています。
この演習はコースの一部です
Pythonで学ぶ定量的リスク管理
演習の手順
- GE の資産価格について、ブロック長1週間での最大値を求めます。
- GEV 分布
genextremeをweekly_maximaデータに当てはめます。 - 99% VaR を計算し、それを用いて 99% CVaR の推定値を求めます。
- 期待される週次最大損失をカバーするために必要な積立金額を計算します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Compute the weekly block maxima for GE's stock
weekly_maxima = losses.____("W").____()
# Fit the GEV distribution to the maxima
p = genextreme.____(____)
# Compute the 99% VaR (needed for the CVaR computation)
VaR_99 = genextreme.____(____, *p)
# Compute the 99% CVaR estimate
CVaR_99 = (1 / (1 - 0.99)) * genextreme.____(lambda x: x,
args=(p[0],), loc = p[1], scale = p[2], lb = ____)
# Display the covering loss amount
print("Reserve amount: ", 1000000 * CVaR_99)