Introduction à la gestion du risque de portefeuille en Python
Dakota Wixom
Quantitative Analyst | QuantCourse.com
$$ R_{P} = $$
$$ RF + \beta_{M}(R_{M}-RF)+b_{SMB} \cdot SMB + b_{HML} \cdot HML + \alpha $$

En supposant que vous avez déjà les rendements excédentaires du portefeuille et du marché dans l'objet Data :
import statsmodels.formula.api as smf
model = smf.ols(formula='Port_Excess ~ Mkt_Excess + SMB + HML',
data=Data)
fit = model.fit()
adjusted_r_squared = fit.rsquared_adj
adjusted_r_squared
0.90
Pour extraire la valeur p de HML, en supposant que l'objet du modèle ajusté dans votre espace de travail est fit :
fit.pvalues["HML"]
0.0063
Pour tester sa signification statistique, vérifiez simplement si elle est inférieure à un seuil donné, généralement 0,05 :
fit.pvalues["HML"] < 0.05
True
Pour extraire le coefficient HML, en supposant que l'objet du modèle ajusté dans votre espace de travail est fit :
fit.params["HML"]
0.502
fit.params["SMB"]
-0.243
En supposant que vous avez déjà un modèle de régression ajusté dans l'objet fit :
portfolio_alpha = fit.params["Intercept"]
portfolio_alpha_annualized = ((1 + portfolio_alpha) ** 252) - 1
portfolio_alpha_annualized
0.045
Introduction à la gestion du risque de portefeuille en Python