ファクターモデル

Pythonで学ぶポートフォリオ分析入門

Charlotte Werger

Data Scientist

ファクターでパフォーマンスを説明

$$

  • ファクターはリスク管理に使う。
  • パフォーマンス説明に役立つ。
  • ファクターモデルは要因とポートフォリオ収益を結び付ける。
  • 実証ファクターモデルは過去データで検証済み。
  • Fama-French 3ファクターモデルは著名。
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):バリュー要因
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))
アクティブリターンのファクター感応度:
F1: -0.0381
F2: 0.9858
Pythonで学ぶポートフォリオ分析入門

Let's practice!

Pythonで学ぶポートフォリオ分析入門

Preparing Video For Download...