표본 외 검증: 백테스트에 속지 마세요 Walk-Forward Testing
과거 데이터에서 가장 좋은 파라미터를 고르는 건 쉬워요. 어려운 건 본 적 없는 데이터에서도 통하느냐예요. 워크포워드 분석은 실제처럼 ‘먼저 파라미터를 고르고, 그다음 실전에 나가는’ 과정을 흉내 내요.
이 레슨은 무료예요. 회원가입하면 인터랙티브 시뮬레이션을 쓸 수 있어요
레슨마다 드래그하고 재생할 수 있는 인터랙티브 시뮬레이션과 퀴즈가 있어요. 가입하면 무료로 쓸 수 있고 학습 진도도 자동 저장돼요. 아래에 먼저 이 레슨의 텍스트 설명을 실었어요.
아직 못 정했나요? 먼저 첫 레슨을 둘러보세요(가입 없이 이용)「규칙 블록으로 전략 쌓기」。
텍스트 설명 · 퀀트 입문 5번째 레슨 ‘표본 외 검증: 백테스트에 속지 마세요’
과거 데이터에서 가장 좋은 파라미터를 고르는 건 쉬워요. 어려운 건 본 적 없는 데이터에서도 통하느냐예요. 워크포워드 분석은 실제처럼 ‘먼저 파라미터를 고르고, 그다음 실전에 나가는’ 과정을 흉내 내요.
먼저 파라미터를 고르고, 그다음 실전에
실제 거래에서는 과거 데이터로만 파라미터를 고를 수 있어요. 워크포워드 분석은 이 과정을 시뮬레이션해요. 표본 내에서 최적 파라미터를 고르고, 바로 이어지는 표본 외에서 검증한 뒤, 전체를 앞으로 굴려요.
백테스트 속 거품
전체 데이터로 고른 ‘최적 파라미터’는 답을 보면서 문제를 푸는 것과 같아요. 표본 외 성과와의 차이가 백테스트 속 거품이에요. 순수 노이즈에서도 그럴듯한 파라미터를 고를 수 있다는 게 과최적화(오버피팅)의 가장 직접적인 증거예요.
봉우리 말고 평원을 찾으세요
믿을 만한 파라미터라면 그 주변 파라미터도 성과가 괜찮아요. 한 파라미터만 유독 좋고 주변이 다 나쁘면 대개 우연이라, 시세가 바뀌면 통하지 않아요.
이 레슨의 핵심
- 표본 내에서 파라미터를 고르고 표본 외에서 검증해요. 표본 외 성과가 실제 수준에 더 가까워요.
- 워크포워드: 매번 과거 한 구간으로 파라미터를 고르고, 바로 다음 구간에서 검증한 뒤, 전체를 앞으로 옮겨 가요.
- 표본 내에서는 아주 좋고 표본 외에서는 아주 나쁘다면, 전략이 대부분 잡음에 맞춰졌다는 뜻이에요.
- 좋은 파라미터 근처의 파라미터도 괜찮아야 해요. ‘뾰족한 봉우리’ 하나만 유독 좋다면 대개 우연이에요.
직접 해 보기
아래 연습은 이 레슨의 인터랙티브 시뮬레이션에서 해 볼 수 있어요:
- ‘스타일 전환’ 시세에서 전체 표본 최적 수익은 얼마인가요? 표본 외 합계는요?
- ‘순수 노이즈’로 바꿔 보세요. 각 구간의 표본 내 평균은 얼마인가요? 표본 외 합계는요?
- ‘스타일 전환’으로 돌아가 학습 구간을 120개 봉에서 200개 봉으로 바꿔 보세요. 파라미터 교체 횟수가 줄었나요? 표본 외 합계는 좋아졌나요, 나빠졌나요?
- ‘장기 추세’로 바꿔 보세요. 표본 외 합계는 여전히 양수인가요? ‘전체 표본 최적’과 얼마나 차이 나나요?
퀴즈와 해설
- 1. 어떤 파라미터가 표본 내 연 40%, 표본 외 연 −5%예요. 가장 그럴듯한 뜻은?
- 정답: 과거의 잡음에 과최적화됐다‘본 적 있는 데이터’에서만 성과가 좋은 건 과최적화의 전형적인 특징이에요.
- 2. 워크포워드 분석은 어떻게 할까요?
- 정답: 과거 데이터로 파라미터를 고르고 다음 구간에서 검증한 뒤 앞으로 옮겨 간다실제 거래에서 ‘과거 정보로만 결정할 수 있는’ 상황을 흉내 내는 거예요.
- 3. 파라미터 200개 조합을 시험해 백테스트 결과가 가장 좋은 연 35%짜리를 골랐어요. 가장 합리적인 다음 단계는?
- 정답: 선택에 쓰지 않은 표본 외 데이터로 검증한다시험한 조합이 많을수록 ‘우연히 보기 좋은’ 파라미터를 고를 가능성이 커지니, 본 적 없는 데이터로 꼭 검증해야 해요.
이 레슨의 용어
- 표본 내 (In-Sample): 파라미터 최적화에 사용한 구간의 과거 데이터예요.
- 표본 외 (Out-of-Sample): 최적화에 쓰지 않고 전략 검증용으로 따로 남겨 둔 데이터예요.
- 과최적화(오버피팅) (Overfitting): 파라미터를 과거 데이터에 지나치게 맞춰, 새 데이터에서는 성과가 형편없어지는 거예요.
- 워크포워드 분석 (Walk-Forward Analysis): 과거 한 구간으로 파라미터를 고르고 바로 다음 구간에서 검증한 뒤, 전체를 앞으로 굴려 가며 반복해 실제 매매를 흉내 내는 방법이에요.