リスクエクスポージャーと損失

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

Jamsheed Shorish

Computational Economist

休暇のたとえ

  • 休暇のためのホテル予約

  • 事前払い(宿泊前)

    • 低料金
    • 返金不可: キャンセル料 = 宿泊料の100%
  • 到着後に支払い

    • 高料金
    • 一部返金可: キャンセル料は宿泊料の20%

カリブ海のビーチ近くのボートの画像

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

選択の判断基準

  • 何が意思決定を左右するか
    1. 負のショックの確率: 病気、移動障害、天候
      • 損失確率
    2. ショック時の損失: 額または条件付き額
      • 例: VaR, CVaR
    3. ショック回避の意欲: 個人的選好
      • リスク許容度

体温計をくわえてベッドで寝込む3人の子どものイラスト

 

リスク管理のスケールとお金の画像

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

リスクエクスポージャーとVaR

  • リスクエクスポージャー: 損失確率 × 損失指標
    • 損失指標: 例 VaR
  • 休暇をキャンセルする確率10%: P(illness) = 0.10
  • 返金不可:
    • 返金不可の合計ホテル代: € 500
    • 信頼水準90%のVaR: € 500
  • 一部返金可:
    • 返金対象のホテル代: € 550
    • 信頼水準90%のVaR: キャンセル料20% × € 550 = € 110
Pythonで学ぶ定量的リスク管理

リスクエクスポージャーの計算

  • 返金不可のエクスポージャー ("$\text{nr}$"):
    • P(illness) × $\text{VaR}_{0.90}^{\text{nr}}$ = 0.10 × € 500 = € 50.
  • 一部返金可のエクスポージャー ("$\text{pr}$"):
    • P(illness) × $\text{VaR}_{0.90}^{\text{pr}}$ = 0.10 × € 110 = € 11.
  • リスクエクスポージャーの差: € 50 - € 11 = € 39.
  • オファー間の総額差: € 550 - € 500 = € 50.
  • リスク許容度: 追加エクスポージャー&eur o;39の回避のために&eur o;50多く払う価値はあるか?
Pythonで学ぶ定量的リスク管理

リスク許容度とリスクアペタイト

  • リスク中立: 期待値のみ重視
    • € 39 < € 50 $\Rightarrow$ 返金不可を選好
  • リスク回避: 不確実性自体にコスト
    • € 39 < € 50 $\Rightarrow$ 一部返金可を選好
  • 企業・機関のリスク管理: 嗜好はリスク許容度(リスクアペタイト)
  • 個人投資家: 嗜好はリスク許容度
Pythonで学ぶ定量的リスク管理

損失分布 — 離散

  • リスクエクスポージャーは損失分布(損失確率)に依存
  • 休暇の例: ランダムなリスク要因により2つの結果

休暇例の二値損失の棒グラフ

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

損失分布 — 連続

  • リスクエクスポージャーは損失分布(損失確率)に依存
  • 休暇の例: ランダムなリスク要因により2つの結果
  • 一般には: 連続的な損失分布
    • 正規分布: 大標本に適する

連続正規分布の画像

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

損失分布 — 連続

  • リスクエクスポージャーは損失分布(損失確率)に依存
  • 休暇の例: ランダムなリスク要因により2つの結果
  • 一般には: 連続的な損失分布
    • 正規分布: 大標本に適する
    • スチューデントのt分布: 小標本に適する

連続損失のt分布の画像

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

基礎: スチューデントのt分布

  • t分布とも呼ばれる
  • 小標本では正規分布より尾が太い
    • ポートフォリオの収益/損失に類似
  • 標本が増えるとtは正規分布に収束

連続損失分布の画像

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

Pythonでのt分布

  • 例: t分布から95% VaRを計算
    • scipy.statsからt分布をインポート
    • t.fit()でportfolio_lossデータを当てはめる

 

from scipy.stats import t

params = t.fit(portfolio_losses)

連続損失分布の画像

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

Pythonでのt分布

  • 例: t分布から95% VaRを計算
    • scipy.statsからt分布をインポート
    • t.fit()でportfolio_lossデータを当てはめる
    • .ppf()で百分位点関数を計算しVaRを取得
from scipy.stats import t

params = t.fit(portfolio_losses)
VaR_95 = t.ppf(0.95, *params)

VaR付きの連続t分布の画像

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

自由度

  • 自由度 (df): 独立な観測数
  • 小さいdf: 尾が太いt分布
  • 大きいdf: 正規分布に近づく
x = np.linspace(-3, 3, 100)

plt.plot(x, t.pdf(x, df = 2))
plt.plot(x, t.pdf(x, df = 5))
plt.plot(x, t.pdf(x, df = 30))

自由度30のt分布の画像

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

演習に進みましょう!

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

Preparing Video For Download...