VaR у фінансовому ризик-менеджменті

Моделі GARCH у Python

Chelsea Yang

Data Science Instructor

Мислення про управління ризиками

Правило №1: Ніколи не втрачайте гроші

Правило №2: Ніколи не забувайте правило №1

— Воррен Баффетт

Карикатура Баффетта

Моделі GARCH у Python

Що таке VaR

  • VaR — це Value at Risk («вартість під ризиком»)

  • Три складники:

    1. портфель
    2. часовий горизонт
    3. імовірність
Моделі GARCH у Python

Приклади VaR

_1-денний 5% VaR у $1 million _

5% імовірність, що вартість портфеля знизиться на 1 мільйон доларів або більше протягом 1 дня

10-денний 1% VaR у $9 million

1% імовірність, що вартість портфеля знизиться на 9 мільйонів доларів або більше протягом 10 днів

Моделі GARCH у Python

VaR в управлінні ризиками

  • Встановіть ліміти ризику
  • Перевищення VaR: збиток портфеля перевищує VaR

Перевищення VaR

Моделі GARCH у Python

Динамічний VaR з GARCH

  • Реалістичніша оцінка VaR за допомогою GARCH

  • VaR = mean + (GARCH vol) * quantile

VaR = mean_forecast.values + np.sqrt(variance_forecast).values * quantile
Моделі GARCH у Python

Розрахунок динамічного VaR

  • Крок 1: Застосуйте модель GARCH для прогнозу дисперсії
# Specify and fit a GARCH model
basic_gm = arch_model(bitcoin_data['Return'], p = 1, q = 1, 
                      mean = 'constant', vol = 'GARCH', dist = 't')
gm_result = basic_gm.fit()
# Make variance forecast
gm_forecast = gm_result.forecast(start = '2019-01-01')
Моделі GARCH у Python

Розрахунок динамічного VaR (продовження)

  • Крок 2: Отримайте прогноз середнього та волатильності з моделі GARCH

    mean_forecast = gm_forecast.mean['2019-01-01':]
    variance_forecast = gm_forecast.variance['2019-01-01':]
    

     

  • Крок 3: Визначте квантиль за рівнем довіри

    1. Параметричний VaR
    2. Емпіричний VaR
Моделі GARCH у Python

Параметричний VaR

Оцініть квантили на основі розподілу стандартизованих залишків, припущеного GARCH

# Assume a Student's t-distribution 
# ppf(): Percent point function

q_parametric = garch_model.distribution.ppf(0.05, nu)
Моделі GARCH у Python

Емпіричний VaR

Оцініть квантили за спостережуваним розподілом GARCH-стандартизованих залишків

q_empirical = std_resid.quantile(0.05)
Моделі GARCH у Python

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

Моделі GARCH у Python

Preparing Video For Download...