Obliczanie empirycznego VaR
W tym ćwiczeniu przećwiczysz szacowanie dynamicznych dziennych VaR na poziomie 5% przy użyciu podejścia empirycznego.
Różnica między parametrycznym VaR a empirycznym VaR polega na sposobie szacowania kwantyli. Podejście parametryczne wyznacza kwantyle na podstawie założonego rozkładu, natomiast podejście empiryczne wyznacza je na podstawie zaobserwowanego rozkładu zestandaryzowanych reszt.
Skorzystasz z tego samego modelu GARCH co w poprzednim ćwiczeniu. Prognozy średniej i wariancji są zapisane odpowiednio w mean_forecast i variance_forecast. Empiryczne zestandaryzowane reszty zostały już obliczone i zapisane w std_resid.
To ćwiczenie jest częścią kursu
Modele GARCH w Pythonie
Instrukcje do ćwiczenia
- Oblicz kwantyl 0,05 na podstawie zestandaryzowanych reszt GARCH
std_resid. - Wyznacz VaR, korzystając z
mean_forecastivariance_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 empirical quantile
q_empirical = ____.____(____)
print('5% empirical quantile: ', q_empirical)
# Calculate the VaR
VaR_empirical = ____.values + np.sqrt(____).values * ____
# Save VaR in a DataFrame
VaR_empirical = pd.DataFrame(VaR_empirical, columns = ['5%'], index = variance_forecast.index)
# Plot the VaRs
plt.plot(VaR_empirical, color = 'brown', label = '5% Empirical 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()