초보도 하는 AI트레이딩

백테스트, 제대로 하는 법 — 초보가 속는 5가지 함정

"백테스트 자산곡선이 깔끔한 45도 직선"은 성공이 아닙니다. 퀀트에선 그건 '범죄 현장'에 가까워요.

2026년 5월 13일 기준 · 약 8분

이 글은 정보 제공·교육 목적입니다. 특정 전략·상품·종목을 권유하지 않으며, 수익을 보장하지 않습니다. 투자 판단과 책임은 전적으로 본인에게 있습니다.
백테스트에선 +248%로 깔끔하게 우상향하다가 라이브로 넘어가면 무너지는 자산곡선과 5가지 함정 표시 일러스트 — 백테스트 함정을 상징

전략을 만들고, 과거 데이터로 돌려봤더니 자산곡선이 우상향 직선에 샤프 비율도 멋집니다. AI 트레이딩 봇을 만들든 직접 규칙을 짜든, 여기서 "됐다, 실전 가자" 하는 순간 — 대부분 라이브에서 무너집니다. 운이 나빠서가 아니라, 백테스트를 설계하는 방식에 예측 가능한 실수가 끼어 있어서예요.

이 글은 그 실수 5가지 + 어떻게 잡는지 + 백테스트를 실전으로 옮길 때의 순서를 정리합니다. 한 가지만 먼저: 백테스트는 "과거에 엣지가 있었는지 검증하고, 엣지 없는 전략을 거르는 도구"이지 미래를 보장하는 게 아닙니다. (다시 — 정보 제공용이며 투자 권유가 아닙니다.)

초보가 속는 5가지 함정

함정이런 거다 — 왜 위험한가어떻게 잡나
1. 오버피팅
(커브 피팅·p-해킹)
파라미터를 과거 데이터에 딱 맞을 때까지 만지작거림. "RSI 28.7이 30.0보다 3%p 낫다"는 신호가 아니라 그 데이터셋만의 잡음. 조건 15개에 승률 90%? 노이즈에 맞춘 것 — 라이브에서 거의 확실히 무너진다.규칙 단순하게, 파라미터 적게. 파라미터를 살짝 바꿨는데 성과가 폭락하면 과적합 신호. "백테스트로 모델을 튜닝"하려 하지 말 것.
2. 룩어헤드 바이어스
(미래 정보 사용)
결정 시점엔 없었던 정보를 씀. "일봉이 200일선 아래로 마감하면 진입" — 그 마감가는 하루가 끝나야 알 수 있다. 타임스탬프 정렬 실수, 정규화에 미래 수익률 섞기 등. 제거하면 성과가 보통 그대로 붕괴한다.모든 신호·지표·정규화가 '시점 t까지 알 수 있었던 정보'만 쓰게 강제. 데이터 정렬할 때 '데이터가 실제로 도착한 시각' 기준으로.
3. 생존 편향지금까지 살아남은 종목만 테스트하고, 상장폐지·파산·합병으로 사라진 '무덤'을 뺌. 오늘의 코스피200/S&P500 구성종목으로 백테스트 = 망한 회사 수백 개 제외 → 수익률 부풀고 리스크 과소평가.시점별로 그때의 유니버스를 정의하고, 폐지·상폐된 종목이 포함된 데이터셋(survivorship-bias-free)을 쓴다. (이건 데이터 품질 문제라 좋은 데이터 없으면 한계 인정.)
4. 거래비용·슬리피지 무시수수료·스프레드·슬리피지·funding(자금조달) 비용. 거래당 0.5R 버는 스캘핑이 비용 빼면 본전이거나 마이너스. 라운드트립 $5씩, 평균 수익 $150이면 비용이 그로스의 3.3%. 월 200거래면 $1,000 마찰. 24% 백테스트가 비용 반영하면 적자가 되기도.현실적 비용을 처음부터 넣는다(낙관적 가정 금지). 거래가 잦은 전략일수록 이게 생사를 가른다. ※ 코어 백테스트 자체가 편향됐으면 비용 추가해도 못 살린다 — 1~3번 먼저.
5. 표본 부족 / 한 국면만거래 10~20개로 "잘 나왔다"고 착각 — 통계적으로 의미 없음. 한 가지 시장(상승장만, 또는 한 종목만) 데이터로 테스트하면 그 국면에만 맞는 전략.최소 2년 이상, 100거래 이상, 상승·횡보·고변동성 등 다른 국면을 포함. 그래야 우연이 아니라 패턴인지 알 수 있다.
불편한 진실: 위 함정들은 보통 여러 개가 동시에 작동합니다 — 과적합 + 비용 무시 + 룩어헤드가 겹쳐서 시뮬레이션 결과를 부풀리고 약점을 가립니다. 그리고 더 불편한 건 — 컴퓨팅 파워로 수백만 개 파라미터 조합을 돌릴 수 있는 시대라, "흠 없어 보이는 백테스트조차" 전략 개발 과정 자체가 통계적 타당성을 훼손하는 편향을 만든다는 점입니다. 그래서 백테스트 수익률 숫자 자체를 믿으면 안 됩니다.

그럼 어떻게 검증하나 — 그리고 실전으로 옮길 때

백테스트를 "결과를 자랑하는" 게 아니라 "엉터리 전략을 거르는" 도구로 쓰려면:

  1. 규칙을 정확히, 모호함 없이 먼저 정의 — "추세가 좋을 때 진입" 같은 애매한 기준은 신뢰할 수 없는 결과를 낳음.
  2. 인-샘플 / 아웃-오브-샘플 분리 — 예: 2018~2022로 만들고, 2023~2025로 검증. 아웃-오브-샘플에서 무너지면 과적합.
  3. 워크포워드(walk-forward) 최적화 — 실제 운용처럼 일정 구간마다 재조정하며 앞으로 굴려보기. + 몬테카를로 시뮬레이션으로 결과가 우연인지 확인.
  4. 핵심 지표로 평가 — 승률, 손익비(profit factor), 평균 R, 최대 낙폭(MDD), 기대값(expectancy). 수익률 한 숫자만 보지 말 것.
  5. 한 번에 한 변수만 — 손절폭 테스트면 손절만 2%/3%/5%로 바꾸고 진입·포지션 크기는 고정. 다섯 개를 동시에 바꾸면 뭐 때문에 좋아졌는지 알 수 없음.

실전으로 옮길 때는 점진적으로: ① 페이퍼 트레이딩(모의)으로 충분히 → ② 소액(원래 사이즈의 25~50%)으로 → ③ 데이터를 보고 천천히 키운다. 백테스트가 좋았다고 바로 풀 사이즈로 가는 게 가장 흔한 사고. AI 봇으로 돌리는 거라면 더더욱 — 봇은 백테스트의 가정을 그대로 실행할 뿐이라, 가정이 틀리면 그 틀린 걸 빠르게 반복합니다.

정리 — 백테스트 수익률을 믿지 마세요

백테스트의 역설: 흠 없어 보이는 백테스트일수록 의심해야 합니다. 깔끔한 45도 자산곡선은 "이 전략이 미래에 돈을 벌 것"의 증거가 아니라 "내가 과거 데이터에 얼마나 잘 맞췄나"의 증거일 수 있어요. 그래서 백테스트는 합격 도장이 아니라 거르는 체입니다 — 엣지가 없거나 편향으로 부풀려진 전략을 빠르게 버리는 용도.

그러니 봇을 사든 직접 짜든, 누군가 "이 전략 백테스트 수익률 ○○%" 라고 보여주면 — 그 숫자보다 "어떤 데이터로, 비용은 어떻게 넣고, 아웃-오브-샘플에서도 됐나"를 물어보세요. 거기서 막히면 그 백테스트는 신뢰하지 않는 게 맞습니다. (이 글은 거기까지입니다 — 어떤 전략이나 상품도 권유하지 않으며, 투자 결정과 그 결과는 본인 책임입니다.)

참고: 본문은 2026년 기준 공개 자료(백테스팅 가이드·퀀트 교육 자료 종합)에 근거한 일반 정보이며, 개인의 상황에 맞는 조언이 아닙니다. 투자 사기·미등록 업체 주의 정보는 금융감독원 등 감독기관 안내를 확인하세요.

AI·트레이딩, 거품 빼고 계속 정리합니다

JUNAI 블로그는 AI 도구·자동화·트레이딩 기술을 검색량 큰 주제 위주로, 과장 없이 다룹니다. junai.ai/blog에서 이어 보세요.

© 2026 JUNAI · 본 콘텐츠는 정보 제공 목적의 일반 자료이며 투자 자문·권유가 아닙니다. 투자 결정과 그 결과는 전적으로 본인 책임입니다.

© 2026 주나이테크(주) @JUNAITECH