FF3 アナライザー(Fama‑French 3因子モデル解析ツール)
概要
Fama‑French 3因子モデル(市場、SMB、HML)を利用して、11銘柄から構成される米国株ポートフォリオの月次リターン(2020–2024)を解析するリポジトリです。データ前処理、超過リターンの計算、statsmodelsによるOLS回帰で因子ベータ(エクスポージャー)を推定し、回帰結果の統計量や因子感応度の可視化を行います。さらに、解析結果を閲覧・操作できるStreamlitダッシュボードが付属しており、モデルの理解やポートフォリオ評価の教材としても活用できます。
リポジトリの統計情報
- スター数: 4
- フォーク数: 0
- ウォッチャー数: 4
- コミット数: 7
- ファイル数: 8
- メインの言語: Python
主な特徴
- Fama‑French 3因子モデルを用いたOLS回帰で因子エクスポージャーを算出
- 因子感応度や累積リターン等の可視化グラフを生成
- Streamlitによるインタラクティブなダッシュボードで解析結果を探索可能
- 開発用コンテナ設定(.devcontainer)等、再現性を意識した構成
技術的なポイント
本プロジェクトはPythonエコシステム(pandas, numpy, statsmodels, matplotlib/plotly, Streamlitなど)を活用している点が特徴です。解析フローは典型的なファクターモデルの実装に沿っており、まず月次株価からリターンを計算し、リスクフリーレートを差し引いて超過リターンを作成します。次に、Kenneth French等が提供する因子(MKT‑RF, SMB, HML)を説明変数としたOLS回帰を行い、係数(ベータ)、標準誤差、t値、決定係数などの統計量を取得します。可視化は単一期間の因子エクスポージャー図、ポートフォリオ別の累積超過リターン、回帰残差の分布などを通じてモデル適合や異常値を点検します。Streamlitダッシュボード(dashboard.py)がフロントエンドの役割を果たし、パラメータ選択や銘柄の絞り込み、グラフの切り替えをリアルタイムに行えます。データフォルダにCSV等の入力データを置くことで再現可能性が高く、.devcontainerにより開発環境の統一も図られています。拡張点としては因子の拡張(Carhartのモメンタム追加)、ローリング回帰による時間変化の解析、ブートストラップでの推定の安定性評価などが想定できます。
プロジェクトの構成
主要なファイルとディレクトリ:
- .devcontainer: dir — 開発コンテナ設定(VS Code Remote‑Containers 等)で環境再現性を向上
- README.md: file — プロジェクト概要、使い方、理論背景の要約
- dashboard.py: file — Streamlitアプリケーションのエントリポイント。データ読み込み、UI、可視化をまとめて提供
- data: dir — 月次リターンやFama‑French因子のCSV等、解析に使う入力データを格納
- frontend: dir — ダッシュボードで使う静的アセットやフロント周りの補助ファイル(CSSや画像等)
- その他のスクリプト(データ処理、回帰実行、可視化ユーティリティなど)が含まれます …他 3 ファイル
まとめ
学習用途に最適な、実践的な3因子モデル解析ツール。
リポジトリ情報:
- 名前: ff3-analyzer
- 説明: 説明なし
- スター数: 4
- 言語: Python
- URL: https://github.com/niffy-artist2876/ff3-analyzer
- オーナー: niffy-artist2876
- アバター: https://avatars.githubusercontent.com/u/172879624?v=4
READMEの抜粋:
ff3-analyzer
A quantitative finance project that applies the Fama-French 3-Factor Model to a portfolio of 11 US equities using monthly return data from 2020–2024. Includes OLS regression analysis, factor exposure visualizations, and an interactive Streamlit dashboard.
What is the Fama-French Model?
The Fama-French 3-Factor Model extends CAPM by explaining stock returns through three systematic risk factors:
- Market (MKT-RF) — excess return of the market over the risk…