2026년 10월 21일 · 리서치

당신의 전략은 240번의 시행을 거쳤습니다. 실제로 백테스트는 몇 번 했을까요?

당신의 전략은 240번의 시행을 거쳤습니다. 실제로 백테스트는 몇 번 했을까요?

파라미터 조합 240개를 시험했습니다. 가장 좋은 결과의 Sharpe 비율은 2.1, 중앙값은 0.1이었고, 1.0을 넘긴 조합은 17개뿐이었습니다. 이 수치만 보면 뭔가 발견한 듯하지만, 모든 전략의 실제 우위가 0이어도 이렇게 폭넓게 탐색하면 그럴듯한 승자가 나올 수 있습니다.

놀라운 숫자는 240입니다. 백테스트 보고서는 보통 선택된 전략이 처음부터 혼자 나온 것처럼 다룹니다. 하지만 리서치는 그렇게 진행되지 않습니다. 파라미터를 조금씩 바꾸고, 피처를 교체하고, 유니버스를 변경하고, 결과가 좋지 않아 다시 실행할 때마다 잡음이 신호처럼 보일 기회가 한 번 더 생깁니다.

전략을 더 많이 시도할수록 최선의 Sharpe가 왜 부풀려질까요?

실제 우위가 없고 추정 Sharpe에 잡음이 있는 서로 독립적인 전략 240개를 생각해 보세요. 대부분의 추정치는 0 근처에 놓이지만, 최댓값은 대체로 양수입니다. 살펴보는 후보가 많을수록 그 최댓값은 실제 값에서 더 멀리 벗어날 수 있습니다.

대략적인 예를 들어 보겠습니다. 각 후보의 추정 Sharpe 표준오차가 0.5라고 가정해 보죠. 서로 독립적인 추출값 240개 가운데 최댓값은 선택만으로 평균보다 약 1.4 표준오차, 즉 Sharpe 약 0.7만큼 높게 나올 수 있습니다. 실제 전략 후보들은 서로 상관되어 있으므로 이 계산을 보고서에 그대로 적용할 보정값으로 써서는 안 됩니다. 폭넓게 탐색한 뒤에는 “승자가 0보다 높았다”는 사실만으로는 근거가 약한 이유를 보여 주는 예입니다.

그리고 탐색 범위는 파라미터 그리드에 그치는 경우가 드뭅니다. 신호군 세 가지를 시험하고, 곡선을 본 뒤 두 가지를 버리고, 거래 유니버스를 바꾼 다음, 살아남은 전략을 다른 리밸런싱 일정으로 다시 돌렸을 수도 있습니다. 이런 선택이 성과의 영향을 받았다면 리서치 이력에 포함해야 합니다.

백테스트 시행으로 무엇을 세어야 할까요?

결과가 어떤 전략을 선택할지에 영향을 줄 수 있었다면 그 결정을 시행으로 세세요. 공개하지 않은 실행과, 주식곡선이 나빠 보여 일찍 중단한 변형도 포함됩니다. 컴파일 오류는 성과 시행이 아니지만, 실망스러운 Sharpe가 나온 실행은 대개 시행에 해당합니다.

리서치 작업대체로 시행으로 셀까요?이유
결과를 검토한 뒤 룩백 기간을 20에서 30으로 변경예첫 번째 결과가 다음 후보에 영향을 줬습니다
미리 정한 새 날짜 구간에 동일한 고정 전략 실행대개 새로운 선택 시행은 아님해당 증거를 보기 전에 규칙을 고정했습니다
성과가 좋은 자산을 확인한 뒤 유니버스 변경예유니버스 선택으로 결과가 더 좋아 보일 수 있습니다
구문 오류를 수정하고 코드는 그대로 둔 채 재실행아니요성과에 따라 달라진 리서치 선택이 없었습니다

구분 기준은 결과를 선택에 활용했는지 여부입니다. 기억만으로 이를 재구성하기 어려울 수 있으므로, 실험 로그에는 모든 실행의 가설, 코드 또는 설정 버전, 데이터 구간, 비용 가정, 결과를 기록해야 합니다.

다중 검정을 보정할 수 있을까요?

선택 편향을 추정하거나 다수의 시행을 고려해 유의성을 조정하는 방법이 있습니다. 유용할 수 있지만, 후보 간 관계와 수익률의 움직임에 관한 가정이 필요합니다. 명목 p값이나 단일 deflated Sharpe 추정치로는 실제 탐색 이력을 잃어버린 문제를 해결할 수 없습니다.

먼저 통제할 수 있는 부분부터 시작하세요. 실제로 손대지 않은 기간을 평가하기 전에 최종 사양을 확정하세요. 후보 전체를 공개된 상태로 유지하세요. 서로 관련된 변형을 많이 시험한다면, 각각을 독립적인 발견인 양 취급하지 말고 이를 만들어 낸 결정에 따라 묶으세요. 승자와 함께 탐색 과정도 보고하세요. 시행 횟수, 선택 규칙, 최종 평가가 이후 수정에 영향을 줬는지를 포함하면 됩니다.

유용한 확인 질문: 홀드아웃 결과가 실망스럽다면 전략을 바꾸고 같은 기간을 다시 홀드아웃이라고 부를 건가요? 그렇다면 그 기간은 이제 리서치에 포함됩니다. 다음 평가에는 새로운 증거가 필요합니다.

AI 리서치 에이전트는 무엇을 기록해야 할까요?

에이전트는 사람이 작업 기억으로 감당할 수 있는 속도보다 더 빠르게 후보를 만들 수 있습니다. 따라서 시행 기록은 보고를 위한 잡무가 아니라 리서치 시스템의 일부입니다. 각 후보를 실행 전에 저장하고, 상위 실험과 후보를 만든 이유도 함께 기록하세요. 실패한 실행과 버린 실행도 보관하세요. 사람이나 에이전트가 성과를 검토한 시점과 그 뒤에 어떤 결정을 내렸는지도 기록하세요.

그런 다음 선택 과정을 재현 가능하게 만드세요. 동일한 후보군과 규칙을 적용하면 같은 승자를 골라야 합니다. 에이전트가 결과를 확인한 뒤 프롬프트, 목표 또는 제약 조건을 계속 바꾼다면 그 변경도 탐색의 일부입니다.

Sharpe 2.1은 더 살펴볼 가치가 있을 수 있습니다. 그 수치의 의미는 어떤 경로로 나왔는지에 달려 있습니다. 리서치 로그에 헤드라인을 두고 후보 240개가 경쟁했다고 기록되어 있다면, 다음 질문을 제대로 할 수 있습니다. 그 선택들이 이미 소진하지 않은 증거는 무엇일까요?

다중 검정백테스팅과적합전략 리서치
← 전체 글