VaR voor de Normale verdeling
Om te wennen aan de Value at Risk (VaR)-maatstaf is het handig om die toe te passen op een bekende verdeling. De Normale (of Gaussiaanse) verdeling is extra aantrekkelijk omdat 1) ze analytisch eenvoudig is, en 2) een breed scala aan empirische verschijnselen kan modelleren. In deze oefening neem je aan dat het verlies van een portefeuille normaal verdeeld is; met andere woorden: hoe hoger de getrokken waarde uit de verdeling, hoe groter het verlies.
Je leert hoe je zowel scipy.stats.norm’s ppf() (percent point function) als numpy’s quantile() kunt gebruiken om de VaR te vinden op respectievelijk het 95%- en 99%-betrouwbaarheidsniveau voor een standaard Normale verdeling. Je visualiseert de VaR ook als een drempel in een grafiek van de Normale verdeling.
Deze oefening maakt deel uit van de cursus
Kwantitatief risicobeheer in Python
Oefeninstructies
- Gebruik
norm’s.ppf()percent point function om de VaR te bepalen op het 95%-betrouwbaarheidsniveau. - Bepaal nu de 99% VaR met Numpy’s
quantile()-functie toegepast op 100.000 willekeurige Normaledraws. - Vergelijk de 95% en 99% VaR met een
print-statement. - Plot de Normale verdeling en voeg een lijn toe die de 95% VaR aangeeft.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Create the VaR measure at the 95% confidence level using norm.ppf()
VaR_95 = norm.ppf(____)
# Create the VaR measure at the 99% confidence level using numpy.quantile()
draws = norm.rvs(size = 100000)
VaR_99 = np.quantile(____, 0.99)
# Compare the 95% and 99% VaR
print("95% VaR: ", ____, "; 99% VaR: ", ____)
# Plot the normal distribution histogram and 95% VaR measure
plt.hist(draws, bins = 100)
plt.axvline(x = ____, c='r', label = "VaR at 95% Confidence Level")
plt.legend(); plt.show()