Obliczanie parametrycznego VaR
W tym ćwiczeniu przećwiczysz szacowanie dynamicznych dziennych VaR-ów na poziomie 5% przy użyciu podejścia parametrycznego.
Przypomnij sobie trzy kroki prognozowania VaR. Krok 1 to zastosowanie modelu GARCH do prognozowania wariancji. Krok 2 to uzyskanie prognozowanej średniej i zmienności z modelu GARCH. Krok 3 to wyznaczenie kwantyla dla zadanego poziomu ufności. W podejściu parametrycznym kwantyle są szacowane na podstawie przyjętego założenia o rozkładzie.
Model GARCH został dopasowany do historycznych danych o stopach zwrotu Bitcoina do dnia 1.01.2019 r., a następnie wygenerował prognozy średniej i wariancji, zapisane odpowiednio w mean_forecast i variance_forecast. Model GARCH zakłada rozkład t-Studenta, a jego parametr \(\nu\) (liczba stopni swobody) jest zapisany w nu.
To ćwiczenie jest częścią kursu
Modele GARCH w Pythonie
Instrukcje do ćwiczenia
- Oblicz kwantyl 0,05 z przyjętego rozkładu t-Studenta.
- Wyznacz VaR, korzystając z
mean_forecast,variance_forecastz modelu GARCH oraz kwantyla obliczonego w poprzednim kroku.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Obtain the parametric quantile
q_parametric = basic_gm.____.____(____, nu)
print('5% parametric quantile: ', q_parametric)
# Calculate the VaR
VaR_parametric = ____.values + np.sqrt(____).values * ____
# Save VaR in a DataFrame
VaR_parametric = pd.DataFrame(VaR_parametric, columns = ['5%'], index = variance_forecast.index)
# Plot the VaR
plt.plot(VaR_parametric, color = 'red', label = '5% Parametric VaR')
plt.scatter(variance_forecast.index,bitcoin_data.Return['2019-1-1':], color = 'orange', label = 'Bitcoin Daily Returns' )
plt.legend(loc = 'upper right')
plt.show()