CHAPTER 10 / SECTION 07
10.7 확률할인요인과 직접 예측 비교하기
무차익 가격 오차를 줄이는 방법과 미래 라벨을 직접 맞히는 방법을 비교합니다.
같은 지급액에도 경제 상태에 따라 다른 가치를 매기기
투자자가 경기 호황과 불황에 각각 절반의 가능성을 둔다고 하자. 한 증권은 호황에만 100원을, 다른 증권은 불황에만 100원을 지급한다. 둘의 평균 지급액은 50원이다. 하지만 소득과 자산이 동시에 줄어드는 불황에 들어오는 100원은 소비를 유지하는 데 더 중요할 수 있다. 할인 가중치를 호황 0.8, 불황 1.1로 가정하면 첫 증권의 가치는 원, 둘째는 원이다. 두 상태의 가중치 평균은 0.95이므로 어느 때나 100원을 주는 지급액은 95원으로 평가된다.
이 상태별 가중치가 Stochastic Discount Factor(확률할인요인, SDF)이며 Pricing Kernel(가격결정 커널)이라고도 한다. 같은 미래 현금 흐름에 서로 모순되는 가격이 붙으면 싼 쪽을 사고 비싼 쪽을 팔아 상태와 무관하게 이익을 얻을 수 있다. No-Arbitrage(무차익) 가격 관계는 미래 지급액에 가중치를 곱해 평균한 값이 현재 가격과 일치하도록 한다. 현재 1원을 넣었을 때의 총 수익 배수로 표시하면 다음과 같다.
- Conditional Expectation(조건부 기댓값), 현재 정보에서 상태별 가능성으로 가중 평균하는 연산
- Stochastic Discount Factor(확률할인요인), 다음 상태의 지급액에 곱하는 단위 없는 가중치
- Gross Return(총 수익 배수), 투자금 1원당 다음 기간 회수액의 배수
- Excess Return(초과수익률), 자산과 같은 기간 무위험 자산의 수익 배수 차이
- Asset Index and Information Date(자산 번호와 정보 기준 시점), 은 다음 관측 기간
자산의 식에서 무위험 투자에도 적용되는 같은 식을 빼면 둘째 관계가 된다. 실제 표본에서는 곱의 평균이 정확히 0이 되기 어려우므로, 모형은 남는 Pricing Error(가격결정 오차)를 줄인다. 현재의 기업 특성과 경기 상태에 따라 오차를 나눠 보면 전체 평균에서 상쇄된 문제도 드러난다.
가장 설명하기 어려운 자산 조합으로 학습하기
모형이 기술주와 은행주를 각각 평가했을 때 평균 오차가 작다고 하자. 경기 침체의 기술주 매수와 은행주 공매도를 묶으면 그 조건에서 오차가 커질 수 있다. 모든 조건과 자산 조합을 사람이 일일이 검사하기는 어렵다. Adversarial Training(적대적 학습)은 별도의 신경망에 현재 할인요인이 가장 크게 틀리는 조합을 찾도록 맡긴다. 두 신경망의 목적이 반대이므로 가장 큰 오차를 줄이는 Minimax(최소최대) 문제로 볼 수 있다.
- 1처음에는 기준 시험 자산으로 할인요인 신경망을 학습한다.
- 2할인요인을 고정하고 시험 신경망이 가격 오차가 큰 조합을 찾는다.
- 3그 조합을 기준으로 할인요인을 개선한다. 필요하면 새 조합 탐색과 교정을 반복한다.
기업 특성에 거시 상태를 더하면 같은 종목도 다른 경기에서 가중치가 달라진다. MacroLSTM(거시 장단기 기억 모형)은 Federal Reserve Economic Data(연방준비은행 경제 데이터, FRED)의 금리차, 물가, 변동성 이력을 소수의 상태 값으로 압축한다. 예측과 평가에서는 공표 시차를 적용한다. 수업용 설정의 한 예는 미국 상위 200개 주식과 여덟 기업 특성이다.
평가에서는 기준 요인 대비 가격 오차, 적대자가 찾은 가장 어려운 포트폴리오, 할인요인 변동성으로부터 읽는 최대 샤프비율 관련 진단을 함께 본다. Hansen–Jagannathan Bound(한센–자가나단 경계)는 할인요인의 표준편차를 평균으로 나눈 값이 가능한 초과수익 샤프비율보다 작을 수 없다는 제약을 준다. Generalized Method of Moments(일반화 적률법, GMM)의 오차 가중치를 바꾸면 잘못 지정한 모형도 일부 조건에서 좋아 보일 수 있다. 고정한 시험 자산과 학습 중 찾은 자산을 모두 사용하고 가중 방식도 바꿔 본다. 사례 비교에서는 검증 샤프비율 대신 검증 IC로 평가할 시점의 모형을 골랐다.
직접 예측 모형은 압축된 특성을 두 곳에 쓴다
SAE는 오늘의 모멘텀, 기업 규모, 유동성을 작은 숫자 묶음으로 압축한다. Encoder(인코더)는 압축을 하고, Decoder(디코더)는 그 숫자로 원래 특성을 복원한다. 동시에 Prediction Head(예측 헤드)는 같은 숫자로 다음 달 수익률이나 상승 확률을 맞힌다. 예측 오차와 입력 복원 오차를 함께 줄인다. 입력 복원은 하나의 라벨에만 맞춰 유용한 정보를 너무 많이 버리는 것을 막는 보조 과제다. 복원 비중이 지나치게 높으면 예측에 별로 도움 되지 않는 입력까지 보존하는 데 용량을 쓸 수 있다.
CAE에서는 수익률을 복원할 때 요인 수익률과 베타를 따로 얻는다. SAE의 작은 숫자 묶음에는 미래 수익률을 맞히기 위한 정보가 섞여 있어 각 숫자를 위험 프리미엄으로 읽을 근거가 없다. SAE는 특성 기반 예측 경쟁에서 쓰인 강한 기준 모형이다. 연속 수익률에는 종목 순위 IC를 사용하고, 방향 라벨에는 Area Under the Receiver Operating Characteristic Curve(수신자 조작 특성 곡선 아래 면적, ROC AUC)를 쓸 수 있다. AUC는 상승 종목과 비상승 종목을 하나씩 고를 때 상승 종목에 더 높은 점수를 주는 정도를 나타낸다. 보유 기간이 겹치는 학습 관측치는 평가 구간과 정답을 공유하지 않도록 제거한다.
세 단계 예측과 다른 두 모형의 입력과 출력
| 모형 | 학습 입력 | 출력 |
|---|---|---|
| SDF | 기업 특성, 거시 상태, 실현 수익률, 시험 조합 | 상태별 할인 가중치와 가격 오차 |
| SAE | 기준일 특성과 그 뒤의 정답 | 미래 수익률 점수나 상승 확률 |
두 모형에서 과거 요인 수익률 이력을 뽑아 별도로 예측하는 단계는 자연스럽게 생기지 않는다. SDF를 종목 순위에 쓰는 사례에서는 할인요인으로부터 점수를 구성하는 규칙을 명시해 다른 모형과 같은 날짜에서 검증한다.