Факторні моделі

Вступ до Portfolio Analysis у Python

Charlotte Werger

Data Scientist

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

$$

  • Фактори використовують для керування ризиком.
  • Фактори допомагають пояснювати результати.
  • Факторні моделі пов'язують фактори з дохідністю портфеля.
  • Існують емпіричні факторні моделі, перевірені на історичних даних.
  • Відома модель — Fama–French з 3 факторами.
Вступ до Portfolio Analysis у Python

Багатофакторна модель Fama–French

$ $

  • $ R_{pf} = \alpha + \beta_m MKT + \beta_s SMB + \beta_h HML $

  • MKT — надлишкова дохідність ринку, тобто $R_m - R_f$

  • SMB (Small Minus Big) — фактор розміру
  • HML (High Minus Low) — фактор вартості
Вступ до Portfolio Analysis у Python

Коротко про регресійну модель

Підгонка прямої до точок даних методом лінійної регресії

Вступ до Portfolio Analysis у Python

Різниця між бетою та кореляцією

Таблиця порівняння бета з кореляцією

Вступ до Portfolio Analysis у Python

Регресійна модель у Python

import statsmodels.api as sm
# Define the model
model = sm.OLS(factor_data['sp500'],
               factor_data[['momentum','value']]).fit()
# Get the model predictions
predictions = model.predict(factor_data[['momentum','value']])
b1, b2 = model.params
Вступ до Portfolio Analysis у Python

Результат підсумку регресії

# Print out the summary statistics
model.summary()

Підсумок моделі лінійної регресії

Вступ до Portfolio Analysis у Python

Швидке отримання бета-коефіцієнтів

# Get just beta coefficients from linear regression model
b1, b2 = regression.linear_model.OLS(df['returns'], 
                          df[['F1', 'F2']]).fit().params
# Print the coefficients 
print('Sensitivities of active returns to factors:'
      '\nF1: %f\nF2: %f' % (b1, b2))
Sensitivities of active returns to factors:
F1: -0.0381
F2: 0.9858
Вступ до Portfolio Analysis у Python

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

Вступ до Portfolio Analysis у Python

Preparing Video For Download...