Beräkna empirisk VaR
I den här övningen får du träna på att beräkna dynamiska dagliga VaR på 5%-nivå med ett empiriskt tillvägagångssätt.
Skillnaden mellan parametrisk VaR och empirisk VaR ligger i hur kvantilerna beräknas. Det parametriska tillvägagångssättet beräknar kvantiler utifrån ett antaget fördelningsantagande, medan det empiriska tillvägagångssättet beräknar kvantiler från en observerad fördelning av de standardiserade residualerna.
Du använder samma GARCH-modell som i föregående övning. Medelvärdes- och variansprognoserna finns sparade i mean_forecast respektive variance_forecast. De empiriska standardiserade residualerna har också beräknats och sparats i std_resid.
Den här övningen är en del av kursen
GARCH-modeller i Python
Övningsinstruktioner
- Beräkna 0,05-kvantilen från GARCH-modellens standardiserade residualer
std_resid. - Beräkna VaR med hjälp av
mean_forecastochvariance_forecastfrån GARCH-modellen samt kvantilen från föregående steg.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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()