티스토리 뷰
1. 개요
Fama-French 데이터 라이브러리는 자산 가격 결정 및 포트폴리오 성과 분석을 위한 중요한 금융 데이터셋 중 하나입니다. 경제학자 Eugene Fama와 Kenneth French가 개발한 이 라이브러리는 주식 시장에서 다양한 요인이 수익률에 미치는 영향을 분석하는 데 활용됩니다. 특히 가치주(Value Stocks)와 성장주(Growth Stocks) 간의 성과 차이를 설명하는 데 널리 사용됩니다.
https://mba.tuck.dartmouth.edu/pages/faculty/ken.french/index.html
Kenneth R. French - Home Page
mba.tuck.dartmouth.edu
2. Fama-French 모델 개요
Fama와 French는 1992년과 1993년 논문에서 **3요인 모델(Three-Factor Model)**을 제안했습니다. 이는 기존의 자본자산가격결정모형(CAPM)이 시장 위험(Market Risk)만을 고려한 것과 달리, 다음과 같은 추가적인 요인을 포함합니다:
- Market Risk (시장 요인): 전체 시장 포트폴리오의 수익률과 무위험 자산의 차이
- Size Factor (규모 요인, SMB: Small Minus Big): 소형주(Small Cap)와 대형주(Large Cap) 간의 수익률 차이
- Value Factor (가치 요인, HML: High Minus Low): 가치주(높은 Book-to-Market)와 성장주(낮은 Book-to-Market) 간의 수익률 차이
이후 연구를 통해 **5요인 모델(Five-Factor Model)**도 제안되었으며, 여기에 수익성(Profitability) 및 투자(Investment) 요인이 추가되었습니다.
3. Fama-French 데이터 라이브러리 구성
Fama-French 데이터는 다음과 같은 다양한 포트폴리오 및 팩터 데이터를 제공합니다:
- F-F Research Data Factors: 시장, 규모, 가치 요인을 포함한 기본적인 팩터 데이터
- Portfolios Formed on Size: 기업 규모에 따라 형성된 포트폴리오의 수익률
- Portfolios Formed on BE/ME (Book Equity to Market Equity): 가치주와 성장주로 나눈 포트폴리오의 성과
- F-F 5 Factors (2x3): 5요인 모델에 해당하는 데이터
- Industry Portfolios: 산업별 포트폴리오 수익률 데이터
데이터는 월간(Monthly), 일간(Daily), 연간(Annual) 등 다양한 주기로 제공됩니다.
4. 데이터 다운로드 및 활용
Fama-French 데이터는 Kenneth French의 공식 웹사이트에서 직접 다운로드할 수 있으며, Python을 사용하여 손쉽게 가져올 수도 있습니다.
📌 Python을 활용한 Fama-French 데이터 다운로드 예제
import pandas_datareader.data as web
import pandas as pd
# 'Portfolios_Formed_on_BE-ME' 데이터 다운로드
ff_data = web.DataReader('Portfolios_Formed_on_BE-ME', 'famafrench', start='1900-01-01')
# 데이터 확인
print(ff_data[0].head()) # 첫 번째 데이터셋 출력
이 코드를 실행하면 Book-to-Market (BE/ME) 비율을 기준으로 형성된 포트폴리오의 월별 수익률을 가져올 수 있습니다.
📌 Python을 활용한 실제 데이터 분석 예제
import matplotlib.pyplot as plt
# 첫 번째 데이터셋에서 특정 포트폴리오 그룹 선택
df = ff_data[0]
df.index = df.index.to_timestamp() # PeriodIndex -> DatetimeIndex 변환
# 특정 포트폴리오(예: 'Hi 30', 'Lo 30')의 수익률 시계열 시각화
plt.figure(figsize=(12, 6))
plt.plot(df.index, df['Hi 30'], label='High BE/ME (Value Stocks)')
plt.plot(df.index, df['Lo 30'], label='Low BE/ME (Growth Stocks)')
plt.xlabel('Year')
plt.ylabel('Monthly Return (%)')
plt.title('Fama-French Value vs. Growth Portfolio Returns')
plt.legend()
plt.grid()
plt.show()
이 코드를 실행하면 가치주(Value Stocks)와 성장주(Growth Stocks)의 수익률 변화를 시각화할 수 있습니다.
5. Fama-French 데이터의 활용 예시
✅ 투자 전략 분석
Fama-French 데이터는 팩터 기반 투자 전략을 평가하는 데 활용됩니다. 예를 들어, 가치주(Value Stocks)가 성장주(Growth Stocks)보다 더 높은 수익을 제공하는지 분석할 수 있습니다.
✅ 백테스팅(Backtesting)
과거 데이터를 활용하여 특정 팩터 기반 전략이 실제 시장에서 얼마나 효과적이었는지를 테스트할 수 있습니다.
✅ 리스크 평가 및 포트폴리오 최적화
투자 포트폴리오의 성과를 분석하고, 시장 요인과 스타일 팩터에 따른 리스크를 평가하는 데 유용합니다.
6. 결론
Fama-French 데이터 라이브러리는 금융 및 투자 연구에서 매우 중요한 데이터셋으로, 팩터 모델을 활용한 분석 및 전략 개발에 필수적인 자료를 제공합니다. Python을 활용하면 손쉽게 데이터를 다운로드하고 분석할 수 있으며, 이를 통해 더 나은 투자 결정을 내릴 수 있습니다.
📌 향후 계획: Fama-French 모델을 실전 투자에 적용하는 방법에 대해 심층적으로 다룬 후속 글을 제공할 예정입니다. 많은 관심 부탁드립니다! 🚀
'퀀트투자 with Python & 인공지능' 카테고리의 다른 글
퀀트 포트폴리오 구축: 팩터 기반 투자 및 최적화 방법 (2) | 2025.02.04 |
---|---|
밸류(Value) 전략: 가치주 투자의 핵심 원리와 분석 방법 (4) | 2025.02.04 |
베타(Beta) 팩터 분석: 시장 변동성을 활용한 투자 전략 (1) | 2025.02.04 |
퀀트 팩터 분석 : 주요 용어 이해하기 (팩터, 베타, PBR, PER, PCR) (3) | 2025.02.03 |
금융 데이터 수집 및 처리 (0) | 2025.02.03 |
- Total
- Today
- Yesterday
- 케라스
- 텍스트 전처리
- pytorch
- 로또 1164회 당첨
- 클래스형 뷰
- TorchVision
- python 문자열 슬라이싱
- GitHub
- 인공지능 로또 예측
- chat gpt api 비용 계산
- chat gpt 한국어 가격
- 티스토리챌린지
- 텍스트 마이닝
- chat gpt 모델 별 가격
- 1164회 로또
- python import
- chat gpt 4o 예산
- Python
- 로또 ai
- 오블완
- Numpy
- 장고 orm sql문 비교
- chat gpt 가격 예상
- 1165회 로또
- github action
- 토치비전
- postgre
- chat gpt 모델별 예산
- chat gpt 모델 api 가격 예측
- f-string
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |