Introduction à la gestion du risque de portefeuille en Python
Dakota Wixom
Quantitative Analyst | QuantCourse.com
Le risque de queue correspond au risque d'issues d'investissement extrêmes, surtout du côté négatif de la distribution.
Le creux est la perte en pourcentage depuis le point cumulatif historique le plus élevé.
$$ \text{Drawdown} = \frac{r_t}{RM} - 1$$

En supposant que cum_rets est un np.array de rendements cumulatifs dans le temps
running_max = np.maximum.accumulate(cum_rets)
running_max[running_max < 1] = 1
drawdown = (cum_rets) / running_max - 1
drawdown
Date Return
2007-01-03 -0.042636
2007-01-04 -0.081589
2007-01-05 -0.073062
La Value at Risk (VaR) est un seuil qui, à un certain niveau de confiance, indique que les pertes ne dépasseront pas (ou plus exactement, n'ont historiquement pas dépassé) un niveau donné.
La VaR est souvent exprimée aux quantiles 95, 99 et 99,9.
Exemple : VaR(95) = -2,3 %

Certitude de 95 % que les pertes ne dépasseront pas -2,3 % sur une journée selon l'historique.
var_level = 95
var_95 = np.percentile(StockReturns, 100 - var_level)
var_95
-0.023
La Conditional Value at Risk (CVaR) estime la perte moyenne subie dans les pires 1 - x % des scénarios.
La CVaR est souvent exprimée aux quantiles 95, 99 et 99,9.
Exemple : CVaR(95) = -2,5 %

Dans les pires 5 % des cas, les pertes ont en moyenne dépassé -2,5 % historiquement.
En supposant que vous avez un objet StockReturns, une série chronologique de rendements boursiers.
Pour calculer la CVaR(95) historique :
var_level = 95
var_95 = np.percentile(StockReturns, 100 - var_level)
cvar_95 = StockReturns[StockReturns <= var_95].mean()
cvar_95
-0.025
Introduction à la gestion du risque de portefeuille en Python