백테스트 수익률, 비용과 하락장까지 넣으면 진짜 괜찮을까?
"백테스트 결과 CAGR 15%!"라는 마케팅 문구를 그대로 믿어도 될까요? 답은 No예요. 비용·세금·MDD·과최적화를 차감하면 실전 수익률은 절반 이하로 떨어지는 게 흔해요. 4편에서는 5숫자(투자금·CAGR·기간·비용·MDD)로 백테스트 검증을 직접 굴려볼게요.
① 백테스트 결과를 의심해야 하는 이유
학술 연구에 따르면 백테스트한 전략의 약 95%가 실전에서 실패해요1. 이유는 6가지: ① 과최적화(Overfitting) — 과거 데이터에만 맞춘 규칙, ② 생존편향 — 망한 종목 제외 데이터로 백테스트, ③ look-ahead bias — 미래 정보 무의식 사용, ④ 거래비용 미반영, ⑤ 슬리피지 — 시장 충격 미반영, ⑥ regime change — 시장 국면 변화.
Bailey-Lopez de Prado 연구는 1,000개 랜덤 전략을 돌리면 운으로 Sharpe ratio 2.367을 찍는 전략이 나온다는 걸 보였어요. 즉 좋은 백테스트 결과가 진짜 알파인지 통계적 운인지 구분하는 게 핵심이에요. 이를 보정하는 지표가 Deflated Sharpe Ratio(DSR)예요2.
② 거래비용 — 가장 자주 빠뜨리는 한 줄
한국 주식 기준 매수·매도 수수료 + 슬리피지 + 세금을 합치면 회전율 200%(연 2회 전체 교체) 전략은 연 1~3% 비용이 발생해요. 매주 리밸런싱 같은 고회전 전략은 연 5~10%까지 올라가요. CAGR 15% 백테스트도 비용 5% 빼면 10%로 떨어지는 식이에요3.
생존편향만으로도 인도 small-cap 백테스트 성과가 23% 과대평가, Sharpe 9.1% 부풀려진다는 최근 연구도 있어요. 같은 펀드라도 분석에 쓰는 데이터셋이 살아남은 종목만이냐, delisted 종목까지 포함이냐에 따라 결과가 크게 달라져요4.
③ 직접 굴려보면 뭘 알게 돼요?
위 🧮 탭에서 5숫자(투자금·CAGR·기간·연 비용·MDD)로 비용 차감 전후 최종금액·비용 손실·MDD 시 평가금액을 계산해줘요. 예시: 기본(1000·15%·10년·2%·40%) / 고회전 함정(비용 5%) / 장기 안정(20년·비용 1%) / 2008형 위기(MDD 55%) / 이상적(비용 0.5%·MDD 25%).
④ 진짜 좋은 전략의 4가지 조건
학술·실무에서 통용되는 검증된 전략의 조건:
① Out-of-sample 테스트: 백테스트 기간과 다른 기간에서도 작동, ② 충분한 표본: 30년+ 기간, 100+ 종목, ③ 경제적 근거: 왜 이 알파가 존재하는지 설명 가능 (행동편향·위험프리미엄·정보 비대칭), ④ Cost/Slippage 검증: 비용 다 빼고도 양수 수익률. 4가지 다 충족하지 않으면 운으로 의심하는 게 합리적이에요5.
한국에서도 백테스트 결과가 화려했던 퀀트·사모펀드가 실전에서 큰 손실을 본 사례가 다수 있어요. 본 시뮬의 "백테스트 vs 실전 갭"이 정확히 한국에서도 반복돼요.
- 2019~2020년 한국 사모펀드 사고 (라임·옵티머스·디스커버리): 백테스트·IR 자료에서는 안정적 수익률을 강조했지만 실제로는 펀드 돌려막기·부실자산 은폐로 합산 약 2조 4천억원+ 환매중단. 백테스트가 정상 운영을 전제로 한 점이 함정이었어요.
- 2010년대 후반 한국 로보어드바이저 1세대: "AI 백테스트 CAGR 12~15%"로 마케팅했지만 실전 운용 5년 평균 수익률은 시장 수익률(KOSPI)에도 미치지 못한 경우가 많았어요. 비용 차감·국면 변화·overfitting이 결합된 결과.
- 2020~2022년 코인 자동매매 봇 광풍: 백테스트 "월 20% 수익" 광고가 다수였지만 2022년 약세장에서 대부분 자본 50%+ 손실. 백테스트 기간이 강세장에 편향(2017~2021)된 게 결정적 함정.
한 줄 메시지 · "이번엔 다르다"는 마케팅은 거의 모두 같은 패턴이에요. 비용 차감 후 CAGR·MDD·out-of-sample 검증이 빠진 백테스트는 거의 운으로 봐도 무방. 본 시뮬의 5숫자(비용·MDD 포함)로 한 번 굴려보면 마케팅 자료의 함정이 즉시 보여요.
4편에서 "백테스트 검증"을 봤다면, 5편(자동화 FINAL)에서는 이 모든 검증을 어떻게 도구·프로그래밍으로 자동화하는지 봐요. 100개 종목 × 5개 전략 = 500개 조합 검증이 수동 5,000분에서 자동 500분으로 줄어드는 효과를 계산해볼 거예요.