전략 이해

백테스트가 완벽할수록 오히려 의심해야 하는 이유

2026. 8. 6.·읽는 시간 3·모아쌤

백테스트 수익률이 높다는 사실 하나로는 좋은 전략인지 알 수 없습니다. 오히려 곡선이 매끄럽고 완벽할수록 과최적화를 의심해야 합니다. 최고점 옆이 절벽인지 고원인지, 규칙이 과하게 많지 않은지, 거래 표본이 충분한지, 빌드에 안 쓴 구간에서도 버티는지를 함께 봐야 합니다. 과거 데이터 기반이라 미래를 보장하지 않습니다.

안녕하세요, 모아쌤입니다.

지난 이야기에서는 백테스트 수익률이 실전에서 왜 줄어드는지를 봤습니다. 오늘은 한 걸음 더 들어갑니다. 백테스트가 아주 잘 나왔을 때, 그러니까 곡선이 매끄럽게 우상향하고 수익률이 화려할 때 이야기입니다. 보통은 그런 결과를 보면 좋은 전략을 찾았다고 좋아합니다. 그런데 검증의 눈으로 보면 정반대입니다. 너무 완벽한 백테스트일수록 더 의심해야 합니다.

백테스트가 완벽할수록 오히려 의심해야 하는 이유

최고 수익 파라미터가 왜 먼저 무너지나요

전략을 만들 때 흔히 이렇게 합니다. 파라미터를 이것저것 바꿔 가며 백테스트를 수백 번 돌린 뒤, 수익률이 가장 높게 나온 설정 하나를 골라 실전에 씁니다.

문제는 그 최고점이 실전에서 가장 먼저 무너지는 자리인 경우가 많다는 겁니다. 핵심은 최고점 자체가 아니라 그 옆이 어떻게 생겼느냐입니다. 값을 한 칸만 옮겼을 때 수익이 절벽처럼 뚝 떨어진다면, 그 설정은 과거의 특정 움직임에 우연히 딱 맞은 것입니다. 반대로 옆으로 넓게 비슷한 성과가 이어진다면, 그 구간은 시장의 진짜 구조를 잡은 것에 가깝습니다.

같은 최고 수익이라도 절벽 끝에 선 정점과 넓은 고원의 한가운데는 완전히 다릅니다. 변동성이 조금만 달라져도 과거의 최고점은 옆으로 한 칸 밀립니다. 절벽형에 올라타 있었다면 그 순간 성과가 추락하고, 고원 한가운데 있었다면 한 칸 밀려도 여전히 고원 안입니다.

최고 수익 파라미터가 왜 먼저 무너지나요 — 백테스트가 완벽할수록 오히려 의심해야 하는 이유

규칙이 많으면 왜 위험한가요

두 번째는 규칙의 개수입니다. 손절, 익절, 진입 필터, 시간대 조건을 하나씩 더할 때마다 과거 데이터에 더 정교하게 끼워 맞출 수 있게 됩니다.

간단한 원리입니다. 조건을 충분히 늘리면 과거의 모든 거래를 통과하는 곡선을 그릴 수 있습니다. 하지만 그 곡선은 미래에 새로 찍히는 점은 전혀 못 맞힙니다. 과거의 진짜 패턴과 그때만 우연히 나온 노이즈를 구분하지 못한 채 둘 다 외워 버렸기 때문입니다.

그래서 규칙 다섯 개짜리 전략과 열다섯 개짜리 전략이 과거 구간에서 같은 수익을 냈다면, 다섯 개짜리를 택해야 합니다. 같은 성과를 더 적은 규칙으로 냈다는 건 그만큼 우연에 덜 기댔다는 뜻입니다.

규칙이 많으면 왜 위험한가요 — 백테스트가 완벽할수록 오히려 의심해야 하는 이유

설명을 더 읽는 것보다 한 번 해 보는 게 빠릅니다

모아봇 계정만 있으면 거래소 연동 없이 과거 데이터로 먼저 돌려 볼 수 있습니다.

무료로 백테스트 해보기

트레이딩뷰 결제 없음 · 거래소 연동 없이 · 100% 무료

거래 수가 적으면 왜 과최적이 되나요

규칙 개수만으로는 판단이 안 됩니다. 거래 표본 수와 같이 봐야 합니다. 같은 파라미터 다섯 개라도 거래가 1,000번 일어난 전략에서는 견딜 만하지만, 거래가 30번뿐인 전략에서는 다섯 개만 만져도 곧장 과최적으로 빠집니다.

표본이 작으면 우연한 변동이 전체 성과에서 차지하는 비중이 커지기 때문입니다. 동전을 열 번 던져 일곱 번 앞면이 나왔다고 그 동전이 앞면 쪽으로 기울었다고 말할 수 없는 것과 같습니다. 최적화를 돌리기 전에 거래가 몇 번 일어났는지부터 세는 습관이 필요합니다.

거래 수가 적으면 왜 과최적이 되나요 — 백테스트가 완벽할수록 오히려 의심해야 하는 이유

매끄러운 곡선은 어떻게 검증하나요

직관과 반대되는 이야기 하나. 백테스트 곡선이 낙폭 한 번 없이 매끄럽게 우상향할수록 그 전략은 더 의심해야 합니다. 과거의 손실 거래만 골라 피하도록 필터를 계속 덧댄 결과일 가능성이 크기 때문입니다. 미래의 하락은 과거와 다른 모양으로 오기 때문에, 과거 하락을 전부 피한 설정은 미래의 첫 하락에 그대로 노출됩니다.

그래서 검증에는 표준적인 방법이 있습니다. 데이터를 나눠서, 일부 구간으로만 전략을 만들고 빌드에 안 쓴 구간에서 그대로 성과를 다시 재 보는 것입니다. 만든 구간에서는 좋았는데 안 쓴 구간에서 무너진다면 그건 과최적화입니다.

한 가지 구분할 게 있습니다. 특정 시장에 특화된 것과 과최적화는 다릅니다. 빌드에 안 쓴 구간에서 성질이 유지되면 특화이고, 거기서 무너지면 과최적화입니다.

매끄러운 곡선은 어떻게 검증하나요 — 백테스트가 완벽할수록 오히려 의심해야 하는 이유

정리하면

백테스트 수익률이 높다는 사실 하나로는 좋은 전략인지 알 수 없습니다. 최고점 옆이 절벽인지 고원인지, 규칙이 과하게 많지 않은지, 거래 표본이 충분한지, 빌드에 안 쓴 구간에서도 버티는지를 함께 봐야 합니다. 곡선이 완벽할수록 자랑이 아니라 첫 번째 의심 대상입니다.

모아봇은 백테스트를 안 쓴 구간까지 나눠서 확인하고 손실 구간도 함께 공개합니다. 어떤 가정 위에서 나온 숫자인지 소개에서 확인해 보세요.

본 자료는 트레이딩 원리에 관한 교육 목적의 개념 설명입니다. 본문의 과거 움직임과 수치는 특정 시점의 예시이며, 과거 데이터 기반이라 미래 수익을 보장하지 않습니다. 모든 판단은 본인 몫입니다.

지금까지 모아쌤이었습니다.

자주 묻는 질문

과최적화가 뭔가요
전략이 과거 데이터의 우연한 노이즈까지 외워, 만든 구간에서는 좋지만 빌드에 안 쓴 구간이나 미래에서 무너지는 상태를 말합니다.
특화와 과최적화는 어떻게 구분하나요
빌드에 안 쓴 구간에서 성질이 유지되면 특화이고, 거기서 무너지면 과최적화입니다.
매끄러운 백테스트는 좋은 건가요
오히려 의심 대상입니다. 과거 손실만 피하도록 필터를 덧댄 결과일 수 있어 미래의 첫 하락에 그대로 노출됩니다.

거래소를 여러 곳 쓰고 계신다면

자산과 포지션, 신호와 차트를 한 화면에서 모아 보는 방법을 소개에 정리했습니다.

모아봇 소개 살펴보기

돈은 들지 않습니다. 과거 데이터로 먼저 확인해 보기

이어서 읽기 수익률보다 최대 낙폭을 먼저 봐야 하는 이유

본 글은 교육 자료이며, 모든 판단은 본인 몫입니다.