전략 변형 1,000개. 그중 최고 성과의 측정 Sharpe는 2.0. 거짓 양성률은 5%. 이 수치들은 강력한 결과처럼 들리지만, 그 결과를 찾기까지 몇 번이나 시도했는지 물으면 이야기가 달라집니다. 충분히 많이 시도하면 잡음만으로도 그럴듯한 백테스트 결과가 나올 수 있습니다.
놀라운 숫자는 Sharpe가 아닙니다. 시행 횟수입니다. 지표의 기간 설정, 진입 임계값, 대상 종목군 선택, 폐기한 아이디어까지 모두 운 좋게 나온 결과를 선택할 기회를 하나씩 더합니다. 리서치 과정에서 이런 시도를 잊으면 신뢰도를 계산할 때도 빠뜨리게 됩니다.
전략을 더 많이 시도할수록 왜 우승 후보가 더 좋아 보일까요?
실질적인 엣지가 전혀 없는 전략 1,000개를 테스트한다고 해봅시다. 각 전략은 일반적인 검정에서 통계적으로 유의해 보일 확률이 5%입니다. 실제 리서치에서 이 시행들이 완벽히 독립적이지는 않지만, 기본 원리는 같습니다. 살펴보는 후보가 많아질수록 우연히 하나가 탁월해 보일 가능성도 커집니다.
모든 후보가 서로 독립적이라고 해도, 그중 하나 이상이 5% 기준을 넘을 확률은 약 99.4%입니다. 실제로는 인접한 파라미터 설정들이 비슷하게 움직이는 경우가 많으므로, 변형 1,000개가 독립적인 동전 던지기 1,000번과 같지는 않습니다. 그렇다고 실질적인 시행 횟수가 1번뿐인 경우도 드뭅니다.
노트북에서 자주 보는 작은 함정이 있습니다. 한 리서처가 룩백을 5에서 100까지 바꿔 테스트하고 Sharpe 표면을 그린 다음, 깔끔해 보이는 꼭짓점을 보고합니다. 표면은 민감도를 파악하는 데 유용합니다. 하지만 그 꼭짓점은 탐색을 거쳐 나온 결과이므로, 실험 전에 정한 임계값보다 낮은 신뢰를 줘야 합니다.
리서치 시행에는 무엇이 포함될까요?
관측한 결과의 영향을 받은 의사결정을 세면 됩니다. 시행은 코딩한 백테스트일 수도 있지만, 주식 곡선을 본 뒤 수동으로 설정을 바꾸는 일일 수도 있습니다. 기존 설정에서 랠리를 놓쳤다는 이유로 스톱을 넓혔다면, 테스트 기간에서 얻은 정보를 사용한 것입니다.
| 리서치 작업 | 보통 시행으로 세나요? | 이유 |
|---|---|---|
| 다른 시그널 임계값 테스트 | 예 | 결과를 바탕으로 후보를 선택하기 때문입니다 |
| 낙폭을 본 뒤 기간 범위 변경 | 예 | 성과에 따라 표본을 선택했기 때문입니다 |
| 기록된 데이터 버그 수정 | 보통은 아니요 | 의도한 실험을 복원하는 변경이기 때문입니다 |
| 동결한 전략을 새로운 홀드아웃 기간에 실행 | 아직 새로운 선택 시행은 아닙니다 | 그 결과를 보고 튜닝하면 시행으로 간주합니다 |
어디까지 셀지는 판단이 필요합니다. 오타를 고치는 일은 실패한 시점을 보고 특성을 변경하는 일과 다릅니다. 가설, 변경 사항, 데이터 기간, 결과를 간단한 시행 로그에 적어 두세요. 보기 좋게 정리할 필요는 없습니다. 날짜가 기록된 CSV만 있어도 3개월 뒤 기억을 되짚어 탐색 과정을 재구성하는 것보다 낫습니다.
다중 검정을 고려해 Sharpe를 보정할 수 있을까요?
Deflated Sharpe Ratio 같은 방법은 수익률 분포와 시행 간 의존성 같은 요소를 고려하면서 여러 후보 중 선택하는 과정에서 겉보기 성과가 얼마나 나올 수 있는지 추정합니다. 유용한 진단 도구이지만, 어수선한 리서치 과정을 확실한 결과로 바꿔 주는 기계는 아닙니다. 결과는 가정과 시행 횟수의 신뢰도에 따라 달라집니다.
대략적인 감을 잡기 위해 한 리서처가 변형 400개를 테스트해 Sharpe 1.8을 얻었고, 수익률에 상당한 왜도와 두꺼운 꼬리가 있다고 추정했다고 해봅시다. 이 결과는 사전 등록한 테스트 1회에서 나온 Sharpe 1.8보다 더 높은 기준을 넘어야 합니다. 보정하면 증거의 힘이 크게 약해질 수 있지만, 그 엣지가 실제라고 알려 주지는 않습니다.
해명해야 할 때가 오기 전에 탐색 과정을 기록하세요. 후보 수, 파라미터 범위, 살펴본 데이터 기간, 수동으로 수정한 내용이 여기에 포함됩니다. 이런 세부 사항을 모른다면 백테스트를 탐색적 분석으로 설명하세요.
페이퍼 트레이딩 전에 무엇을 해야 할까요?
후보 하나를 동결하고, 실행하기 전에 다음 평가 방법을 정하세요. 학습 데이터로 전략을 고르고 검증 데이터에서 살펴본 다음, 설계에 다시 반영하지 않을 최종 기간이나 페이퍼 트레이딩 구간을 남겨 두는 것이 유용한 순서입니다. 단계마다 답하려는 질문이 다릅니다. 최종 단계의 결과를 보고 전략을 반복해서 조정하면 그 단계도 학습 데이터가 됩니다.
인접한 설정에서도 같은 결과가 나오는지 살펴보세요. 완만하게 양의 성과를 보이는 넓은 영역은 바늘처럼 뾰족한 단일 꼭짓점보다 대체로 신뢰할 만합니다. 다만 견고한 결과가 잘못된 실행 모델을 바로잡아 주지는 않습니다. 수수료, 펀딩, 시장 충격, 상품 이용 가능성도 전략이 실제로 마주할 조건과 맞아야 합니다.
페이퍼 트레이딩은 타이밍과 주문 처리, 실시간 리서치 파이프라인이 예상대로 작동하는지 등 운영상의 일치 여부를 확인하는 증거를 보탭니다. 이미 일어난 선택 과정을 없애 주지는 않습니다. 첫 페이퍼 주문을 내보낼 때도 운 좋았던 백테스트 1,000개는 여전히 시도 1,000번입니다.
따라서 백테스트에서 Sharpe 2가 나왔다면, 주식 곡선과 함께 리서치 이력도 요청하세요. 아이디어를 몇 개나 시도했나요? 어떤 결과가 다음 실험을 바꾸었나요? 그 답이 보고서에서 가장 중요한 통계일 수도 있습니다.
← 전체 글


