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
<cours>Gestion quantitative des risques en Python</cours>Instructions de l’exercice
- 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 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)