Альфа та мультифакторні моделі

Вступ до керування ризиком портфеля в Python

Dakota Wixom

Quantitative Analyst | QuantCourse.com

Модель Фами—Френча з 3 факторами

$$ R_{P} = $$

$$ RF + \beta_{M}(R_{M}-RF)+b_{SMB} \cdot SMB + b_{HML} \cdot HML + \alpha $$

  • SMB: фактор «small minus big» (малі мінус великі)
  • $b_{SMB}$: чутливість до фактора SMB
  • HML: фактор «high minus low» (високі мінус низькі)
  • $b_{HML}$: чутливість до фактора HML
  • $\alpha $: дохідність, не пояснена іншими факторами
  • $\beta_{M}$: бета до широкого ринкового портфеля B
Вступ до керування ризиком портфеля в Python

Модель Фами—Френча з 3 факторами

Вступ до керування ризиком портфеля в Python

Модель Фами—Френча в Python

Припустімо, у вас уже є надлишкова дохідність портфеля та ринку в об'єкті 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
Вступ до керування ризиком портфеля в Python

P-значення та статистична значущість

Щоб отримати p-значення для HML, маючи у робочому просторі об'єкт апроксимованої регресії fit:

fit.pvalues["HML"]
0.0063

Щоб перевірити статистичну значущість, подивіться, чи воно менше за поріг (зазвичай 0,05):

fit.pvalues["HML"] < 0.05
True
Вступ до керування ризиком портфеля в Python

Отримання коефіцієнтів

Щоб отримати коефіцієнт HML, маючи у робочому просторі об'єкт апроксимованої регресії fit:

fit.params["HML"]
0.502
fit.params["SMB"]
-0.243
Вступ до керування ризиком портфеля в Python

Альфа та гіпотеза ефективного ринку

Припустімо, у вас уже є оцінена регресія в об'єкті fit:

portfolio_alpha = fit.params["Intercept"]
portfolio_alpha_annualized = ((1 + portfolio_alpha) ** 252) - 1
portfolio_alpha_annualized
0.045
Вступ до керування ризиком портфеля в Python

Давайте потренуємось!

Вступ до керування ризиком портфеля в Python

Preparing Video For Download...