백테스트가 끝나면 누적수익률, CAGR, MDD, 샤프 비율, 승률, 수익팩터처럼 많은 숫자가 한꺼번에 나옵니다. 숫자가 많아질수록 검증이 정교해진 것 같지만, 읽는 순서가 없으면 가장 좋아 보이는 값만 골라 결론을 만들기 쉽습니다.
누적수익률이 가장 높은 전략부터 고른 뒤 MDD를 확인하는 방식도 충분하지 않습니다. 계산 기간과 비용이 다르면 첫 번째 순위부터 비교할 수 없고, 전체 기간의 샤프가 좋아도 특정 1년 구간에서는 음수였을 수 있습니다. 승률이 높아도 한 번의 손실이 여러 번의 수익을 지울 수 있습니다.
성과표는 높은 숫자부터 읽는 표가 아닙니다. 비교 조건이 같은지 확인하고, 전략을 중단시킬 손실을 먼저 찾은 뒤, 수익의 질과 지속성을 좁혀 가는 표입니다.
성과표를 읽는 기본 순서
- 계산 기간·수익률 빈도·비용·벤치마크를 맞춥니다.
- 누적수익률과 CAGR로 수익의 크기와 시간을 봅니다.
- MDD와 낙폭 기간으로 감당할 손실과 회복 시간을 확인합니다.
- VaR·CVaR·왜도·첨도로 평균이 숨긴 꼬리를 봅니다.
- 샤프·소르티노·칼마와 기대값·수익팩터로 위험 대비 성과와 거래 구조를 봅니다.
- 시장 노출·회전율과 벤치마크 지표로 자본 효율과 대안을 비교합니다.
- 롤링 지표·몬테카를로·PSR·DSR·표본외 성과로 시간과 선택 편향을 스트레스합니다.

0단계: 성과 숫자보다 계산 조건을 먼저 맞춥니다
두 전략의 성과를 비교하기 전에 다음 항목이 같아야 합니다.
| 비교 조건 | 확인할 내용 | 다르면 생기는 문제 |
|---|---|---|
| 기간 | 시작일·종료일·상장 전 데이터 처리 | 상승장만 포함한 전략이 유리해짐 |
| 가격 | 원주가·수정주가·배당 포함 여부 | 분할·배당이 수익률을 왜곡함 |
| 체결 | 신호 당일 종가·다음 날 시가·지정가 | 미래 가격을 미리 사용하거나 체결을 과대평가함 |
| 비용 | 수수료·세금·슬리피지·시장 충격 | 회전율 높은 전략의 성과가 부풀어짐 |
| 수익률 빈도 | 일간·주간·월간 | 샤프·변동성·왜도·첨도 값이 달라짐 |
| 현금 처리 | 미투자 현금 수익·무위험수익률 | 시장 노출이 낮은 전략 비교가 달라짐 |
| 벤치마크 | 비교 대상·통화·수익률 빈도 | 알파·베타·정보비율을 해석할 수 없음 |
| 유니버스 | 상장폐지·거래정지·편입 시점 | 생존편향과 미래 정보가 들어감 |
성과표의 열 이름이 같다고 계산 정의까지 같은 것은 아닙니다. 특히 MDD, 회전율, 승률, 거래 수는 구현에 따라 분모와 집계 방식이 달라질 수 있습니다. 비교표 옆에는 최소한 기간, 비용, 체결, 수정주가, 벤치마크와 수익률 빈도를 함께 남겨야 합니다.
CFA Institute의 GIPS 해설도 하나의 위험 지표를 정답으로 정하기보다 비교 가능성, 계산 투명성, 해석 투명성, 전략과의 일관성, 지표의 안정성을 함께 보도록 설명합니다. 백테스트가 GIPS 보고서는 아니지만 공정한 표시와 충분한 공개라는 원칙은 개인 전략 비교에도 유용합니다.
1단계: 누적수익률과 CAGR로 수익의 크기와 시간을 봅니다
누적수익률과 CAGR은 가장 먼저 볼 수익 지표입니다.
- 누적수익률: 시작 자본이 전체 기간에 얼마나 변했는가
- CAGR: 같은 성장 경로를 연평균 복리수익률로 바꾸면 얼마인가
두 지표는 얼마를 벌었는가와 그 결과에 몇 년이 걸렸는가를 보여줍니다. 같은 +100%라도 2년에 만든 결과와 10년에 만든 결과는 다릅니다.
다만 비교 기간이 같다면 누적수익률과 CAGR의 순위는 바뀌지 않습니다. CAGR을 추가했다고 새로운 위험 정보를 얻는 것은 아닙니다. 수익의 크기를 확인한 뒤 바로 손실 단계로 넘어가야 합니다.
여기서 멈추면 안 되는 질문
- 수익 대부분이 한 종목·한 달·한 거래에서 나왔는가
- 이 수익을 얻는 동안 계좌가 얼마나 하락했는가
- 미투자 기간이 길어 자본을 다른 곳에 쓸 수 있었는가
- 같은 시장을 단순 보유하는 것보다 나았는가
- 비용을 조금 높여도 결과가 남는가
누적수익률과 CAGR은 성과표의 출발점이지 합격 기준이 아닙니다.
2단계: MDD와 낙폭 기간으로 중단 가능성을 확인합니다
MDD와 낙폭 기간은 수익률 다음에 봐야 할 핵심입니다.
MDD는 자산이 이전 전고점에서 가장 깊게 하락한 비율입니다. 낙폭 기간은 전고점을 회복하지 못한 시간을 봅니다. 손실의 깊이와 시간은 같은 정보가 아닙니다.
실제 LAB 비교에서는 MDD가 가장 얕았던 CCI 역추세도 전고점 회복에 847일이 걸렸습니다. 최대낙폭이 작다는 이유만으로 운용이 편하다고 말할 수 없었습니다. 가장 깊은 낙폭 구간과 가장 오래 지속된 낙폭 구간도 다를 수 있습니다.
성과표에는 최소한 다음 네 값을 함께 둡니다.
| 손실 항목 | 답하는 질문 |
|---|---|
| MDD | 전고점에서 가장 깊게 얼마나 하락했나 |
| 최장 낙폭 기간 | 전고점을 회복하지 못한 최장 시간은 얼마인가 |
| 회복 기간 | 최저점 이후 전고점까지 얼마나 걸렸나 |
| 연속 손실 | 거래·일·월 기준 손실이 얼마나 몰렸나 |
투자자가 -20%에서 전략을 중단할 사람이라면 MDD -35% 전략의 높은 CAGR은 실제로 경험할 수 없는 수익일 수 있습니다. 먼저 중단선을 정한 뒤 수익을 평가해야 합니다.
3단계: 변동성과 하방·꼬리 위험을 분리합니다
표준편차는 모든 흔들림을 위험으로 봅니다. 그러나 투자자가 실제로 두려워하는 것은 대개 하락과 극단 손실입니다.
변동성과 하방편차는 전체 변동과 목표수익 아래의 흔들림을 분리합니다. 같은 +12% 누적수익을 만든 두 경로도 상승 급등이 많은지, 손실이 반복됐는지에 따라 순위가 달라질 수 있습니다.
꼬리 위험은 다음 지표로 더 좁힙니다.
LAB의 EMA 20·100은 95% VaR가 1.38%였지만 경계 밖 손실일의 평균인 CVaR는 2.43%, 최악의 하루는 -5.66%였습니다. VaR 하나만 보면 경계 밖에서 얼마나 더 잃는지 알 수 없습니다.
첨도가 높다고 반드시 큰 손실만 많다는 뜻도 아닙니다. 돈치안 돌파의 높은 첨도는 큰 양의 수익이 함께 만든 결과였습니다. 왜도는 방향, 첨도는 극단값의 빈도를 보므로 최악·최고 수익률과 함께 읽어야 합니다.
이 단계에서 탈락시킬 조건
- 설정한 일·월 손실 한도를 자주 넘음
- CVaR가 포지션 크기로 감당할 수 없는 수준임
- 한두 번의 큰 수익이 평균과 지표를 대부분 만듦
- 목표수익을 조금 바꾸자 오메가 순위가 쉽게 뒤집힘
- 극단값을 한두 개 제거하면 전략 결론이 사라짐
꼬리 위험을 통과하지 못한 전략은 샤프 비율이 높아도 실제 운용 후보로 남기기 어렵습니다.
4단계: 위험 대비 성과는 샤프 하나로 끝내지 않습니다
위험조정 지표는 서로 다른 위험을 분모로 사용합니다.
| 지표 | 분자 | 위험 기준 | 잘 맞는 질문 |
|---|---|---|---|
| 샤프 비율 | 평균 초과수익 | 전체 변동성 | 흔들림 한 단위당 보상은 얼마인가 |
| 소르티노 비율 | 목표수익 초과분 | 하방편차 | 나쁜 흔들림만 보면 순위가 달라지는가 |
| 칼마 비율 | CAGR | MDD 절댓값 | 가장 깊은 낙폭을 감수할 가치가 있었나 |
| 오메가 비율 | 목표 위 수익 면적 | 목표 아래 손실 면적 | 전체 분포와 목표수익을 함께 보면 어떤가 |
실제 LAB에서는 누적수익률 6위였던 CCI 역추세가 무위험수익률 0% 샤프 3위로 올라갔지만, 소르티노에서는 다시 6위였습니다. 무위험수익률을 연 3%로 가정하면 샤프도 6위로 내려갔습니다.
누적수익률, 샤프, 소르티노 중 어느 순위가 진짜인지 고르는 문제가 아닙니다. 각 지표가 답하는 질문이 다릅니다. 전략 목적에 맞는 위험을 먼저 정하고 같은 조건에서 보완 지표를 함께 봅니다.
절대 기준보다 비교 조건이 중요합니다
샤프 1 이상이면 좋다, 칼마 1 이상이면 합격 같은 숫자는 편리하지만 시장, 기간, 수익률 빈도, 무위험수익률과 비용이 다르면 그대로 비교할 수 없습니다. 지표의 절대값보다 다음을 먼저 고정합니다.
- 같은 분석 기간
- 같은 수익률 빈도와 연환산 방식
- 같은 무위험수익률
- 같은 비용과 현금 처리
- 같은 자산군과 벤치마크
5단계: 승률보다 한 거래의 손익 구조를 봅니다
포트폴리오 성과가 좋아 보여도 거래 구조가 불안정할 수 있습니다.
승률·손익비·기대값은 한 거래가 평균적으로 남기는 손익을 분해합니다.
거래당 기대값 = 승률 × 평균이익 – 패율 × 평균손실
LAB의 고정 손절 규칙은 승률이 40.9%로 낮았지만 평균손익비 3.49와 거래당 기대값 +9.34%를 기록했습니다. 반대로 별도 CCI 필터 사례는 승률이 62.9%였어도 기대값은 +0.40%에 그쳤고 재표본 구간이 0을 포함했습니다.
승률은 수익 전략의 충분조건이 아닙니다. 다음을 함께 봅니다.
- 평균이익과 평균손실
- 중앙값 손익과 극단값
- 거래당 기대값과 불확실성 구간
- 연속 손실 횟수
- 거래 수와 시장 국면별 표본 수
수익팩터는 총이익을 총손실로 나눕니다. 그러나 높은 수익팩터가 소수의 대박 거래에 의존할 수 있습니다. 3ATR 추적 사례의 수익팩터는 1.85였지만 상위 수익 거래 10%를 제외하자 1.02로 내려갔습니다.
수익팩터 옆에는 상위 1%·5%·10% 거래의 총이익 기여도와 해당 거래를 제외한 스트레스 값을 함께 두는 편이 안전합니다.
6단계: 시장 노출과 회전율로 필요한 자본을 봅니다
시장 노출과 회전율은 수익을 얻기 위해 자본을 얼마나 오래 묶고 얼마나 자주 바꿨는지 보여줍니다.
LAB의 20일선·40일선 청산은 누적수익률 차이가 1.56%포인트였지만 평균 시장 노출은 7.05%와 11.02%로 1.56배 달랐습니다. 20일선 청산은 노출이 낮았지만 연간 총회전율은 3.20배로 40일선의 2.88배보다 높았습니다.
노출이 낮다고 항상 좋은 것도, 회전율이 낮다고 항상 효율적인 것도 아닙니다.
- 낮은 노출: 현금 활용 여지가 있지만 기회가 적고 수익이 소수 거래에 집중될 수 있음
- 높은 노출: 자본 활용은 높지만 시장 급락과 동시 손실에 오래 노출됨
- 높은 회전율: 신호 반응은 빠르지만 비용·슬리피지 민감도가 커짐
- 낮은 회전율: 비용은 줄지만 손실 포지션을 오래 보유할 수 있음
성과표에는 평균 노출, 최대 동시 보유, 연간 회전율, 비용 전후 수익률을 함께 둡니다. 같은 수익이라면 더 적은 자본과 거래로 만든 결과가 효율적일 수 있지만, 그 차이가 실제 운용 제약에서도 유지되는지 확인해야 합니다.
7단계: 벤치마크와 비교해야 초과성과를 말할 수 있습니다
전략이 돈을 벌었다는 사실과 시장을 이겼다는 사실은 다릅니다. 같은 기간 단순 보유가 더 높은 수익을 냈다면 전략의 복잡성과 거래비용을 감수할 이유가 줄어듭니다.
벤치마크 지표는 질문별로 나눕니다.
| 질문 | 지표 | 해석할 때 주의할 점 |
|---|---|---|
| 시장이 움직일 때 얼마나 반응했나 | 베타 | 낮은 베타가 낮은 설명력을 뜻하지는 않음 |
| 시장이 전략 수익을 얼마나 설명했나 | 결정계수 R² | 높은 R²가 좋은 성과를 뜻하지 않음 |
| 베타를 감안하고 초과수익이 남았나 | 젠센 알파 | 무위험수익률·회귀 오차·유의성 확인 |
| 벤치마크 초과수익이 일관됐나 | 추적오차·정보비율 | 상대수익률 빈도와 날짜 정렬 통일 |
| 상승장 참여와 하락장 방어가 어땠나 | 상승·하락 포착률 | 산술 평균과 기하연율 계산을 섞지 않음 |
LAB의 ATR 돌파는 CCI 역추세보다 베타가 높았지만 R²는 더 낮았습니다. 시장 민감도와 시장 설명력은 다른 개념입니다. LAB 6개 전략의 젠센 알파 점추정치는 연 0% 무위험수익률에서 모두 양수였지만 95% 신뢰구간은 모두 0을 포함했습니다. 양의 알파 숫자와 검증된 초과성과도 구분해야 합니다.
벤치마크는 전략이 실제로 대체하려는 투자 수단이어야 합니다. 국내 대형주 전략에 미국 기술주 지수를 붙이거나, 현금 대기가 긴 전략을 100% 주식 보유와 단순 비교하면 질문과 기준이 어긋날 수 있습니다.
8단계: 전체 기간의 좋은 숫자를 시간축에서 다시 봅니다
전체 기간 성과는 시작일과 종료일 사이를 하나로 압축합니다. 특정 국면의 수익이 나머지 실패 구간을 덮을 수 있습니다.
롤링 샤프와 롤링 MDD는 3개월·6개월·1년처럼 고정된 창을 이동해 성과의 시간 편중을 확인합니다. LAB의 돈치안 돌파는 전체 샤프가 0.95였지만 1년 이동 최저는 -2.21이었고, 계산 가능한 창의 35.3%에서 샤프가 음수였습니다. ATR 돌파도 전체 0.93에서 1년 이동 최저 -2.70까지 내려갔습니다.
여기서는 세 가지를 봅니다.
- 롤링 지표의 최저·중앙값·최고값
- 음의 샤프 또는 허용 MDD 초과 창의 비중
- 성과가 나빠진 창이 특정 시장 국면에 몰렸는지
롤링 창은 서로 겹치므로 각 관측치를 독립 표본처럼 세면 안 됩니다. 짧은 창은 빠르게 반응하지만 노이즈가 크고, 긴 창은 안정적이지만 변화 감지가 늦습니다.
9단계: 거래 순서와 후보 선택을 바꿔도 버티는지 봅니다
성과표의 마지막 단계는 관측된 한 경로와 한 번의 변수 선택을 흔드는 것입니다.
파산 확률과 몬테카를로는 같은 거래 손익 638개를 고정하고 순서만 50,000번 바꿨습니다. 한 거래 배정 비중 20%에서는 MDD -50% 도달 비율이 0.31%였지만 비중 50%에서는 88.1%로 높아졌습니다. 기대값이 좋아도 손실 경로를 통과하지 못하면 최종 수익에 도달할 수 없습니다.
PSR과 DSR은 샤프 비율의 표본 길이, 왜도·첨도와 여러 후보 중 최고값을 선택한 편향을 반영합니다. EMA 변수 49개 중 선택된 샤프 1.36의 PSR은 99.998%였지만, 독립 시험 수를 5~49개로 가정한 DSR은 68.1~59.8%였습니다. 선택 구간 1위는 검증 구간 12위로 내려갔습니다.
마지막에는 다음 질문을 확인합니다.
- 손실 거래 순서가 불리해져도 허용 MDD 안에 남는가
- 포지션 비중을 조금 높였을 때 파산선 도달 비율이 급증하지 않는가
- 여러 변수 중 최고값을 골랐다는 사실을 성과 검증에 반영했는가
- 남겨둔 표본외 구간에서도 수익 방향과 위험이 유지됐는가
- 시장 국면·비용·시작일을 바꿔도 결론이 같은가
이 단계를 통과하지 못했다고 전략이 반드시 손실이라는 뜻은 아닙니다. 백테스트 성과를 미래의 확정 수익처럼 해석할 근거가 부족하다는 뜻입니다.
한 장으로 정리한 성과표 점검표
| 순서 | 먼저 묻는 질문 | 핵심 지표 | 통과해도 남는 위험 |
|---|---|---|---|
| 0 | 계산 조건이 같은가 | 기간·비용·체결·빈도 | 데이터 오류·생존편향 |
| 1 | 얼마나 벌었고 얼마나 걸렸나 | 누적수익률·CAGR | 손실 경로·집중도 |
| 2 | 얼마나 빠지고 오래 기다렸나 | MDD·낙폭 기간 | 일중·꼬리 손실 |
| 3 | 극단 손실은 어떤가 | 하방편차·VaR·CVaR·왜도·첨도 | 미래 분포 변화 |
| 4 | 위험을 감수할 가치가 있었나 | 샤프·소르티노·칼마·오메가 | 가정·표본 오차 |
| 5 | 한 거래의 구조가 건강한가 | 승률·손익비·기대값·수익팩터 | 수익 집중·연속 손실 |
| 6 | 자본과 비용을 효율적으로 썼나 | 노출·회전율 | 시장 충격·수용력 |
| 7 | 단순 대안을 이겼나 | 베타·R²·알파·IR·포착률 | 모형 오류·벤치마크 선택 |
| 8 | 시간에 따라 유지됐나 | 롤링 샤프·롤링 MDD | 중첩 창·국면 변화 |
| 9 | 순서와 선택을 흔들어도 남나 | 몬테카를로·PSR·DSR·표본외 | 미래 구조 변화 |
이 표는 통과 개수를 세어 총점을 만드는 용도가 아닙니다. 앞 단계의 조건이 다르면 뒤 지표의 소수점까지 비교할 이유가 없습니다. MDD가 운용 한도를 넘으면 샤프가 조금 더 높은 전략을 선택할 수 없습니다. 목적과 제약에 따라 탈락 조건을 먼저 정하는 것이 핵심입니다.
전략 목적에 따라 강조할 지표가 달라집니다
모든 전략에 같은 가중치를 적용할 필요는 없습니다.
장기 추세추종
- 최장 낙폭 기간과 연속 손실
- 수익 거래 상위 10% 집중도
- 시장 노출과 위기 국면 하락 포착률
- 롤링 샤프와 표본외 방향 유지
낮은 승률과 긴 횡보가 전략 구조의 일부일 수 있으므로 승률만으로 탈락시키지 않습니다.
단기 평균회귀
- CVaR와 최악 거래
- 갭 손실과 손절 체결 차이
- 회전율·슬리피지 민감도
- 하락 추세 국면의 연속 손실
높은 승률이 꼬리 손실을 숨길 수 있으므로 평균손익보다 최악 구간을 먼저 봅니다.
벤치마크 초과수익 전략
- 추적오차와 정보비율
- 베타·알파의 신뢰구간
- 상승·하락 포착률
- 상대수익의 롤링 안정성
절대수익이 양수여도 벤치마크를 일관되게 이기지 못하면 목적을 달성하지 못한 것입니다.
저노출 이벤트 전략
- 거래당 기대값과 표본 수
- 평균·최대 동시 보유
- 유휴 현금 처리
- 소수 거래 수익 집중도
연환산 성과가 높아도 적은 거래에서 나온 값이면 불확실성이 큽니다. 노출이 낮은 만큼 자본을 실제로 재사용할 수 있는지도 확인합니다.
지표를 더 추가할수록 질문도 명확해야 합니다
성과지표가 많다고 자동으로 좋은 검증이 되지는 않습니다. 같은 위험을 다른 이름으로 반복 측정하거나, 서로 다른 빈도와 기간을 섞으면 숫자만 늘어납니다.
새 지표를 추가할 때는 세 가지를 묻습니다.
- 기존 지표가 답하지 못한 어떤 질문을 새로 답하는가
- 이 지표 때문에 실제 전략 선택이나 위험 한도가 달라지는가
- 계산 입력과 가정을 독자가 재현할 수 있는가
답이 없다면 성과표의 열을 늘리기보다 기존 지표의 정의와 조건을 더 명확히 하는 편이 낫습니다. 이 허브는 새로운 성과지표가 추가될 때 해당 질문과 읽기 순서를 함께 갱신합니다.
좋은 성과표는 전략을 자랑하기보다 탈락 이유를 보여줍니다
백테스트 성과표를 누적수익률 순으로 정렬하면 가장 화려한 전략을 쉽게 찾을 수 있습니다. 그러나 실제로 필요한 것은 끝까지 운용할 수 있는 전략입니다.
계산 조건을 먼저 맞추고, 손실의 깊이와 시간을 확인하고, 꼬리와 거래 집중도를 봅니다. 그다음 위험 대비 성과, 자본 효율, 벤치마크 초과성과를 비교합니다. 마지막으로 시간축과 거래 순서, 여러 후보를 시험한 선택 편향을 흔듭니다.
높은 수익률은 검토를 시작하게 하지만, 감당 가능한 손실과 반복 가능한 근거가 전략을 남깁니다. 성과표의 목적은 가장 높은 숫자를 찾는 것이 아니라 어떤 조건에서 결론이 무너지는지 미리 발견하는 것입니다.
성과지표 전체 보기
- 누적수익률과 CAGR
- MDD와 낙폭 기간
- 변동성과 하방편차
- 샤프 비율
- 소르티노 비율
- 칼마 비율
- 승률·손익비·기대값
- 수익팩터
- 시장 노출과 회전율
- VaR와 CVaR
- 베타와 결정계수
- 젠센 알파
- 추적오차와 정보비율
- 상승·하락 포착률
- 오메가 비율
- 왜도와 첨도
- 롤링 샤프와 롤링 MDD
- 파산 확률과 몬테카를로
- 확률적·왜곡 보정 샤프 비율
참고 자료
- GIPS Standards Handbook for Firms — 성과 표시의 공정성·충분한 공개와 위험 지표의 비교 가능성·계산 및 해석 투명성에 관한 기준
- Sharpe, The Sharpe Ratio — 위험조정 성과를 비교할 때 수익률 빈도와 비교 조건을 통일해야 하는 이유
이 글은 공개 가격 데이터를 이용한 백테스트 결과를 읽는 방법을 설명합니다. 특정 종목의 매수·매도 추천이나 미래 수익을 의미하지 않으며, 실제 투자 판단과 책임은 투자자 본인에게 있습니다.