본문으로 건너뛰기
ModuQuant
/백테스트 과최적화(오버피팅) 뜻과 피하는 법
백테스트 설계와 해석

백테스트 과최적화(오버피팅) 뜻과 피하는 법

NEW

과최적화가 왜 백테스트의 가장 큰 함정인지, 실전에서 무너지는 이유와 예방법(Out-of-sample 등)을 정리했습니다.

마지막 수정: 2026. 10. 2. 오후 6:29:50약 4분 소요

과최적화란?

과최적화(Overfitting)는 파라미터를 과거 데이터에 지나치게 맞춰, 백테스트에서는 화려하지만 실전에서는 무너지는 현상입니다. 수백 가지 조합을 시도하면 우연히 과거에 완벽히 맞는 값이 나오는데, 이는 시장의 법칙이 아니라 과거의 잡음을 외운 것에 불과합니다.

왜 실전에서 무너지는가

과최적화된 전략은 과거의 특정 사건(예: 특정 급락일)에 맞춰져 있어, 미래의 다른 국면에서는 재현되지 않습니다. 백테스트 수익률이 높을수록 오히려 의심해야 하는 역설이 여기서 나옵니다.

과최적화 신호

  • 파라미터를 조금만 바꿔도 성과가 급변한다(견고성 부족).
  • 거래 횟수가 적은데 수익률이 매우 높다(표본 부족).
  • 규칙이 지나치게 복잡하고 예외 조건이 많다.

과최적화를 피하는 법

  • Out-of-sample 검증 — 최적화에 쓰지 않은 별도 구간에서 성과를 재확인.
  • 워크포워드 분석 — 기간을 굴려가며(rolling) 반복 검증.
  • 파라미터 최소화 — 변수 개수를 줄일수록 견고해집니다.
  • 파라미터 안정 구간 — 최적값 하나가 아니라 그 주변에서도 성과가 유지되는지 확인.
  • 논리적 이유 — 왜 통하는지 설명 가능한 전략만 채택.

실제로 탈락한 전략들 — 기록으로 남긴 이유

널리 알려진 전략들을 같은 데이터·같은 방법으로 다시 재면, 상당수가 엣지를 남기지 않습니다. 가격 규칙 조합, 서로 다른 신호의 결합, 단일 종목 매매 타이밍 최적화, 변동성 타겟팅, 수급과 지지·저항의 조합 등이 그런 예입니다. 어느 것도 "나쁜 전략"이라는 뜻이 아니라, 이 방법·이 데이터로 재봤을 때 재현되지 않았다는 기록입니다.

이 기록이 과최적화 문서에 들어가는 이유는 간단합니다. 탈락한 전략들도 처음 백테스트에서는 대부분 좋아 보였습니다. 구간을 바꾸고, 종목 묶음을 바꾸고, 거래비용을 넣는 단계에서 사라졌습니다. "백테스트에서 좋았다"와 "조건을 바꿔도 남았다"는 전혀 다른 주장입니다.

IS/OOS로 나눌 때 조심할 것

과거를 학습 구간(IS)과 검증 구간(OOS)으로 나누는 것은 기본이지만, OOS 성적만으로 합격·불합격을 정하면 그 구간이 어떤 장이었는지에 휘둘립니다. OOS가 마침 강세장이면 어떤 전략도 좋아 보이고, 약세장이면 멀쩡한 전략도 탈락합니다.

더 안전한 기준은 전체 기간의 CAGR과 MDD를 같은 기간의 벤치마크와 비교하는 것입니다. OOS는 "학습 구간에만 맞춰진 게 아닌지" 확인하는 보조 장치로 쓰는 편이 낫습니다.

과최적화가 아닌데 나빠 보이는 경우

반대 방향의 착오도 있습니다. 측정할 수 있는 구간이 역사적 강세장에 치우쳐 있으면, 방어형 전략은 자동으로 열등하게 나옵니다. 전체 구간 수익률만 보고 "이 방어 전략은 쓸모없다"고 결론 내리기 전에, 하락 구간만 떼어 본 수치를 확인하세요. 그건 전략의 성질이 아니라 구간의 성질입니다.

점검 목록

  • 파라미터를 몇 가지 시도했는지 센다 — 수백 개를 돌려 고른 1등은 대개 잡음이다.
  • 파라미터를 조금 흔들어도 성과가 유지되는지 본다(민감도).
  • 종목 묶음을 바꿔도 남는지 본다 — 한 종목에서만 통하면 그 종목의 과거다.
  • 상장폐지 종목이 빠져 있지 않은지 본다(생존편향).
  • 수수료·세금·슬리피지를 넣는다 — 거래가 잦은 전략은 여기서 결과가 뒤집힌다.

모두퀀트에서 직접 검증하기

이 글의 수치는 학술·업계에서 일반적으로 보고되는 참고 범위이며, 종목·기간·파라미터에 따라 크게 달라집니다. 모두퀀트에서 코딩 없이 KOSPI·KOSDAQ 10년 데이터로 CAGR·MDD·샤프 비율·승률을 직접 확인하고 코스피 벤치마크와 비교해 보세요.

본 문서는 교육 목적의 해설이며 투자 권유가 아닙니다. 과거 성과는 미래 수익을 보장하지 않습니다.