통계 편향5분 읽기

데이터 스누핑 — 과최적화의 함정

만약 과거 20년 데이터에 100% 들어맞는 '필승 매매 규칙'을 찾았다면, 축하해야 할까 의심해야 할까? 데이터 스누핑은 바로 그 규칙이 진짜 실력인지 우연인지 헷갈리게 만드는 함정이다.

데이터 스누핑이 뭐야?

데이터 스누핑(data snooping) 편향은 같은 데이터를 여러 번 들여다보며 '잘 맞는 규칙'을 찾을 때 생기는 통계적 착시다. 데이터에 딱 맞을 때까지 온갖 패턴과 조건을 바꿔가며 탐색하다 보면, 실제로는 아무 의미 없는 규칙도 마치 대단한 발견처럼 보이게 된다.

핵심 원리는 단순하다. 전략을 많이 시험할수록, 순전히 운으로 좋아 보이는 하나가 나올 확률이 높아진다. 이걸 '다중검정 문제(multiple comparisons problem)'라고 부른다. 동전을 한 번 던져 앞면이 나오면 우연이지만, 1000명이 각자 10번씩 던지면 누군가는 10번 연속 앞면이 나온다. 그 사람을 '동전 던지기 천재'라 부를 수 있을까?

주식·투자에서는 이 함정이 특히 위험하다. 과거 가격 데이터는 정해져 있고, 규칙(이동평균 며칠, 손절 몇 %, 어떤 요일에 사기 등)은 무한히 조합할 수 있기 때문이다.

데이터 스누핑은 머신러닝에서 말하는 '과최적화(overfitting)'와 사실상 같은 문제다. 다만 통계적으로 그 정도를 계산할 수 있는 형태를 특히 데이터 스누핑이라 부른다.

과최적화: 과거엔 완벽, 미래엔 붕괴

백테스트(과거 데이터로 전략을 시험하는 것)를 하다 보면, 조건을 조금씩 바꿔가며 수익률이 가장 높게 나오는 조합을 찾고 싶어진다. '20일선 대신 23일선, 손절 5% 대신 7%로 바꾸니 수익이 두 배!' 이렇게 데이터에 맞춰 규칙을 깎아내는 과정이 바로 과최적화다.

문제는 이렇게 만든 규칙이 과거 데이터의 '잡음(noise)'까지 외워버린다는 점이다. 시험 문제 답만 통째로 외운 학생이 새 문제를 만나면 무너지듯, 과최적화된 전략은 실제 미래 시장에서 백테스트보다 훨씬 나쁜 성적을 낸다.

연구자들은 이 문제를 정량화하려고 노력해 왔다. 대표적으로 베일리와 로페즈 데 프라도가 2014년 제안한 '디플레이티드 샤프비율(Deflated Sharpe Ratio)'은, 몇 번의 시도 끝에 나온 성과인지를 반영해 부풀려진 성과를 깎아낸다. 시도 횟수를 기록하지 않으면 성과를 과도하게 낙관하게 된다는 게 핵심 메시지다.

이 사이트의 계산은 특정 필승 규칙을 찾아주지 않는다. 오래·꾸준히 샀을 때의 실제 결과를 최대낙폭·손실기간까지 그대로 보여줄 뿐, 미래 예측이나 매매 규칙 발굴과는 무관하다.

실제 사례: 슈퍼볼 지표

가장 유명한 데이터 스누핑 사례는 미국의 '슈퍼볼 지표(Super Bowl Indicator)'다. 미식축구 결승전에서 어느 컨퍼런스(AFC/NFC) 팀이 우승하느냐로 그 해 증시가 오를지 내릴지 예측한다는 미신이다.

1978년 기자 레너드 코펫이 이 패턴을 발견했을 때, 놀랍게도 그때까지 한 번도 틀린 적이 없었다. 역사적 적중률은 출처에 따라 약 70% 안팎으로 꽤 높게 나온다. 하지만 축구 경기 결과와 주가 사이에 어떤 경제적 연결고리도 존재하지 않는다.

결정적으로, 이 지표가 널리 알려진 뒤 정확도는 급격히 떨어졌다. 2000년대(2000~2009년)에는 열 번 중 네 번밖에 맞지 않았다. 애초에 진짜 인과관계가 아니라 우연의 일치였기 때문이다. '방글라데시 버터 생산량과 S&P500 지수'처럼, 아무 상관없는 두 데이터도 충분히 뒤지면 그럴듯하게 겹쳐 보인다. 상관관계가 곧 인과관계는 아니다.

슈퍼볼 지표 적중률은 자료마다 약 67~75%로 다르게 집계된다(사후 적용 기간 포함 여부 차이). 여기서는 '약 70% 안팎'으로 범위로 표기했다. 중요한 건 정확한 숫자가 아니라, 높아 보이는 적중률이 우연일 수 있다는 점이다.

함정에 안 빠지려면

투자 세계의 학자들이 쓰는 방어법은 개인 투자자에게도 교훈이 된다.

첫째, 데이터를 '인샘플'과 '아웃오브샘플'로 나눈다. 규칙은 앞부분 데이터로만 만들고, 뒤에 남겨둔 새 데이터로 검증한다. 규칙을 만들 때 쓰지 않은 데이터에서도 통해야 진짜다.

둘째, 시험한 규칙의 개수를 정직하게 센다. 백 가지를 시험하고 그중 제일 좋은 하나만 자랑하는 건 반칙이다. 학계에서는 화이트의 리얼리티 체크(White's Reality Check, 2000)나 한센의 SPA 검정처럼, 여러 모델을 비교할 때 통계적 유의성을 보수적으로 보정하는 방법을 쓴다.

셋째, '왜 이 규칙이 통해야 하는가'라는 이유를 설명할 수 있어야 한다. 이유 없이 데이터만 맞는 규칙은 대개 우연이다. 그래서 이 사이트는 필승 타이밍 규칙 대신, '좋은 자산을 오래·꾸준히'라는 원리 자체가 통하는지를 실제 데이터로 확인하게 만든다.

수수료·환율 같은 비용도 데이터 스누핑을 부추긴다. 백테스트에서 이런 비용을 빼먹으면 수익이 실제보다 좋아 보인다. 비용을 숨기지 않고 넣어야 현실적인 결과가 나온다.

자주 묻는 질문

Q. 과최적화와 데이터 스누핑은 같은 말인가요?

거의 같은 문제를 가리킵니다. 과최적화는 모델이 과거 데이터의 잡음까지 외워버려 새 데이터에서 무너지는 현상이고, 데이터 스누핑은 같은 데이터를 반복해 뒤지며 우연한 규칙을 진짜처럼 발견하는 과정입니다. 데이터 스누핑이 원인이라면 과최적화는 그 결과에 가깝습니다.

Q. 백테스트 수익률이 높으면 좋은 전략 아닌가요?

꼭 그렇지 않습니다. 과거 데이터에 맞춰 조건을 계속 바꾸면 누구나 화려한 백테스트를 만들 수 있습니다. 중요한 건 '규칙을 만들 때 쓰지 않은 데이터'에서도 통하는지, 그리고 몇 번의 시도 끝에 나온 성과인지입니다. 시도가 많았다면 그 성과는 상당 부분 우연일 수 있습니다.

Q. 그럼 장기 투자도 데이터 스누핑 아닌가요?

핵심 차이는 '이유가 있느냐'입니다. 좋은 자산을 오래 보유하면 기업 이익 성장·배당·복리라는 설명 가능한 메커니즘이 작동합니다. 반면 요일·스포츠 결과 같은 규칙은 왜 통해야 하는지 설명할 수 없습니다. 이유 없이 데이터만 맞는다면 데이터 스누핑을 의심해야 합니다.

#데이터스누핑#과최적화#백테스트#통계편향#허위상관#다중검정

📋 과거 데이터 기준 결과이며, 과거 수익률이 미래 수익을 보장하지 않습니다.

📋 본 서비스는 투자 추천이 아닌 투자 이해를 위한 교육 목적으로 제공됩니다.