CVaR et choix de la couverture des pertes
Dans les exercices précédents, vous avez vu que les distributions T et Gaussian KDE modélisent plutôt bien les pertes du portefeuille pendant la période de crise. Dans ce contexte, laquelle est la plus appropriée pour la gestion du risque? Une façon de trancher est de choisir la distribution qui fournit la plus grande couverture des pertes, afin de couvrir le « pire des pires scénarios » de pertes.
Les distributions t et kde sont disponibles et ont été ajustées aux losses du portefeuille de 2007-2008 (les paramètres ajustés de t sont dans p). Vous allez dériver l'estimation du CVaR à 99 % sur un jour pour chaque distribution; la plus grande estimation de CVaR représente alors le montant de réserve le plus « sûr » à détenir, couvrant les pertes attendues qui dépassent le VaR à 99 %.
L'instance kde a reçu une méthode spéciale .expect(), uniquement pour cet exercice, afin de calculer la valeur espérée nécessaire au CVaR.
Cette activité fait partie du cours
Gestion quantitative des risques en Python
Instructions de l’exercice
- Trouvez le VaR à 99 % en utilisant
np.quantile()appliqué à des échantillons aléatoires provenant des distributionstetkde. - Calculez l'intégrale requise pour les estimations de CVaR à l'aide de la méthode
.expect()pour chaque distribution. - Trouvez et affichez les estimations du CVaR à 99 % pour les deux distributions.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Find the VaR as a quantile of random samples from the distributions
VaR_99_T = np.quantile(t.rvs(size=1000, *p), ____)
VaR_99_KDE = np.quantile(kde.resample(size=1000), ____)
# Find the expected tail losses, with lower bounds given by the VaR measures
integral_T = t.____(lambda x: x, args = (p[0],), loc = p[1], scale = p[2], lb = ____)
integral_KDE = kde.____(lambda x: x, lb = ____)
# Create the 99% CVaR estimates
CVaR_99_T = (1 / (1 - ____)) * integral_T
CVaR_99_KDE = (1 / (1 - ____)) * integral_KDE
# Display the results
print("99% CVaR for T: ", CVaR_99_T, "; 99% CVaR for KDE: ", CVaR_99_KDE)