Ризик-експозиція та збиток

Кількісне управління ризиками в Python

Jamsheed Shorish

Computational Economist

Аналогія з відпусткою

  • Бронювання готелю для відпустки

  • Оплата авансом, до заселення

    • Низька ціна номера
    • Без повернення коштів: штраф за скасування = 100% вартості номера
  • Оплата після прибуття

    • Висока ціна номера
    • Часткове повернення: штраф 20% вартості номера

Зображення човна біля пляжу Карибського моря

Кількісне управління ризиками в Python

Вибір між опціями

  • Що визначає ваше рішення?
    1. Ймовірність негативного шоку: хвороба, збій у подорожі, погода
      • Ймовірність збитку
    2. Збиток від шоку: сума або умовна сума
      • напр., VaR, CVaR
    3. Бажання уникати шоку: особисте ставлення
      • Схильність до ризику

Малюнок: троє дітей хворі в ліжку з термометрами в роті

 

Зображення шкали ризику та грошей для керування ризиком

Кількісне управління ризиками в Python

Ризик-експозиція та VaR

  • Ризик-експозиція: ймовірність збитку × міра збитку
    • Міра збитку: напр., VaR
  • 10% шанс скасувати відпустку: P(Illness) = 0.10
  • Без повернення коштів:
    • Загальна безповоротна вартість готелю: € 500
    • VaR на рівні довіри 90%: € 500
  • Часткове повернення:
    • Вартість готелю з поверненням: € 550
    • VaR на рівні довіри 90%: штраф 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.
  • Схильність до ризику: чи варто платити на € 50 більше, щоб уникнути додаткової експозиції на € 39?
Кількісне управління ризиками в Python

Схильність до ризику та апетит до ризику

  • Нейтральність до ризику: важливі лише сподівані значення
    • € 39 < € 50 $\Rightarrow$ перевага опції без повернення
  • Несхильність до ризику: сама невизначеність має вартість
    • € 39 < € 50 $\Rightarrow$ перевага часткового повернення
  • Управління ризиком у компаніях/установах: вподобання як апетит до ризику
  • Для приватних інвесторів: вподобання як схильність до ризику
Кількісне управління ризиками в Python

Розподіл збитків — дискретний

  • Ризик-експозиція залежить від розподілу збитків (ймовірності збитку)
  • Приклад з відпусткою: 2 наслідки випадкового ризик-фактора

Стовпчикова діаграма бінарних збитків у прикладі з відпусткою

Кількісне управління ризиками в Python

Розподіл збитків — неперервний

  • Ризик-експозиція залежить від розподілу збитків (ймовірності збитку)
  • Приклад з відпусткою: 2 наслідки випадкового ризик-фактора
  • Загальніше: неперервний розподіл збитків
    • Нормальний розподіл: добрий для великих вибірок

Зображення неперервного нормального розподілу

Кількісне управління ризиками в Python

Розподіл збитків — неперервний

  • Ризик-експозиція залежить від розподілу збитків (ймовірності збитку)
  • Приклад з відпусткою: 2 наслідки випадкового ризик-фактора
  • Загальніше: неперервний розподіл збитків
    • Нормальний розподіл: добрий для великих вибірок
    • t-розподіл Стьюдента: добрий для менших вибірок

Зображення неперервного t-розподілу збитків

Кількісне управління ризиками в Python

Вступ: t-розподіл Стьюдента

  • Також відомий як розподіл t
  • Має «товстіші» хвости, ніж нормальний, для малих вибірок
    • Подібно до дохідностей/збитків портфеля
  • Із зростанням вибірки t збігається до нормального розподілу

Зображення неперервного розподілу збитків

Кількісне управління ризиками в Python

t-розподіл у Python

  • Приклад: обчислити 95% VaR з t-розподілу
    • Імпортуйте розподіл t з scipy.stats
    • Підженіть дані portfolio_loss за допомогою t.fit()

 

from scipy.stats import t

params = t.fit(portfolio_losses)

Зображення неперервного розподілу збитків

Кількісне управління ризиками в Python

t-розподіл у Python

  • Приклад: обчислити 95% VaR з t-розподілу
    • Імпортуйте розподіл t з scipy.stats
    • Підженіть дані portfolio_loss за допомогою t.fit()
    • Обчисліть percent point function за допомогою .ppf(), щоб знайти VaR
from scipy.stats import t

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

Зображення неперервного t-розподілу збитків із VaR

Кількісне управління ризиками в 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))

Зображення t-розподілу для 30 ступенів вільності

Кількісне управління ризиками в Python

Давайте потренуємось!

Кількісне управління ризиками в Python

Preparing Video For Download...