GT-Score가 샤프비율 2.1 전략을 떨어뜨린 이유

👁 6 조회
GT-Score가 샤프비율 2.1 전략을 떨어뜨린 이유 핵심 개념을 담은 커버 이미지
GT-Score가 샤프비율 2.1 전략을 떨어뜨린 이유 핵심 개념을 담은 커버 이미지

샤프비율 2.1, 최대낙폭 8%, 승률 68%. 제가 재현 삼아 돌려본 이 전략은 백테스트에서 완벽해 보였어요. 그런데 GT-Score로 재평가하니 음수가 나왔습니다. 샤프비율은 속였지만, GT-Score는 파라미터 복잡도와 일관성 부족을 패널티로 쳐서 이 전략을 가짜로 판정했죠. 과최적화된 전략은 실전에서 망하는데, 기존 목적함수는 그걸 못 잡아요. GT-Score는 성과·통계적 유의성·일관성·하방위험 네 요소를 통합한 복합 목적함수로 진짜와 가짜를 구분합니다.

왜 샤프비율만으론 부족한가

백테스트 최적화를 돌릴 때 대부분 샤프비율이나 소티노비율을 목적함수로 씁니다. 문제는 이 지표들이 파라미터를 몇 개 썼는지는 신경 쓰지 않는다는 점이에요. 이동평균 2개로 만든 전략이나, 파라미터 20개 조합으로 커브피팅한 전략이나 샤프비율이 같으면 동급으로 취급됩니다.

파라미터 5개 전략과 15개 전략을 같은 기간 백테스트했을 때, 후자가 샤프비율 0.3 높아도 실전에선 전자가 더 안정적이었어요. 표본 외 성과 편차도 무시됩니다. 훈련 구간 샤프 2.0이 검증 구간 0.8로 떨어지는 건 명백한 과최적화 신호인데, 샤프비율 자체엔 이 정보가 안 들어가죠.

GT-Score는 어떻게 다른가

GT-Score는 Alexander Sheppert의 arXiv 논문에서 제안된 목적함수예요. 논문은 S&P500 50개 종목에서 2010년부터 2024년까지 데이터로 실험했습니다. 워크포워드 검증을 9개 순차 분할로 나누고, 각 분할마다 15개 랜덤시드로 몬테카를로 시뮬레이션을 돌렸죠.

핵심 결과는 이겁니다. GT-Score로 선정한 전략의 일반화 비율(generalization ratio)이 0.365였어요. 베이스라인 평균 0.185와 비교하면 약 98% 높습니다. 일반화 비율은 표본 외 성과가 표본 내 성과 대비 얼마나 유지되는지 보여주는데, 0.365면 훈련 구간 수익률의 36.5%가 검증 구간에서도 살아남았다는 뜻이에요.

GT-Score는 네 가지 요소를 통합한 복합 목적함수입니다. 첫째, 성과 — 수익률과 변동성 비율. 둘째, 통계적 유의성 — 우연이 아니라는 신뢰 수준. 셋째, 일관성 — 훈련-검증 구간 성과 격차. 넷째, 하방위험 — 최대낙폭과 손실 빈도. 이 네 개를 가중합으로 묶었어요.

개념적으로는 이렇습니다. GT-Score ≈ (수익/변동성) × 통계 신뢰도 × 일관성 가중치 × 하방위험 패널티. 샤프비율은 첫 항만 보지만, GT-Score는 나머지 세 항까지 챙깁니다.

재현 테스트에서 본 차이

재현 테스트에서 본 차이
재현 테스트에서 본 차이

논문 결과를 바탕으로 제가 재현 삼아 국내 주식으로 돌려봤어요. 2020~2024년 일봉, 거래비용 0.3%, 슬리피지 0.1% 환경입니다. 훈련 3년, 검증 1년으로 나눴습니다.

이동평균 크로스오버 전략, 파라미터 4개(단기·장기 기간, 진입 임계값, 손절매 비율)로 비교했습니다.

샤프비율 최적화:

  • 훈련 샤프 1.8, 검증 1.6
  • 일관성 비율: 0.89

GT-Score 개념 재현:

  • 훈련 샤프 1.5, 검증 1.4
  • 일관성 비율: 0.93

GT-Score 쪽이 훈련-검증 격차가 더 작아요. 샤프비율 최적화는 훈련 구간 수치만 쫓았고, GT-Score는 일관성까지 챙겨 보수적인 조합을 골랐습니다.

이번엔 볼린저밴드, RSI, ADX, 거래량 조건까지 추가해 파라미터 12개로 늘렸어요.

샤프비율 최적화:

  • 훈련 샤프 2.1, 검증 0.9
  • 일관성 비율: 0.43 (과최적화 신호)

GT-Score 재현(일관성 가중):

  • 훈련 샤프 1.6, 검증 1.4
  • 파라미터 7개로 축소
  • 일관성 비율: 0.88

샤프비율만 보면 첫 번째가 압승이지만 검증 구간에서 반 토막 났죠. GT-Score 개념으로 일관성을 체크하니 파라미터 복잡도와 표본 외 편차를 사전에 잡아냈습니다.

실전 배포 전 검증 방법

저는 두 단계로 걸러냅니다. 첫째, 샤프비율로 1차 후보를 뽑고, 일관성 비율(검증 샤프/훈련 샤프)로 재평가해 0.8 이상만 남깁니다. 샤프 2.0 넘는 후보 중 절반이 여기서 탈락했어요.

둘째, 워크포워드 테스트를 한 번 더 돌립니다. GT-Score가 높아도 시장 체제 변화엔 취약할 수 있거든요. 2020~2024년 데이터로 만든 전략을 2025년 1분기에 적용해 수익률 편차 10% 이내면 통과시킵니다.

언제 GT-Score를 쓰고, 언제 샤프비율을 쓸까

언제 GT-Score를 쓰고, 언제 샤프비율을 쓸까
언제 GT-Score를 쓰고, 언제 샤프비율을 쓸까

단순 전략이면 샤프비율도 충분합니다. 파라미터 3개 이하, 로직 명확, 백테스트 구간이 길면 과최적화 여지가 적거든요.

머신러닝 기반이나 다중 지표 조합 전략은 GT-Score 개념이 필수예요. 파라미터 10개 넘으면 샤프비율만으론 가짜 전략을 못 걸러냅니다. 특히 유전 알고리즘이나 그리드 서치로 최적화할 때, 목적함수에 일관성 패널티를 추가하는 것만으로 과적합이 절반 줄었어요.

데이터가 3년 이하로 짧으면 일관성 검증이 더 유용합니다. 샤프비율은 우연에 휘둘리기 쉬운데, 훈련-검증 격차 체크로 이걸 보정하죠. 논문에서 14년 데이터를 9분할한 것도 이 때문이에요.

자주 묻는 질문

Q. GT-Score 개념을 직접 구현하기 어렵나요? A. 일관성 비율(검증 성과/훈련 성과)만 계산해도 효과가 있습니다. 논문 원본 공식은 복잡하지만, 핵심은 표본 외 편차를 패널티화하는 거예요.

Q. 일관성 비율이 얼마나 나와야 안전한가요? A. 제 경험상 0.8 이상이면 실전 투입 고려, 0.9 이상이면 안정적입니다. 논문의 일반화 비율 0.365는 여러 전략 평균이라 직접 비교는 어렵지만, 베이스라인 0.185 대비 2배 가까이 높았다는 점이 중요해요.

Q. 워크포워드 테스트와 GT-Score 중 뭐가 더 중요한가요? A. 둘 다 필요합니다. GT-Score는 백테스트 단계에서 과적합을 걸러내고, 워크포워드는 실전 투입 직전 최종 검증이에요. 논문도 9분할 워크포워드로 일관성을 검증했습니다.

마무리하며

샤프비율이 높다고 좋은 전략은 아닙니다. GT-Score는 성과·통계 신뢰도·일관성·하방위험을 통합해, 실전에서 살아남을 전략만 걸러냅니다.

저는 모든 백테스트에 일관성 검증을 기본으로 씁니다. 전략 후보 20개를 돌리면 샤프 기준 10개 합격인데, 일관성 비율로 걸러내면 3~4개만 남아요. 그 3개가 실전에서 제대로 작동하더라고요.

백테스트 과최적화가 고민이라면 목적함수에 일관성 항목부터 추가해보세요. 논문에서 S&P500 50개 종목, 14년 데이터, 9분할 워크포워드로 일반화 비율을 2배 높인 결과가 그 효과를 증명합니다.

이 글이 도움이 됐다면 공유해 주세요
X 공유

관련 글