20일 이동평균선을 위로 뚫으면 진입하고 아래로 뚫으면 청산하는 규칙이 지난 3년 동안 어떤 결과를 냈을까요? 백테스팅은 이런 규칙을 과거 가격 데이터에 기계적으로 적용해 거래 내역과 성과 지표를 뽑아 보는 과정입니다. 실제 자금을 넣기 전에 전략의 약점을 찾는 용도로 쓰입니다. 절차와 성과 지표 계산, 결과를 부풀리는 흔한 함정을 다룹니다.
BTC 일봉 차트
| 영문 표기 | Backtesting |
|---|---|
| 한 줄 정의 | 정해진 매매 규칙을 과거 데이터에 적용해 가상의 성과를 측정하는 검증 과정 |
| 계산식 | 1회 거래 기대값 = 승률 × 평균 이익 - (1 - 승률) × 평균 손실 |
| 확인할 수 있는 곳 | 코인네비 차트, 모의투자, 스캐너 |
| 주의점 | 과거 성과는 미래 결과를 보장하지 않으며 수수료와 슬리피지를 빼면 결과가 크게 달라집니다 |
백테스팅 절차와 기대값 계산
진입 조건, 청산 조건, 손절 기준, 포지션 크기를 숫자로 정하는 것이 첫 단계입니다. 사람이 판단할 여지가 남으면 검증이 되지 않습니다. 그다음 과거 데이터에 규칙을 적용해 모든 거래를 기록하고 수수료와 슬리피지를 차감합니다.
결과표에서 먼저 볼 숫자는 기대값입니다. 예시로 100번 거래에서 승률 40%, 평균 이익 3%, 평균 손실 1.5%라면 0.4 × 3 - 0.6 × 1.5 = 1.2 - 0.9 = 0.3으로 거래 1회당 평균 0.3%가 남는 계산입니다. 여기에 MDD, 거래 횟수, 수익 구간과 손실 구간의 분포를 함께 보면 전략의 모양이 드러납니다.
차트로 규칙을 수동 검증하는 법
코딩 없이 시작한다면 코인네비 차트에서 과거 구간을 되돌려 보며 규칙대로 진입했을 지점을 하나씩 표시하는 수동 백테스트가 현실적인 방법입니다. 오른쪽 차트를 가린 채 한 봉씩 넘기면 결과를 미리 보는 실수가 줄어듭니다.
표본이 적으면 결론도 약합니다. 거래 20건으로 얻은 승률 60%는 운의 영향을 크게 받으니 상승장, 하락장, 횡보장 구간을 섞어 수십 건 이상을 모으는 편이 좋습니다. 과거 검증을 마친 규칙은 모의투자로 넘겨 실시간 데이터에서도 비슷한 결과가 나오는지 확인하는 순서를 밟는 사람이 많습니다. 스캐너로 조건에 맞는 코인을 찾는 과정도 이 단계에서 함께 점검해 볼 만합니다.
결과를 부풀리는 함정들
파라미터를 이리저리 바꿔 과거 수익이 가장 높은 조합을 고르는 순간 과최적화 위험이 생깁니다. 과거 데이터의 잡음까지 외운 규칙은 새 데이터에서 무너지기 쉽습니다. 데이터를 둘로 나눠 앞부분으로 규칙을 만들고 뒷부분으로 검증하는 방식이 흔한 대응책입니다.
미래 참조 편향도 잦습니다. 봉이 마감되기 전에는 알 수 없는 종가를 진입 판단에 쓰면 실제로는 불가능한 거래가 결과에 섞입니다. 코인 시장에서는 상장 폐지된 코인이 데이터에서 빠져 결과가 좋게 나오는 생존 편향도 조심해야 합니다. 수수료를 빼지 않고 계산하면 거래가 잦은 전략일수록 성과가 크게 부풀려집니다.
백테스팅 자주 묻는 질문
백테스팅과 백테스트는 다른 말인가요?
백테스트 결과가 좋으면 실전에서도 수익이 나나요?
거래 횟수는 몇 번 이상이어야 하나요?
과최적화는 어떻게 피하나요?
백테스트에서 꼭 봐야 할 지표는 무엇인가요?
최종 수정 2026-09-28. 이 페이지는 정보 제공 목적이며 매수·매도 권유가 아닙니다.