전략을 만들었으면 과거 데이터로 검증해야 한다. 이것이 백테스트다. 그런데 CAGR이 높으면 좋은 전략인가? MDD가 -50%인데 CAGR이 30%라면? 하나의 지표만 보면 판단을 잘못할 수 있다.

수익 지표

CAGR

CAGR(Compound Annual Growth Rate, 연평균 복리 수익률)은 투자 기간 전체의 수익률을 연 단위로 환산한 값이다.

CAGR = (최종 자산 / 초기 자산)^(1/투자 년수) - 1

3년간 총 33% 수익을 냈다면 CAGR은 약 10%다. 기간이 다른 전략을 동일한 기준으로 비교할 수 있어 유용하다.

CAGR 자체는 수익의 크기만 알려줄 뿐, 그 과정에서 얼마나 흔들렸는지는 보여주지 않는다. CAGR이 같아도 한 전략은 안정적으로 올랐고, 다른 전략은 -40% 하락 후 급등했을 수 있다.

Alpha

Alpha = 전략 수익률 - 벤치마크 수익률

Alpha는 시장(벤치마크) 대비 초과 수익이다. 벤치마크로는 KOSPI 지수나 S&P 500을 주로 사용한다. Alpha가 양수이면 시장보다 잘했다는 뜻이고, 음수이면 시장을 이기지 못했다는 뜻이다.

퀀트 전략의 목표는 양의 Alpha를 만드는 것이다. 시장 수익률은 인덱스 펀드만 사도 얻을 수 있다. 전략의 가치는 그 위에 추가되는 Alpha에 있다.

위험 지표

MDD

MDD(Maximum Drawdown, 최대 낙폭)는 전략 운용 기간 중 고점에서 저점까지의 최대 하락폭이다.

MDD = (고점 - 저점) / 고점 × 100%

**“최악의 경우 얼마나 잃는가”**를 보여주는 지표다. MDD가 -30%라면 자산이 1억 원에서 7천만 원까지 떨어진 구간이 있었다는 뜻이다.

MDD가 중요한 이유는 심리적 한계 때문이다. CAGR이 높아도 MDD가 -50%인 전략은 실전에서 유지하기 어렵다. 자산이 절반으로 줄어드는 것을 견디는 투자자는 드물다.

Sharpe Ratio

Sharpe Ratio = (전략 수익률 - 무위험 수익률) / 수익률의 표준편차

Sharpe Ratio는 위험 대비 수익의 효율성을 측정한다. 같은 수익률이라도 변동성이 낮으면 Sharpe가 높다.

Sharpe Ratio해석
< 0무위험 자산보다 못함
0 ~ 1.0보통
1.0 ~ 2.0양호
> 2.0우수

CAGR 30%에 MDD -50%인 전략과, CAGR 15%에 MDD -15%인 전략이 있다면 어느 것이 나은가? Sharpe Ratio는 후자가 높을 가능성이 크다. 수익은 절반이지만 위험도 크게 낮기 때문이다. 수익률의 크기와 효율성은 다른 개념이다.

운용 지표

Win Rate

Win Rate(승률)는 수익을 낸 거래의 비율이다. 승률 60%라면 10번 거래 중 6번 수익, 4번 손실이다.

승률이 높아도 손실 한 번의 크기가 크면 전체 성과가 나빠질 수 있다. 반대로 승률이 30%여도 수익 거래의 크기가 충분히 크면 전체 성과는 좋을 수 있다. 승률 자체보다 승률 × 평균 수익/손실 비율의 조합이 중요하다.

Turnover

Turnover(회전율)는 포트폴리오가 얼마나 자주 교체되는지를 나타낸다.

높은 회전율은 높은 거래 비용을 의미한다. 매수/매도마다 수수료가 발생하고, 호가 차이(슬리피지)로 인한 손실도 누적된다. 백테스트에서 거래 비용을 반영하지 않으면 회전율이 높은 전략의 성과가 과대평가된다.

백테스트 함정

백테스트 결과가 좋다고 실전에서도 좋을 것이라 믿기 어렵다.

Look-ahead Bias

미래 데이터를 현재 시점에 사용하는 오류다. 예를 들어, 분기 실적은 발표일이 분기 말과 다르다. 3월 31일 기준 실적을 3월 31일에 사용하면 아직 발표되지 않은 정보를 쓰는 셈이다. 모멘텀을 계산할 때도 리밸런싱 시점 기준으로 과거 데이터만 사용해야 한다.

Survivorship Bias

상장폐지된 종목이 데이터에서 빠지면 발생하는 왜곡이다. 살아남은 종목만으로 백테스트하면 성과가 좋게 나온다. 실제로는 폐지된 종목에 투자하여 손실을 봤을 수 있다. 이 편향은 데이터 소스의 한계와 직결된다.

Overfitting

과거 데이터에만 잘 맞는 전략을 만드는 것이다. 파라미터를 너무 많이 조정하면 과거에는 완벽한 성과를 보이지만 미래 데이터에서는 성과가 크게 떨어진다. 파라미터 수를 최소화하고, 학습에 사용하지 않은 데이터(out-of-sample)로 검증하는 것이 대응 방법이다.

거래비용 무시

수수료와 슬리피지를 반영하지 않은 백테스트는 실제보다 좋은 결과를 보인다. 특히 회전율이 높은 전략에서 이 차이가 크다. 백테스트 시 수수료율을 설정하여 현실적인 성과를 확인해야 한다.

유동성 무시

거래량이 적은 소형주는 백테스트에서 매수/매도가 가능한 것처럼 나오지만, 실제로는 원하는 가격에 체결되지 않을 수 있다. 시가총액 필터로 유동성이 부족한 종목을 제외하는 것이 일반적인 대응이다.


백테스트 성과 지표는 크게 세 축으로 구성된다. 수익(CAGR, Alpha), 위험(MDD, Sharpe Ratio), 운용(Win Rate, Turnover). 하나의 지표만 보면 판단이 왜곡된다. 세 축을 함께 봐야 전략의 실질적 가치를 평가할 수 있다.

그리고 좋은 백테스트 결과도 다섯 가지 함정(Look-ahead Bias, Survivorship Bias, Overfitting, 거래비용 무시, 유동성 무시)에 오염되어 있을 수 있다. 결과를 읽는 것과 의심하는 것은 함께 가야 한다.

다음 글에서는 개별 지표를 하나의 점수로 합치고 포트폴리오를 구성하는 방법, 팩터 스코어링과 리밸런싱을 정리하려 한다.

참고 자료