PRAESENTIA

[AFML] 12장 교차검증 백테스트 ~ 16장 자산배분 본문

퀀트 공부/금융공학

[AFML] 12장 교차검증 백테스트 ~ 16장 자산배분

박병후 2023. 5. 17. 18:30

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를 넘는다면, 그 전략은 변동성이 너무 크다고 볼 수 있음.

 

 

 

16장 머신러닝 자산 배분

  • 계층적 리스크 패리티(HRP, Hierarchical Risk Parity)
    • 세 가지 문제를 다룸; 불안정성, 집중, 저성과
    • HRP는 공분산 행렬을 토대로 분산 포트폴리오 구축
    • 기존의 이차 최적화 프로그램과 달리 공분산 행렬의 역행렬이 필요치 않아서 범용적
  • 마코위츠의 저주
    • 상관관계를 갖는 상품을 추가할수록 조건 수는 커짐. 그런데 조건 수가 너무 높아지면 역행렬이 매우 불안정해짐
    • 즉, 특정 원소의 사소한 변화에도 완전히 다른 역행렬이 도출되는 것
    • 또, 공분산 행렬의 크기를 증가시키는 것도 해결책이 아님. 가령 크기 50의 공분산 행렬의 역행렬을 구하려면 최소 5년치의 일별 IID 데이터가 필요하기 때문
    • 그래서 HRP 방법론을 제안. 크게 3단계로 구성. 트리 군집화, 준대각화, 재귀적 이분법
  • HRP 프로세스
    • 트리 군집화
      • 원소 간 상관관계 행렬 도출
      • 모든 열벡터 간의 유클리디안 거리 도출
      • 열의 쌍의 거리값이 최소화 되게 군집화 -> u[i]
      • U[i]와 군집화되지 않은 단일 원소 사이의 거리를 정의
      • 새 원소를 추가하면서 u[i] 정보 업데이트
      • 모든 원시 원소가 추가되는 시점에 알고리즘 중단
    • 준대각화
      • 준대각화를 통해 유사한 금융 상품은 함께 배치, 다른 상품은 떨어뜨림
    • 재귀적 이분법
      • 상향식과 하향식이 있는데, 하향식으로 접근
      • 하향식: 인접한 부분 집합 간의 배분을, 그들의 총 분산에 역비례하도록 분할

 

 

Comments