백테스트 변수 100개를 비교하면 가장 높은 수익률을 낸 조합은 반드시 나옵니다. 문제는 그 최고점이 전략의 우위를 보여 주는지, 우연히 과거 데이터에만 맞은 결과인지 구분하기 어렵다는 데 있습니다.
윌리엄 에크하르트는 리처드 데니스와 터틀 트레이더 실험을 설계한 인물로 알려져 있지만, 그의 인터뷰에서 더 오래 남는 주제는 규칙의 연구 방법입니다. 가격 분포가 정규분포처럼 얌전하지 않고 극단값이 자주 나타난다면, 작은 표본에서 얻은 정교한 결론보다 큰 표본에서 버티는 둔감한 규칙이 필요하다고 설명합니다.
여기서 견고하다는 말은 수익률이 가장 높다는 뜻이 아닙니다. 데이터의 일부가 바뀌거나 변수 값을 조금 움직여도 결론이 크게 무너지지 않는다는 뜻입니다.
이 글의 핵심
- 백테스트 최고 수익률은 견고성의 증거가 아닙니다.
- 변수와 필터가 늘어날수록 더 많은 표본과 별도의 과최적화 검사가 필요합니다.
- 연구 단계에서는 규칙을 의심하고, 운용 단계에서는 확정한 규칙을 임의로 바꾸지 않아야 합니다.
에크하르트가 경계한 것은 최적화 자체가 아닙니다
과최적화를 피하려면 변수를 전혀 최적화하지 말아야 한다는 주장도 있습니다. 에크하르트의 입장은 조금 다릅니다.
2011년 Futures Magazine 인터뷰에서 그는 최적화를 하지 않으면 규칙을 충분히 학습하지 못할 수 있고, 반대로 지나치게 최적화하면 미래보다 과거를 더 잘 설명하는 시스템이 된다고 말합니다. 중요한 것은 최적화의 유무가 아니라 규칙의 자유도와 이를 뒷받침하는 표본의 관계입니다.
기간, 임계값, 필터, 예외 조건 하나를 선택할 때마다 연구자가 고를 수 있는 자유도가 늘어납니다. 선택지가 많아질수록 과거 데이터에서 우연히 잘 맞는 조합을 찾기 쉬워집니다.
예를 들어 다음 두 전략을 비교할 수 있습니다.
- 전략 A: 20일 신고가 돌파, 10일 신저가 청산
- 전략 B: 17일 신고가 돌파, ADX 23 이상, 거래량 1.7배, 월요일 제외, 변동성 상위 30% 제외, 최근 거래 손실이면 다음 신호 건너뛰기
전략 B가 수익률이 높더라도 검증해야 할 선택이 훨씬 많습니다. 각 숫자와 필터가 독립적인 근거를 갖는지, 같은 데이터에서 여러 조합을 시험한 뒤 고른 것은 아닌지 확인해야 합니다.
자유도와 표본은 함께 봐야 합니다
에크하르트는 같은 인터뷰에서 과최적화 가능성을 결정하는 핵심으로 시스템의 자유도와 거래 표본 수를 함께 듭니다. 그의 회사는 당시 시스템의 자유도를 제한하고 수천 건의 큰 표본을 요구한다고 설명했습니다.
이 숫자를 개인 투자자의 보편 규칙으로 복제할 수는 없습니다. 선물 여러 시장을 함께 거래한 운용사의 연구 환경과 국내 주식 단일 전략의 데이터 구조가 다르기 때문입니다. 다만 방향은 명확합니다.
선택한 것이 많을수록 그것을 정당화할 독립적인 관찰도 더 많이 필요합니다.
거래가 40번뿐인 전략에서 기간·임계값·손절·익절·필터를 수십 개 비교하면, 가장 좋은 결과는 실제 우위보다 선택 과정의 운을 반영할 가능성이 큽니다. 반대로 수천 건의 거래가 있더라도 같은 날짜와 같은 시장 충격에서 발생한 신호라면 완전히 독립된 표본으로 보기 어렵습니다.
표본 수는 단순히 행 개수가 아닙니다.
| 확인할 표본 | 필요한 이유 |
|---|---|
| 여러 시장·종목 | 한 자산의 우연한 추세에만 맞았는지 확인 |
| 상승·하락·횡보 국면 | 특정 시장 방향의 수혜인지 확인 |
| 변동성 확대·축소 구간 | 꼬리 손실과 체결 악화를 포함 |
| 비용 전·후 결과 | 작은 우위가 실제 주문에서도 남는지 확인 |
| 시간상 뒤의 구간 | 규칙을 고른 뒤에도 같은 방향인지 확인 |

가격 분포의 꼬리가 두꺼우면 무엇이 달라질까
에크하르트가 견고한 통계를 강조한 이유에는 금융 수익률의 두꺼운 꼬리가 있습니다. 정규분포보다 극단적인 움직임이 자주 나타나면 평균과 표준편차가 적은 표본에 크게 흔들릴 수 있습니다.
2018년 Eckhardt Trading Company가 공개한 인터뷰 자료에는 정규분포를 강하게 가정하지 않는 통계와 큰 표본을 사용한다는 설명이 나옵니다. 극단적인 사건이 추론을 어렵게 만들기 때문에 20년이 넘는 기간과 다양한 시장을 검토한다고 소개합니다.
이 문제는 단순히 블랙스완을 견디기 위한 손절만을 뜻하지 않습니다. 극단값 한두 개가 전략의 평균 수익을 만들었을 수도 있습니다.
예를 들어 200건의 거래 중 198건이 비용 뒤 0에 가깝고 두 거래만 큰 수익이라면, 전체 CAGR은 좋아 보일 수 있습니다. 그러나 그 두 거래가 특정 위기와 종목에서만 발생했다면 다음 표본에서 반복될 근거가 약합니다.
견고성 검사는 큰 손실을 찾는 동시에 큰 수익에 대한 의존도도 확인해야 합니다.
- 상위 수익 거래 1·5·10개를 제외하면 성과가 남는가
- 한 해 또는 한 종목을 제외하면 결론이 바뀌는가
- 변동성·거래비용을 조금 높여도 우위가 남는가
- 같은 규칙이 인접한 변수에서도 비슷하게 작동하는가
최고점보다 안정 구간을 보는 이유
변수별 결과를 그렸을 때 하나의 뾰족한 최고점과 넓은 완만한 구간이 나올 수 있습니다.
| 변수 결과 모양 | 가능한 해석 | 다음 확인 |
|---|---|---|
| 한 값에서만 급격한 최고점 | 데이터의 특정 사건에 맞았을 가능성 | 거래 목록과 특정 기간 의존도 |
| 인접 값에서 비슷한 성과 | 규칙의 방향이 변수 오차에 덜 민감 | 비용·국면·종목 확장 |
| 기간마다 최고값이 크게 이동 | 시장 국면을 뒤따라 맞춘 결과일 수 있음 | 워크포워드와 재선정 빈도 |
| 모든 값에서 성과가 약함 | 아이디어 자체의 우위가 부족 | 필터 추가보다 가설 재검토 |
20일선이 21일선보다 수익률이 조금 높다는 사실은 20이 정답이라는 증거가 아닙니다. 15~30일이 대체로 같은 방향이고 비용 뒤 성과가 유지된다면 최근 한 달 안팎의 추세라는 가설이 더 중요한 정보입니다.
반대로 19일과 21일은 손실인데 20일만 큰 수익이라면 숫자 20보다 그 결과를 만든 몇 번의 거래를 먼저 살펴봐야 합니다. EMA 변수 49개를 검증한 글에서도 단일 최고 조합과 넓은 안정 구간을 구분하는 이유가 같습니다.
표본 안·표본 밖 분리만으로 충분할까
표본 밖 검증은 중요한 출발점입니다. 규칙을 고르는 데 쓰지 않은 뒤쪽 기간에서 결과를 확인하면 같은 데이터를 두 번 쓰는 문제를 줄일 수 있습니다.
그러나 한 번의 분할만으로 모든 문제가 해결되지는 않습니다.
- 분할 날짜를 여러 번 바꾼 뒤 가장 좋은 결과를 고를 수 있습니다.
- 표본 밖 기간에 맞춰 규칙을 다시 수정하면 그 구간도 사실상 학습 데이터가 됩니다.
- 한 번의 위기나 강한 추세가 표본 밖 전체 결과를 지배할 수 있습니다.
- 종목 생존 편향과 잘못된 수정주가는 분할 뒤에도 그대로 남습니다.
2011년 인터뷰에서 에크하르트는 과최적화 검사가 필요하다고 강조하면서, 독자적인 방법이 없다면 표본 안·밖 분리를 사용하라고 설명합니다. 그의 회사가 쓴 구체적인 독점 검증법을 공개 규칙처럼 재현할 수는 없습니다.
개인 연구에서는 여러 검사를 겹쳐 사용하는 편이 현실적입니다.
- 연구에 사용할 기간과 최종 확인 기간을 미리 나눕니다.
- 변수의 전체 분포와 인접 값의 성과를 확인합니다.
- 여러 종목·시장·국면으로 넓힙니다.
- 거래비용과 체결 시점을 불리하게 바꿉니다.
- 워크포워드에서 변수 재선정 규칙까지 고정합니다.
- 결과가 나온 뒤 새 필터를 붙였다면 검증을 처음부터 다시 시작합니다.
EMA 변수를 매년 다시 고르는 워크포워드 검증은 변수 선택 시점과 다음 운용 기간을 분리했을 때 결과가 어떻게 달라지는지 보여 줍니다.
연구와 운용을 분리해야 하는 이유
에크하르트의 인터뷰에서 인상적인 구분은 연구에서는 창의적으로 개선하되, 실제 거래에서는 확정한 시스템을 충실히 따라야 한다는 것입니다.
이 말은 규칙을 영원히 바꾸지 말라는 뜻이 아닙니다. 운용 중인 시스템과 새로 연구하는 후보를 분리하라는 뜻에 가깝습니다.
| 연구 환경 | 실제 운용 환경 |
|---|---|
| 새 가설과 변수를 자유롭게 시험 | 현재 버전의 진입·청산·수량을 고정 |
| 실패 결과도 모두 기록 | 사전에 정한 예외만 허용 |
| 비용·시장·기간 민감도 검사 | 주문·체결·오류를 별도 기록 |
| 검증 통과 뒤 새 버전 승인 | 승인된 시점에만 버전 변경 |
손실이 몇 번 났다는 이유로 장중에 필터를 하나 추가하면, 그 순간부터 백테스트한 전략과 실제 전략은 달라집니다. 반대로 오래된 규칙이라는 이유만으로 검증 없이 계속 쓰면 시장 변화에 대응하지 못합니다.
해결책은 운용 중 수정이 아니라 연구된 새 버전으로 교체입니다. 기존 버전과 새 버전의 시작일, 데이터, 변수, 승인 이유를 남겨야 나중에 어떤 규칙이 어떤 성과를 냈는지 구분할 수 있습니다.
견고성이라는 말도 남용할 수 있습니다
여러 시장에서 성과가 남는다고 해서 미래 수익이 보장되는 것은 아닙니다. 같은 데이터 공급자와 비슷한 자산을 사용하면 표본이 많아 보여도 공통 위험에 의존할 수 있습니다.
또한 매우 단순한 규칙이 자동으로 견고한 것도 아닙니다. 잘못된 체결 가정 하나를 단순하게 반복하면 결과는 일관되게 틀립니다. 견고성은 규칙의 짧은 길이가 아니라 잘못된 가정과 데이터 변화에 대한 민감도로 판단해야 합니다.
에크하르트 개인과 회사의 구체적인 시스템, 독점 통계 검사, 실제 위험 예산은 공개 자료만으로 복제할 수 없습니다. 따라서 이 글은 그의 시스템을 재현하는 글이 아니라, 공개 인터뷰에서 확인되는 연구 원칙을 독자의 백테스트 질문으로 바꾼 것입니다.
백테스트를 확정하기 전에 물을 세 가지
- 선택한 기간·임계값·필터 수에 비해 독립적인 거래 표본이 충분한가?
- 최고 변수 주변과 다른 시장 국면에서도 성과 방향이 유지되는가?
- 연구 중인 규칙과 실제 운용 중인 규칙의 버전을 분리했는가?
좋은 백테스트는 과거 수익률을 가장 크게 만드는 작업이 아닙니다. 데이터와 가정이 조금 달라졌을 때도 같은 질문에 비슷한 답을 주는 규칙을 찾는 작업입니다.
윌리엄 에크하르트의 연구 원칙이 남기는 결론도 단순합니다. 뾰족한 최고점보다 넓은 안정 구간을 찾고, 정교한 숫자보다 그 숫자를 지탱할 충분한 표본을 먼저 확인해야 합니다.
참고한 자료
- Daniel P. Collins, William Eckhardt: The Man Who Launched 1,000 Systems, Futures Magazine, 2011
- The Hedge Fund Journal, Fifty Years of Evolutionary Trading, 2018
- The Hedge Fund Journal, Eckhardt: Seeking Consistency Across Market Regimes, 2023
- Eckhardt Trading Company 공식 소개
이 글은 공개 자료를 바탕으로 한 매매 원칙 해설입니다. 특정 전략의 매수·매도 추천이나 미래 수익을 의미하지 않으며, 실제 투자 판단과 책임은 투자자 본인에게 있습니다.