부트스트랩으로 재본 백테스트의 운 — 연 11%의 실제 범위

백테스트에 적힌 연 11%에 운은 얼마나 섞여 있을까. 시작월을 5년 안에서 옮기자 타이밍 전략의 우위가 61개 시작월 중 23개에서 사라졌고, 10년 창 185개로 재니 5.1~16.0%로 벌어졌다. 부트스트랩으로 대체 역사 2000벌을 지으니 '연 11%'의 90% 구간은 6.3~15.7%. 성과는 점이 아니라 범위였다.

이 글은 특정 종목이나 매매 시점을 추천하는 글이 아닙니다. 공개된 전략을 실제 데이터로 직접 백테스트하며 공부한 학습 기록입니다.

📚 이 글은 전략 리뷰 실험실 시리즈의 한 편입니다. 지금까지 돌려본 전략을 한눈에 비교한 표를 이 허브에서 볼 수 있습니다.

지난 글에서 시험지를 반으로 접었다. 앞장 성적으로 고른 자리가 뒷장에서 남아 있는지 봤고, 대체로 남아 있지 않았다. 그런데 접고 나서도 찜찜한 게 하나 있었다. 반 접기도 워크포워드도 결국 이 26년이라는 하나의 역사 위에서 벌인 일이라는 것.

그래서 이번엔 파라미터를 의심하지 않는다. 그보다 앞선 걸 의심한다 — 채점표에 적힌 숫자 그 자체. 나는 열네 편 내내 “이 전략은 연 11%, 샤프 0.97″이라고 써왔다. 그 11%에서 실력은 얼마고 운은 얼마인가.

결론부터 흘리자면, 이 글에서 시리즈의 대표 전략은 동전 던지기 신세가 된다. 그런데 알고 보니 그 동전은 이미 던져져 있었다.

세 가지 방식으로 흔들어봤다

대상은 행동 갭 편과 같은 네 전략이다. ADM(타이밍), 영구 포트폴리오(고정 분산), 미국+선진국 50:50(분산), 미국주식(그냥 보유). 조건도 시리즈 표준 그대로다(프록시 데이터, 매월 점검, 편도 비용 0.1%, 배당 재투자, 세금 미반영). 금이 든 영구 때문에 시작 정렬이 2001-02라, ADM이 11.0이 아니라 11.2로 읽힌다. 이 글의 주장은 ‘숫자의 폭’이라 0.2%p 차이엔 흔들리지 않는다.

시험 방법 묻는 것
① 시작월 옮기기 끝(2026-06)은 고정하고 시작만 5년 안에서 한 달씩 뒤로 민다 언제부터 쟀느냐가 성적을 바꾸나
② 10년 창 전부 굴리기 10년짜리 창을 한 달씩 굴려 185개의 10년을 모두 채점 어느 10년을 사느냐로 얼마나 갈리나
③ 대체 역사 짓기 월 수익률을 1년 토막으로 잘라 다시 이어붙여 26년을 2000벌 ‘연 11%’의 정직한 표기폭은

시험 ① — 2년만 늦게 시작하면 우위가 사라진다

백테스트 시작월을 2001년부터 2006년까지 한 달씩 옮기며 잰 네 전략의 연복리 CAGR. 미국주식은 닷컴 폭락이 빠지면서 9.2%에서 11.8%로 올라 타이밍 전략의 우위가 사라지고, 영구 포트폴리오만 7.1~7.6%로 시작월과 거의 무관하게 평평하다

끝은 그대로 두고 시작만 옮겼다. 창은 모두 20년이 넘으니 ‘표본이 짧아서 흔들리는 것’이 아니라 어느 위기가 시험지에 들어 있나만 변한다.

시작월 ADM 영구 50:50 미국주식 ADM−미국주식
2001-02 (시리즈가 써온 시작점) 11.2 7.2 7.9 9.2 +2.0
2003-02 12.2 7.5 10.4 11.8 +0.4
2005-02 10.4 7.3 8.9 10.9 −0.5

미국주식은 시작을 2년 미는 것만으로 연 9.2%에서 11.8%가 됐다. 닷컴 폭락이 시험지에서 빠졌기 때문이다. 그동안 ADM의 자랑거리는 바로 그 하락장을 피한 것이었으니, 폭락이 사라지면 자랑거리도 같이 사라진다. ADM의 우위 +2.0%p는 2003년 시작에선 +0.4%p로 쪼그라들고, 2005년 시작에선 아예 뒤집힌다. 시험해본 61개 시작월 중 23개에서 우위가 사라졌다. 전략 코드는 한 줄도 안 고쳤는데 말이다.

그림에서 눈에 띄는 건 초록 선이다. 영구 포트폴리오는 시작을 어디로 잡든 7.1~7.6%, 폭이 0.5%p에 불과하다. 나머지 셋은 2.0~2.6%p씩 출렁인다. 아무도 세어주지 않던 미덕이 여기서 드러난다 — 언제 시작했느냐를 거의 묻지 않는 전략.

시험 ② — 동전 던지기인 줄 알았다

10년 창 185개로 잰 네 전략의 연복리 CAGR 분포. ADM 5.1~16.0%, 미국주식 2.5~16.5%, 영구 3.4~9.7%로 흩어져 있고, 빨간 별로 표시한 전체 기간 발표 숫자는 그 범위 안의 한 점에 불과하다. 미국주식 점들은 폭락을 겪은 10년과 아닌 10년으로 위아래 두 덩어리로 갈라진다

이번엔 10년짜리 창을 한 달씩 굴려 185개의 10년을 전부 채점했다. 빨간 별이 시리즈가 발표해온 숫자, 점들이 실제로 가능했던 10년들이다.

ADM의 “연 11.2%”는 5.1~16.0% 사이 어딘가의 한 점이었다. 미국주식은 더 심해서 2.5~16.5%. 영구는 여기서도 가장 좁다(3.4~9.7%). 그리고 승률을 세어보니 이렇게 나왔다.

10년을 무작위로 살았을 때 CAGR 승률 샤프 승률
ADM vs 미국주식 49.2% 50.3%
ADM vs 영구 94.6% 21.1%

시리즈의 대표 전략이 그냥 미국주식 사서 묻어두기와 정확히 반반이다. 열네 편을 써놓고 얻은 게 동전 던지기라니, 화면을 한참 봤다.

그런데 창을 하나 더 갈라보고 생각이 바뀌었다. 그 10년 동안 큰 폭락이 있었느냐로 나눠본 것이다.

10년 창 창 수 ADM 중앙 CAGR 미국주식 중앙 CAGR ADM 샤프 승률
위기를 품은 창 92개 12.2% 7.3% 100.0%
위기 없는 창 93개 7.6% 13.4% 1.1%

동전 던지기가 아니었다. 정반대로 확정된 두 개의 세계였다. 위기가 든 10년에서 ADM은 92번 중 92번 이겼고, 위기 없는 10년에선 93번 중 92번 졌다. 전체 50.3%는 이 두 세계를 반씩 섞어 평균 낸 착시였을 뿐이다. 그림 2에서 미국주식 점들이 위아래 두 덩어리로 갈라진 것도 같은 이야기다 — 폭락을 겪은 10년과 아닌 10년.

그러니 우연은 전략에 있지 않았다. 내가 산 10년에 위기가 있었느냐에 있었다. 이 26년에선 그게 92 대 93, 하필 반반이었을 뿐이고.

시험 ③ — 26년을 2000번 다시 살아봤다

마지막으로, 있었을 법한 다른 역사를 지어봤다.

📌 부트스트랩(bootstrap)이란?
있었던 데이터를 조각내 무작위로 다시 이어붙여, ‘있었을 법한 다른 역사’를 여러 벌 지어보는 방법. 한 벌뿐인 과거에서 여러 벌의 과거를 만들어내는 셈이라, 제 신발끈을 잡아당겨 스스로를 들어올린다는 우스개에서 이름이 왔다. 한 달씩 섞으면 폭락이 쌓여가는 흐름이 부서지니, 1년짜리 토막으로 잘라 섞었다. 토막 안의 순서는 실제 그대로다.

부트스트랩으로 지은 대체 역사 2000벌의 분포. 왼쪽은 ADM의 연복리 CAGR 분포로 90% 구간이 6.3~15.7%이고 실제 관측값 11.2%가 그 안의 한 점이다. 오른쪽은 같은 역사 안에서 짝지어 뺀 영구와 ADM의 샤프 차이로, 영구가 이긴 역사가 68%다

이렇게 지은 26년 2000벌에서 ADM의 성적은 이렇게 흩어졌다.

ADM 실제 역사 대체 역사 90% 구간
연복리 CAGR 11.2% 6.3 ~ 15.7%
샤프 0.97 0.58 ~ 1.35
최대낙폭 −24.4% 하위 5%는 −36.7%보다 깊음

📌 90% 구간이란?
지어낸 2000벌을 성적순으로 줄 세운 뒤 위아래 5%씩을 잘라낸 가운데 범위. “웬만하면 이 안에 떨어진다”는 폭이다.

정직한 표기는 “연 11%”가 아니라 “6~16% 어딘가, 가운데값은 11%쯤”이다. 더 뼈아픈 건 마지막 줄이다. 나는 ADM의 최대낙폭 −24.4%를 근거로 “이 전략은 이 정도까진 버텨야 한다”고 말해왔다. 그런데 지어낸 역사의 5%는 −36.7%보다 깊게 빠졌다. 우리가 겪은 낙폭은 겪을 수 있었던 낙폭이 아니다. 낙폭은 지표 중에서도 운을 가장 많이 타는 숫자다.

그런데 여기서 시험 ②와 정반대 결과가 나온다. 같은 역사 안에서 둘을 나란히 세워 세어보니, ADM의 샤프가 미국주식을 이긴 역사가 90.8%였다. 10년 창에선 50.3%로 반반이던 그 대결이다.

📌 짝지어 본다는 것
두 전략을 따로 채점해 평균만 비교하면 놓치는 게 있다. 지어낸 역사마다 같은 26년 안에서 둘을 나란히 세워 누가 이겼는지 세면, 둘 다 좋았던 시절·둘 다 나빴던 시절의 영향이 상쇄되고 우열만 남는다. 같은 시험지를 함께 푼 두 학생을 비교하는 것과 같다.

차이는 시험지의 길이다. 10년은 위기를 만날 수도, 안 만날 수도 있다. 26년은 반드시 여러 번 만난다. 그래서 타이밍 전략의 값어치는 전략의 성질이 아니라 얼마나 오래 투자하느냐에 달려 있었다. 10년 투자자에겐 위기를 만날지 마는지의 도박이고, 26년 투자자에겐 열에 아홉이다.

지우려던 결론이 살아남았다

이 시험을 시작할 때 나는 6편의 결론을 지울 생각이었다. 거기서 나는 “가장 단순한 영구 포트폴리오가 타이밍 전략의 샤프를 제쳤다”고 썼는데, 그 차이가 겨우 1.03 대 0.97이었다. 0.06 차이라니, 운의 폭 안에 묻힐 게 뻔해 보였다.

아니었다. 영구의 샤프 우위는 10년 창 185개 중 77%에서, 지어낸 역사 2000벌 중 68%에서 살아남았다. 그림 3의 오른쪽이 그 장면이다. 두 전략의 샤프 분포를 각각 그리면 거의 완전히 겹쳐서 “구별 못 하겠다”는 결론이 나온다. 그런데 같은 역사 안에서 짝지어 빼면 승부가 갈린다. 겹쳐 보는 것과 짝지어 보는 것은 다른 질문이었다.

그러니까 운의 폭이 큰 쪽은 수익률이지 위험 쪽이 아니었다. “얼마 벌었나”는 시작월과 창에 따라 널뛰지만, “누가 더 효율적으로 벌었나”라는 상대적 순위는 비교적 단단했다. 숫자 하나에 홀리지 말라고 예전에 써놓고, 정작 나는 CAGR 하나에 제일 오래 홀려 있었다.

한계도 짚는다

첫째, 토막을 섞으면 실제 역사의 위기 순서는 깨진다. 닷컴 다음에 금융위기가 온다는 사실은 지어낸 역사엔 없다. ‘이 26년의 재배열’까지가 해석 범위다.

둘째, 더 근본적인 한계가 있다. 대체 역사 2000벌은 전부 이 26년의 조각으로만 지었다. 상자에 없는 재료는 어떤 역사에도 나오지 않는다. 그러니 이 90% 구간조차 “겪어본 종류의 사건 안에서의 폭”이지 진짜 미래의 폭이 아니다. 부트스트랩은 미지를 만들어내지 못한다.

셋째, 10년 창 185개는 서로 겹쳐 있어 독립된 185번의 시험이 아니다. 넷째, 늘 그렇듯 프록시 데이터·이 기간·세금 미반영이다.

정리하며

세 번 흔들어보고 얻은 건 숫자 하나가 아니라 말버릇이다. 이제 “연 11%”라고 쓰면 안 된다. “이 시험지에서 11%였고, 시험지를 바꾸면 6~16% 어딘가”라고 써야 한다.

그리고 첫 리뷰에서 감으로 했던 말, “전략이 변한 게 아니라 시험지가 바뀌었을 뿐”이 열다섯 편 만에 숫자를 얻었다. 시험지에 위기가 들어 있으면 100 대 0, 없으면 1 대 99. 시험지가 결론을 바꾼다는 건 비유가 아니라 측정값이었다.

검증 세 편을 이렇게 지나왔다. 지도를 그려 봉우리를 피하라 했고, 시험지를 반으로 접자 그 처방마저 반박당했고, 이번엔 채점표의 숫자가 애초에 범위였음을 봤다. 셋을 합치면 남는 태도는 하나다 — 자기 결과를 의심하는 데 쓰는 시간이, 결과를 개선하는 데 쓰는 시간보다 아깝지 않다.

그러고 보니 마지막 한계가 계속 눈에 밟힌다. 2000벌의 역사를 지었지만 전부 이 26년의 조각이었고, 그 26년은 하필 금이 계속 빛나던 시절이었다. 영구 포트폴리오의 저 단단함도 상자 속 재료가 좋았던 덕은 아니었을까. 금이 20년 내리 잠잠했던 1980~2000년 같은 재료를 상자에 넣어보면 저 초록 선이 어떻게 변할지 — 궁금해졌다.


※ 이 글은 개인의 학습 과정을 공유하기 위한 것으로, 투자 권유나 자문이 아닙니다. 백테스트는 과거 데이터에 대한 시뮬레이션이며, 실제 매매 상품이 아닌 프록시(인덱스펀드) 기준입니다. 거래비용은 편도 0.1%를 반영했고 세금·배당 과세는 미반영입니다. 과거의 성과가 미래를 보장하지 않습니다.

steadydawn
steadydawn

감이 아니라 데이터와 규칙으로 투자에 접근해보려는 사람입니다. 투자 전문가는 아니고 배우는 쪽에 가깝습니다. 그래서 시중에 알려진 공개 전략을 직접 코드로 백테스트해보고, 나온 숫자를 좋든 나쁘든 그대로 기록합니다. 특히 결과가 좋게 나올수록 한 번 더 의심하려 합니다. 이 블로그가 돌아가는 서버도 직접 구축해 운영하고 있어, 투자 이야기와 함께 서버·개발 이야기도 남깁니다.

기사 : 48

댓글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다