Estymacja parametrów: rozkład normalny
Estymacja parametrów to najsilniejsza metoda szacowania VaR, ponieważ zakłada, że klasa rozkładu strat jest znana. Parametry są estymowane w taki sposób, aby dopasować dane do tego rozkładu, a następnie przeprowadzane jest wnioskowanie statystyczne.
W tym ćwiczeniu oszacujesz 95% VaR na podstawie rozkładu normalnego dopasowanego do danych banku inwestycyjnego z lat 2007–2009. Skorzystasz z rozkładu norm z biblioteki scipy.stats, zakładając, że jest to najbardziej odpowiednia klasa rozkładu.
Czy rozkład normalny dobrze pasuje do danych? Sprawdzisz to za pomocą testu Andersona-Darlinga scipy.stats.anderson. Jeśli wynik testu jest statystycznie różny od zera, oznacza to, że dane nie mają rozkładu normalnego. W kolejnym ćwiczeniu zajmiesz się tym zagadnieniem.
Dostępne są losses portfela z okresu 2005–2010.
To ćwiczenie jest częścią kursu
Ilościowe zarządzanie ryzykiem w Pythonie
Instrukcje do ćwiczenia
- Zaimportuj
normiandersonzscipy.stats. - Dopasuj dane
lossesdo rozkładu normalnego za pomocą metody.fit(), zapisując parametry rozkładu do zmiennejparams. - Wygeneruj i wyświetl estymację 95% VaR na podstawie dopasowanego rozkładu.
- Przetestuj hipotezę zerową o normalności rozkładu dla
lossesza pomocą testu Andersona-Darlingaanderson().
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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(____))