팩터 회귀 해석: 알파·베타·잔차와 Fama–MacBeth 차이
시계열 팩터 회귀와 Fama–MacBeth 횡단면 회귀를 구분하고 초과수익률, 상수항, HAC, 알파와 잔차를 검산하는 순서입니다.
자산 수익률은 소수, 팩터는 퍼센트로 넣거나 월별 수익률에서 연 무위험수익률을 그대로 빼면 회귀는 숫자를 내놓아도 의미가 없습니다. 상수항을 빼고 적합한 뒤 ‘알파가 0’이라고 읽거나 매달의 잔차를 ‘월별 알파’라고 부르는 오류도 결과표만 봐서는 잘 드러나지 않습니다.
팩터 회귀는 계수보다 입력 정렬을 먼저 고정해야 합니다. 시계열 회귀는 한 자산의 평균 미설명 초과수익과 팩터 노출을 묻고, Fama–MacBeth 회귀는 여러 자산의 노출이 횡단면 수익 차이를 가격화하는지 묻습니다. 날짜·빈도·단위·무위험수익률·상수항·표준오차를 기록해야 두 결과를 구분할 수 있습니다.
시계열 회귀는 한 자산의 노출을 묻습니다
자산 또는 포트폴리오 $p$의 초과수익률을 여러 팩터에 회귀하면 다음과 같습니다.
- $\alpha_p$: 표본기간의 평균 미설명 초과수익
- $\beta_k$: 팩터 $k$에 대한 표본 민감도
- $\varepsilon_{p,t}$: 시점 $t$의 예측오차
CAPM 알파·베타에서 시장요인 하나를 쓰던 식을 여러 팩터로 넓힌 형태입니다. 어떤 팩터를 썼는지는 Fama–French 팩터 모델의 공식 구성과 함께 적어야 합니다.
| 항목 | 한 행 | 주요 계수 | 답하는 질문 |
|---|---|---|---|
| 시계열 팩터 회귀 | 한 날짜 | 알파·팩터 베타 | 이 자산 수익이 팩터와 얼마나 같이 움직였나 |
| 단일 횡단면 회귀 | 한 날짜의 여러 자산 | 특성별 기울기 | 그 날짜에 어떤 특성이 수익 차이와 연결됐나 |
| Fama–MacBeth | 날짜별 횡단면 계수의 시계열 | 평균 위험가격 | 추정 노출이 평균수익 차이를 가격화했나 |
날짜·단위·RF·상수항을 먼저 맞춥니다
회귀 전에 아래 네 줄의 검산표를 저장하세요.
- 자산과 팩터 날짜의 교집합을 만든 뒤 누락 행 수를 기록합니다.
- 모두 일별·주별·월별 중 하나로 맞추고 월말 라벨과 실제 보유기간을 구분합니다.
3.2가 3.2%인지 320%인지 확인해 수익률과 팩터를 모두 소수 또는 모두 퍼센트로 통일합니다.- 자산 수익률과 시장 수익률이 총수익인지 가격수익인지, 무위험수익률이 같은 기간 단위인지 확인합니다.
MKT-RF 팩터를 쓰면서 종속변수에는 원수익률을 넣으면 좌변과 우변의 기준이 달라집니다. 보통은 자산 수익률에서도 같은 기간 $R_f$를 빼 초과수익률을 만듭니다.
Python의 statsmodels OLS 공식 문서에 따르면 배열 인터페이스는 절편을 자동으로 추가하지 않습니다.C1 알파를 추정하려면 상수항을 명시해야 합니다.
joined = asset.join(factors, how="inner").dropna()
y = joined["asset_return"] - joined["RF"]
X = sm.add_constant(joined[["MKT_RF", "SMB", "HML"]])
result = sm.OLS(y, X).fit(
cov_type="HAC", cov_kwds={"maxlags": 3}
)
이 코드는 구조 예시일 뿐 maxlags=3이 모든 월별 자료의 정답이라는 뜻은 아닙니다. 자료 빈도, 표본 길이와 잔차 자기상관을 근거로 선택해야 합니다.
알파와 잔차는 평균과 시점 오차의 차이입니다
Jensen의 성과 측정 원 논문에서 알파는 시장 모형으로 설명되지 않는 평균 초과성과를 절편으로 평가합니다.C5 시점별 관측치는 다음처럼 나뉩니다.
가령 월 알파 추정치가 0.1%이고 어느 달 잔차가 2%라면 그 달의 미설명 부분은 0.1% + 2%입니다. 잔차 2%를 ‘그달 알파 2%’라고 부르면 평균 절편과 기간별 충격을 섞게 됩니다.
알파의 통계적 유의성도 경제적 가치와 같지 않습니다. 월 알파를 ×12로 연환산한 값은 단순연환산이고, (1+월알파)^12-1은 같은 월 알파가 반복된다는 복리 가정입니다. 거래비용 전 알파가 비용보다 작을 수 있고, 누락한 팩터가 절편으로 들어갈 수도 있습니다.
HAC는 표준오차를 바꾸지만 설계를 고치지는 않습니다
금융 수익률 회귀의 잔차에는 이분산성이나 자기상관이 있을 수 있어 HAC 공분산을 검토합니다. statsmodels는 get_robustcov_results 또는 fit(cov_type="HAC", ...) 형태를 지원하고 maxlags 등 설정을 요구합니다.C2 statsmodels 강건 공분산 문서
HAC는 계수 자체를 좋은 설계로 바꾸는 마법이 아닙니다. 날짜가 어긋났거나 미래 정보가 섞였거나 단위가 100배 틀렸다면 강건 표준오차를 써도 잘못된 회귀입니다. 짧은 표본에서 지연차수를 과도하게 늘리면 추정도 불안정해질 수 있습니다.
롤링 회귀를 쓴다면 창 길이와 최소 관측치, 재추정 시점도 기록합니다. 창이 짧으면 계수가 크게 흔들리고, 창이 길면 구조 변화가 평균에 묻힙니다. 롤링 베타의 마지막 값이 다음 기간에 실제로 사용할 수 있었던 값인지도 확인해야 합니다.
Fama–MacBeth는 두 단계의 질문입니다
Fama와 MacBeth의 1973년 원 논문은 여러 자산의 위험과 평균수익 관계를 반복 횡단면에서 검정하는 접근의 기초가 됐습니다.C3 전형적인 베타 가격 검정은 다음 두 단계를 구분합니다.
- 첫 단계: 각 자산의 시계열 자료로 팩터 노출 $\widehat{\beta}_i$를 추정합니다.
- 둘째 단계: 각 시점에 여러 자산의 수익률을 $\widehat{\beta}_i$에 횡단면 회귀하고, 시점별 위험가격 $\lambda_t$의 평균과 표준오차를 계산합니다.
매달 수익률을 장부가치비율이나 시가총액 같은 특성에 회귀해 평균 기울기를 내는 방법도 넓게 Fama–MacBeth식 반복 횡단면 회귀라고 부르곤 합니다. 그러나 추정 베타가 가격화되는지 검정하는 고전적 두 단계와는 입력과 해석이 다릅니다. 보고서에는 beta-pricing two-pass인지 repeated characteristic cross-section인지 적는 편이 안전합니다.
Shanken의 베타 가격모형 연구는 첫 단계에서 추정한 베타를 둘째 단계 설명변수로 사용할 때 위험가격 추정의 정밀도를 과대평가할 수 있는 오류변수 문제를 다뤘습니다.C4 자산 수가 많다는 이유만으로 첫 단계 추정오차가 사라졌다고 가정하면 안 됩니다.
이상한 결과는 이 순서로 진단합니다
- 날짜: 자산·팩터·RF의 교집합과 시차가 맞는가?
- 단위: 소수와 퍼센트가 섞이지 않았는가?
- 초과수익률: 종속변수와 시장 팩터에서 같은 RF를 뺐는가?
- 상수항: 알파를 추정하도록 절편을 넣었는가?
- 결측·극단값: 임의의 0 대체나 미래값 채우기가 없는가?
- 공분산: 자료 구조에 맞는 HAC·클러스터·Fama–MacBeth 표준오차인가?
- 경제적 해석: 유의성을 미래 프리미엄이나 투자 능력으로 비약하지 않았는가?
회귀표는 마지막 산출물입니다. 입력 정의, 정렬 로그, 표본기간, 팩터 원문과 코드 버전을 함께 남겨야 결과를 재현하고 반박할 수 있습니다.
주요 출처와 검증 범위
아래 원문에서 사실을 확인했습니다. 원자료의 수치·문구와 본문의 단순 계산은 구분하며, 비교·의미 해석과 판단 순서는 이 사이트의 편집물입니다.
- statsmodels developers · statsmodels.regression.linear_model.OLS
확인일
- C1 statsmodels OLS의 배열 인터페이스는 절편을 자동으로 추가하지 않으므로 알파를 추정하려면 상수열을 명시해야 한다.
- statsmodels developers · RegressionResults.get_robustcov_results
확인일
- C2 statsmodels는 회귀 결과에 HAC 강건 공분산을 적용할 수 있으며 maxlags 같은 설정을 사용자가 정해야 한다.
- Journal of Political Economy · Risk, Return, and Equilibrium: Empirical Tests
자료일 · 확인일
- C3 Fama와 MacBeth의 1973년 연구는 여러 자산의 위험과 평균수익 관계를 횡단면에서 반복 검정하는 두 단계 접근의 기초가 됐다.
- The Review of Financial Studies · On the Estimation of Beta-Pricing Models
자료일 · 확인일
- C4 Shanken은 추정된 베타를 두 번째 단계 설명변수로 쓰는 전통적 베타 가격모형에서 위험가격 추정의 정밀도가 과대평가될 수 있는 오류변수 문제와 보정을 다뤘다.
- The Journal of Finance · The Performance of Mutual Funds in the Period 1945–1964
자료일 · 확인일
- C5 시계열 팩터 회귀의 절편은 표본기간 평균 미설명 초과수익이고 각 시점의 잔차는 그 시점의 예측 오차이므로 같은 값이 아니다.
면책 및 정보 이용 안내
이 글은 공개된 학술자료와 공식 소프트웨어 문서를 바탕으로 작성한 일반 정보이며, 독자의 재무상황·투자목표·위험수용도를 고려한 개인 맞춤형 투자·법률·세무 자문이나 특정 모형·전략·종목의 매수·매도 권유가 아닙니다. 회귀계수와 유의성은 표본, 변수 정의, 데이터 품질과 추정 방법에 따라 달라집니다. 실제 분석과 투자 결정 전 최신 공시, 원자료와 방법론을 직접 검증하고 필요한 경우 자격을 갖춘 전문가와 상담하세요. 투자에는 원금 손실 가능성이 있습니다.