動く係数
回帰は係数ごとに1つの数を与え、関係が決して変わらないかのように扱います。しかし株式の市場ベータは、事業、財務レバレッジ、市場の雰囲気とともに変わります。ローリング回帰は、直近 w 個の観測の移動窓で同じモデルを当てはめ直し、係数の時系列を与えます。statsmodels では RollingOLS(y, X, window=w).fit() で、その params 属性は日付ごとに1行、係数ごとに1列のDataFrameです。窓がまだ埋まらない最初の w-1 行はNaNです。窓の長さはトレードオフで、短いと反応は速いがノイズが多く、長いと滑らかだが遅くなります。説明変数が1つと定数だけなら、傾きには回帰を使わない閉じた式があります。y と x のローリング共分散を x のローリング分散で割るもので、.rolling(w).cov(...) と .rolling(w).var() で計算します。
Appleには2000年2月から2026年8月まで319個の月次リターンがあります。全期間の市場ベータは 1.31 です。60か月ローリングベータは別の話をします。2008年9月は 2.51、2015年4月には 0.75 まで下がり、標本の終わりでは 1.04、その間の標準偏差は 0.31 です。1つの数ではこれを表せません。RollingOLS と、ローリング共分散÷ローリング分散の2つの経路は 10⁻¹⁴ まで一致します。ライブラリが何をしているかを理解している良い確認です。動く係数は警告でもあります。過去10年のベータを使うリスクモデルは、もう存在しない会社をヘッジしているかもしれません。
- ローリングは当てはめ直し:同じモデル、移動窓、日付ごとに係数一式。
- ライブラリをpandasで確かめる:説明変数が1つなら、傾きはローリング共分散÷ローリング分散。
- 1つのベータは物語を隠す:ローリングベータの幅が、全期間の数字がどれほど誤解を招くかを示す。
ラボ:採点される内容
- ローリングベータ25点
- 同じベータを手計算で20点
- 2つの経路の差10点
- 最低と最高のベータ15点
- Appleの研究30点