CVaR et choix de la couverture des pertes
Dans les exercices précédents, vous avez vu que les distributions T et Gaussian KDE ajustent plutôt bien les pertes de portefeuille pendant la période de crise. Dès lors, laquelle est la plus adaptée à la gestion du risque ? Une façon de choisir consiste à retenir la distribution qui fournit la plus grande couverture des pertes, afin de couvrir le « pire des scénarios du pire cas ».
Les distributions t et kde sont disponibles et ont été ajustées sur les losses du portefeuille de 2007–2008 (les paramètres ajustés de t sont dans p). Vous allez calculer l’estimation du CVaR à 99 % sur un jour pour chaque distribution ; la plus grande estimation de CVaR est alors le montant de réserve le plus « sûr » à détenir, couvrant les pertes attendues au-delà de la VaR à 99 %.
L’instance kde dispose d’une méthode spéciale .expect(), uniquement pour cet exercice, afin de calculer la valeur espérée nécessaire au CVaR.
Cet exercice fait partie du cours
Gestion quantitative des risques en Python
Instructions
- Trouvez la VaR à 99 % en utilisant
np.quantile()appliquée à des échantillons aléatoires tirés des distributionstetkde. - Calculez l’intégrale requise pour les estimations de CVaR à l’aide de la méthode
.expect()pour chaque distribution. - Calculez et affichez les estimations de CVaR à 99 % pour les deux distributions.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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)