Факторные модели

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

Charlotte Werger

Data Scientist

Использование факторов для объяснения доходности

$$

  • Факторы используются для управления рисками.
  • Факторы помогают объяснить доходность.
  • Факторные модели связывают факторы с доходностью портфеля.
  • Эмпирические факторные модели проверены на исторических данных.
  • Трёхфакторная модель Фама – Френча — одна из наиболее известных.
Введение в анализ портфеля на Python

Многофакторная модель Фама – Френча

$ $

  • $ 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) — фактор стоимости
Введение в анализ портфеля на Python

Краткое повторение: регрессионная модель

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

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

Различие между бета и корреляцией

Таблица сравнения бета и корреляции

Введение в анализ портфеля на 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
Введение в анализ портфеля на Python

Сводный вывод регрессионной модели

# Print out the summary statistics
model.summary()

Сводная таблица модели линейной регрессии

Введение в анализ портфеля на 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
Введение в анализ портфеля на Python

Давайте потренируемся!

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

Preparing Video For Download...