始める無料で始める

ヒストリカル・シミュレーション

VaR のヒストリカル・シミュレーションは、過去の損失分布が将来の損失分布と「同じ」であると仮定します。ここでは、投資銀行ポートフォリオについて、2005〜2006 年の 95% VaR と 2007〜2009 年の 95% VaR を比較し、この仮定が成り立つかを確かめます。

2 つの期間それぞれの資産リターンを格納したリスト asset_returns が用意されています。このリストと与えられた weights を使って portfolio_returns を作成し、そこからポートフォリオの losses を導出します。

その後、np.quantile() 関数を用いて各期間の 95% VaR を求めます。もし損失分布が同じであれば、両期間の 95% VaR 推定値はおおむね同程度になるはずです。そうでなければ、世界金融危機の進行に伴い分布が変化した可能性があります。

この演習はコースの一部です

Pythonで学ぶ定量的リスク管理

コースを見る

演習の手順

  • リスト asset_returns とポートフォリオの weights から、2 期間分の portfolio_returns の Numpy 配列を作成します。
  • portfolio_returns から losses の配列を生成します。
  • np.quantile() を使って、両期間の 95% VaR のヒストリカル・シミュレーションを計算します。
  • 95% VaR 推定値のリストを表示します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Create portfolio returns for the two sub-periods using the list of asset returns
portfolio_returns = np.array([ x.____(weights) for x in asset_returns])

# Derive portfolio losses from portfolio returns
losses = - ____

# Find the historical simulated VaR estimates
VaR_95 = [____(x, 0.95) for x in ____]

# Display the VaR estimates
print("VaR_95, 2005-2006: ", VaR_95[0], '; VaR_95, 2007-2009: ', VaR_95[1])
コードを編集して実行