PRAESENTIA
[AFML] 12장 교차검증 백테스트 ~ 16장 자산배분 본문
Advances in Financial Machine Learning
12장 교차 검증을 통한 백테스트
- 백테스트는 두 가지 의미가 있음
- 좁은 의미: 과거 데이터로 똑같이 투자 시뮬레이션을 해보는 것(WF, walk forward라 함)
- 넓은 의미: 과거에 발생하지 않았던 시나리오에 대해 시뮬레이션
- 이번 챕터는 넓은 의미의 백테스팅에 관한 내용
- WF 방식의 특징
- 장점
- 과거를 정확히 이해할 수 있음
- 제거 과정(purging)이 적절히 구현만 되면 과거 데이터를 사용하는 것은 유용
- 단점
- 단일 시나리오는 테스트 과정에서 쉽게 과적합 됨
- WF가 반드시 미래 성과를 나타내진 않음 => 특정 데이터 포인트의 시퀀스에 의해 편향될 수 있음
- 초기 결정이 전체 표본 중 더 작은 부분을 활용해 이뤄졌다는 점
- 장점
- CV 방식의 특징
- 장점
- 테스트가 특정 시나리오의 결과가 아님. 사실상 k개의 대체 시나리오 테스트
- 모든 결정이 동일한 크기의 집합에서 이뤄짐. 덕분에 기간 별 성과 비교 가능
- 모든 관측은 오직 하나의 테스트셋에 속함. 준비를 위한 부분 집합이 없으니 가장 긴 샘플 외 시뮬레이션을 얻을 수 있음
- 단점
- WF처럼 관측별로 오직 하나의 예측만 생성됨
- CV는 명확한 역사적 해석이 어려움. 다양한 시나리오 하에서 미래에 대한 성과 시뮬레이션이기 때문
- 훈련셋이 테스트셋의 앞에 놓이는 것이 아니므로 정보 누출이 가능함
- 장점
- CPCV(조합적 제거 교차 검증)
- 백테스트의 경로 개수가 주어지면 CPCV 방식을 통해 필요한 테스트/훈련셋의 정확한 조합 개수를 생성함. 누출된 정보를 가진 관측값도 제거
- N은 훈련셋 개수, k는 테스트셋 개수인데, 보통 k=2로만 해놔도 필요한 경로를 생성하기에 충분함
- 충분히 큰 경로 개수가 확보되면 CPCV는 백테스트의 분산을 매우 작게 낮출 수 있음
13장 합성 데이터에 대한 백테스트
- 거래규칙
- 거래 규칙은 포지션에 진입하거나 청산할 때 지켜야 하는 알고리즘을 제공 => 대개 과거 시뮬레이션을 통해 조율된 파라미터에 의존 => 백테스트 과적합
- 때문에 백테스트 과적합 확률을 평가할 필요가 있음 => 해당 백테스트 결과가 어느 정도의 과적합 리스크를 갖고 있는지 판단하는 것
- 문제
- 파라미터 집합 {R} 중에서 SR(Sharpe Ratio)을 최대화 하는 조합 색출
- R의 여러 값에 대해 S의 성과를 백테스팅
- R*가 다른 거래 규칙 R의 중위값보다 성과가 떨어진다고 예상될 때 과적합 되었다 판단
- 알고리즘
- O-U process로 최적 거래 규칙(OTR) 색출
- OU 프로세스를 통해 입력 파라미터, 손절과 이익 실현 쌍의 격자를 채움
- 실험 결과
- 제로 장기 균형 / 양의 장기 균형 / 음의 장기 균형
- 제로 장기 균형
- 대규모 손절 + 소규모 이익 실현
- 유동성을 공급하는 시장 조성자들의 비즈니스와 일치(이게 정부 같은 개념인가?)
- 손절을 9%대로 걸더라도 이익은 1~1.5%수준, SR은 3.2 정도
- 양의 장기 균형
- 헤지 펀드나 자산운용사와 같은 포지션 보유 투자자의 비즈니스와 일치
- 손절라인은 4~10, 이익 실현은 6% 정도
- 음의 장기 균형
- 원래라면 기대값이 손실인 가정하에서 포지션을 진입하는 경우는 없으나, 이런 손실을 최소화하면서 포지션을 중단할 수 있는 전략도 필요
- 결론
- 해당 방법은 과적합 리스크를 피함
- 아직 OTR이 최고 성능을 낸다는 수학적 증명이 된 것은 아니나, 실험적으로 선험적으로 목표를 성취하는데 도움을 줄 수 있을 것
14장 백테스트 통계량
- 통계량 특성
- AUM: 평균 총 운용 자산, 운용 중인 자산의 평균 달러 가치를 의미.
- capacity(용량): 적절한 베팅 크기와 리스크 분산을 위해 최저 AUM을 알아야 함
- 최대 달러 포지션 크기: 전략이 어느 시점에 평균 AUM을 크게 초과하는 달러 포지션을 취하는지 알려줌
- 연환산 거래량: 낮은 베팅 수, 거래 수에도 거래량은 높을 수 있음. 포지션을 유지한 채로 롱숏 비율을 튜닝할 수도 있기 때문
- 기초 자산과의 상관관계: 전략의 수익률과 기초 투자 유니버스 수익률과의 상관관계를 의미.
- 성과
- 손익
- 롱 포지션으로부터의 손익
- 수익률 연환산 비율
- 히트 비율(승률)
- 히트의 평균 수익률: 수익을 낸 베팅의 평균 수익률
- 미스의 평균 수익률: 손실을 낸 베팅의 평균 수익률
- 수익률 관련
- 높은 샤프 비율
- 높은 연간 베팅 수
- 높은 히트 비율
- 낮은 h+(오른쪽으로 두터운 꼬리가 없는 것)
- 낮은 h-(왼쪽으로 두터운 꼬리가 없는 것)
- 낮은 h[t] (베팅이 시간에 대해 집중되지 않음)
- 손실폭(DD)과 수면하 시간(TuW, mdd length 느낌)
- 양의 수익률에 대한 HHI 인덱스
- 음의 수익률에 대한 HHI 인덱스
- 베팅 사이의 시간에 대한 HHI 인덱스
- 95백분위 DD
- 95백분위 TuW
- 효율성
- 샤프 비율
- 확률적 샤프 비율(PSR): 두꺼운 꼬리를 가진 수익률의 과대 평가 효과를 제거한 SR
- 축소 샤프 비율(DSR): 기각 임계값이 반복 시행 횟수를 반영해 조정된 PSR
15장 전략 리스크 이해
- 대칭 투자 이익
- 어떤 베팅의 익절라인과 손절라인이 동일한 경우의 상황
- 정밀도와 빈도 사이에는 명시적 트레이드 오프가 존재
- 가령 주 단위 베팅만 하는 전략이 2.0 이상의 SR을 얻으려면 상당히 높은 정밀도(p=0.63)가 요구됨
- 비대칭 투자 이익
- 어떤 베팅의 익절라인이 손절라인보다 큰 상황
- 이 경우, 정밀도 p의 작은 변화에도 SR이 급변. 즉, 전략이 변동성이 높고 취약하다는 것
- 전략 실패의 확률
- 작은 p의 변동에도 수익은 천차만별로 달라짐. 때문에 이런 방식은 본질적으로 위험
- 전략 리스크와 포트폴리오 리스크가 다름을 인식해야 함
- 이더리움 단일 종목으로 백테스팅 하는 것에서 넘어설 필요가 있을 듯
- 책에서 제시해준 리스크 계산 함수를 활용(p.328)
- 해당 알고리즘의 확률 결과값이 0.05를 넘는다면, 그 전략은 변동성이 너무 크다고 볼 수 있음.
- 작은 p의 변동에도 수익은 천차만별로 달라짐. 때문에 이런 방식은 본질적으로 위험
16장 머신러닝 자산 배분
- 계층적 리스크 패리티(HRP, Hierarchical Risk Parity)
- 세 가지 문제를 다룸; 불안정성, 집중, 저성과
- HRP는 공분산 행렬을 토대로 분산 포트폴리오 구축
- 기존의 이차 최적화 프로그램과 달리 공분산 행렬의 역행렬이 필요치 않아서 범용적
- 마코위츠의 저주
- 상관관계를 갖는 상품을 추가할수록 조건 수는 커짐. 그런데 조건 수가 너무 높아지면 역행렬이 매우 불안정해짐
- 즉, 특정 원소의 사소한 변화에도 완전히 다른 역행렬이 도출되는 것
- 또, 공분산 행렬의 크기를 증가시키는 것도 해결책이 아님. 가령 크기 50의 공분산 행렬의 역행렬을 구하려면 최소 5년치의 일별 IID 데이터가 필요하기 때문
- 그래서 HRP 방법론을 제안. 크게 3단계로 구성. 트리 군집화, 준대각화, 재귀적 이분법
- HRP 프로세스
- 트리 군집화
- 원소 간 상관관계 행렬 도출
- 모든 열벡터 간의 유클리디안 거리 도출
- 열의 쌍의 거리값이 최소화 되게 군집화 -> u[i]
- U[i]와 군집화되지 않은 단일 원소 사이의 거리를 정의
- 새 원소를 추가하면서 u[i] 정보 업데이트
- 모든 원시 원소가 추가되는 시점에 알고리즘 중단
- 준대각화
- 준대각화를 통해 유사한 금융 상품은 함께 배치, 다른 상품은 떨어뜨림
- 재귀적 이분법
- 상향식과 하향식이 있는데, 하향식으로 접근
- 하향식: 인접한 부분 집합 간의 배분을, 그들의 총 분산에 역비례하도록 분할
- 트리 군집화
'퀀트 공부 > 금융공학' 카테고리의 다른 글
| [초과 수익을 찾아서] 11장 세 개 축 계획 ~ 22장 SNS와 수익률 (1) | 2023.05.19 |
|---|---|
| [초과 수익을 찾아서] 1장 알파 설계 ~ 10장 편향 통제 (0) | 2023.05.18 |
| [AFML] 7장 금융에서의 교차검증 ~ 11장 앙상블 기법 (1) | 2023.05.16 |
| [AFML] 2장 금융 데이터 구조 ~ 6장 앙상블 기법 (0) | 2023.05.15 |
| [패스트캠퍼스] Ch3. 팩터모델링 - 2 (1) | 2023.05.12 |
Comments