НачатьНачать бесплатно

Оценка параметров: нормальное распределение

Параметрическая оценка — наиболее точный метод оценки VaR, поскольку он предполагает, что класс распределения потерь известен заранее. Параметры оцениваются так, чтобы наилучшим образом подогнать данные к этому распределению, после чего выполняется статистический вывод.

В этом упражнении вы оцените 95% VaR на основе нормального распределения, подогнанного к данным инвестиционного банка за 2007–2009 годы. Для этого вы будете использовать нормальное распределение norm из библиотеки scipy.stats, предполагая, что оно является наиболее подходящим классом распределения.

Насколько хорошо нормальное распределение описывает данные? Это можно проверить с помощью теста Андерсона–Дарлинга scipy.stats.anderson. Если результат теста статистически отличается от нуля, это указывает на то, что данные не подчиняются нормальному распределению. Этот вопрос будет рассмотрен в следующем упражнении.

Данные о портфельных losses за период 2005–2010 годов уже доступны.

Это упражнение является частью курса

Количественное управление рисками на Python

Посмотреть курс

Инструкции к упражнению

  • Импортируйте norm и anderson из scipy.stats.
  • Подгоните данные losses к нормальному распределению с помощью метода .fit(), сохранив параметры распределения в переменную params.
  • Вычислите и отобразите оценку 95% VaR на основе подогнанного распределения.
  • Проверьте нулевую гипотезу о нормальности распределения для losses с помощью теста Андерсона–Дарлинга anderson().

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Import the Normal distribution and skewness test from scipy.stats
from ____ import norm, anderson

# Fit portfolio losses to the Normal distribution
params = ____.fit(____)

# Compute the 95% VaR from the fitted distribution, using parameter estimates
VaR_95 = norm.____(0.95, *params)
print("VaR_95, Normal distribution: ", VaR_95)

# Test the data for Normality
print("Anderson-Darling test result: ", anderson(____))
Редактировать и запускать код