퀀트 실전, 10편 정리
입문 시리즈가 “백테스트가 무엇이고 어디서 틀리는가”였다면, 실전 시리즈는 “그걸 실제 계좌로 옮기면 무엇이 달라지는가”였습니다. 한국 종목 데이터를 받는 데서 시작해 자동매매 파이프라인까지 열 편을 썼습니다. 한자리에 묶어 둡니다.
입문 시리즈의 개념(수익률, MDD, 샤프, 과최적화, 생존 편향)은 알고 있다고 전제했습니다. 처음이라면 입문 정리 글부터 보시는 편이 낫습니다. 글마다 결과를 낸 파이썬 스크립트는 코드 페이지에 모아 두었습니다.
데이터와 종목 고르기
| 글 | 한 줄 | |
|---|---|---|
| ① | pykrx로 한국 종목 재무 데이터 받아오기 | KRX 로그인부터 전 종목 PER·PBR 스냅샷까지. 0을 결측으로 바꾸는 정제와, 재무 지표가 언제 갱신되는지 아는 것이 절반이다 |
| ② | 종목 스크리닝 시스템 만들기 | 이익수익률·PBR·배당수익률 순위로 뽑으면 상위 20개 중 8개가 금융·지주다. 종목명으로 그룹을 나눠 그 안에서 순위를 매기면 1개로 준다(업종 분류가 아닌 이름 기준의 거친 구분) |
검증 — 그 수익률을 믿어도 되나
| 글 | 한 줄 | |
|---|---|---|
| ③ | 워크포워드 검증 | 과거 월평균 3.33%였던 설정이 다음 달에 준 것은 1.33%. 과거 순위와 다음 순위의 상관은 0에 가까웠다 |
| ④ | 몬테카를로로 재보기 | +53.6%는 무작위 20종목의 상위 10% 자리. 나쁘지 않지만 21개월로는 확정할 수 없다 |
비중과 크기 — 얼마씩, 얼마나
| 글 | 한 줄 | |
|---|---|---|
| ⑤ | 평균-분산 최적화 | 기대수익을 넣는 최대샤프는 사후 1등, 실전 꼴찌. 쓸 수 있는 것은 공식의 분산 쪽 절반이다 |
| ⑥ | 리스크 패리티 | 기대수익 없이 위험 기여를 똑같이. 레버리지로 60/40만큼 흔들리게 하면 낙폭은 절반이었지만 2022년에는 버티지 못했다 |
| ⑦ | 켈리 공식 | 미국 주식의 켈리 배수는 3.98배. 과거 10년으로 추정해 따르면 1998년에 파산했고 절반 켈리도 2020년에 파산했다 |
실행 — 계좌에 옮길 때
| 글 | 한 줄 | |
|---|---|---|
| ⑧ | 추세추종과 손절 규칙 | 10% 손절의 MDD는 −76.3%로 그냥 보유(−72.5%)보다 깊었다. 손절은 손실을 줄이기보다 모양을 바꾼다 |
| ⑨ | 세금과 거래 현실 | 세금이 전략 순위를 바꿨다. 같은 S&P 500도 상품과 계좌에 따라 세금으로 깎인 폭이 연 0.3%p부터 2.3%p까지 달랐다 |
| ⑩ | 자동매매 파이프라인 | 주문보다 안전장치가 먼저. 정수 주와 현금 버퍼만 넣어도 백테스트에 없던 주문이 생긴다 |
열 편에서 확인한 것 다섯 가지
1. 고르는 행위도 검증해야 한다. 설정 32개 중 가장 좋았던 것을 고르면, 그 숫자에는 고른 행위의 운이 섞여 있습니다. 워크포워드로 미래를 보지 않고 고르게 하자 약속된 수익의 절반도 오지 않았습니다. 32개를 그냥 다 평균한 것과 비슷한 성적이었습니다.
2. 짧은 표본은 “모른다”가 정직한 답이다. 21개월치 한국 종목 실험은 방향은 맞아 보였지만 초과수익 t값이 0.63이었습니다. 효과가 없다는 뜻이 아니라, 이 데이터로는 있다고 말할 힘이 없다는 뜻입니다. 그래서 긴 데이터가 필요한 질문은 미국 장기 데이터로 따로 확인했습니다.
3. 기대수익은 거의 추정할 수 없고, 변동성은 꽤 추정할 수 있다. 평균-분산, 리스크 패리티, 켈리가 모두 같은 지점에서 갈렸습니다. 기대수익을 많이 쓰는 방법일수록 실전에서 크게 흔들렸고, 분산과 상관만 쓰는 방법이 더 튼튼했습니다.
4. 얼마나 걸고 언제 나오느냐가 성과보다 생존을 먼저 정한다. 켈리는 “최적”의 두 배를 걸면 성장률이 0이 된다는 것을, 손절 실험은 좁은 손절이 박스권에서 손실을 오히려 키운다는 것을 보여 줬습니다. 둘 다 수익률 표의 한 칸이 아니라 계좌가 살아남느냐의 문제였습니다.
5. 전략만큼 그릇이 중요하다. 같은 규칙도 세금 체계에 따라 순위가 바뀌었고, 실제로 돌리면 정수 주, 현금 버퍼, 중복 실행, 하루 17%짜리 날 같은 것들이 튀어나왔습니다. 백테스트에서 빠진 현실은 이번에도 대부분 성과를 깎는 방향이었습니다.
다루지 못한 것
한국 종목 실험은 2024년 12월부터 21개월치 스냅샷이 전부였습니다. 상장폐지 종목까지 넣은 긴 한국 데이터가 있었다면 ②~④의 결론을 훨씬 단단하게 확인할 수 있었을 것입니다. 해외 자산은 환율 효과를 빼고 다뤘고, 세금은 개인의 다른 소득을 고려하지 않은 근사였습니다.
한국 종목 쪽에도 두 가지가 빠져 있습니다. ①의 PER·PBR에는 사업보고서 공시일을 붙이지 않아서, 보고서가 나온 뒤 KRX가 지표를 갱신하기 전까지는 실적이 한 해 늦게 반영됩니다. ②의 금융·지주 구분도 업종 분류 데이터 없이 종목명으로 나눈 것이라, 이름에 “지주”가 없는 지주회사는 일반 종목으로 들어갔습니다.
⑤~⑦과 ⑨의 미국 장기 데이터는 공개 사본에 값이 있는 마지막 달까지만 썼습니다. 무위험 금리가 필요한 계산은 2020년 7월까지이고, 무위험 금리 없이 할 수 있는 리스크 패리티의 비중 계산과 2022년 점검만 실러 데이터에 배당과 금리 값이 있는 2023년 6월까지 봤습니다. 그 뒤의 미국 시장은 이 시리즈의 결론에 들어 있지 않습니다.
앞으로는 번호 없는 짧은 실험과 논문 읽기를 섞어 씁니다. 큰 시리즈에서 미처 확인하지 못한 질문들, 이를테면 코스피의 요일 효과나 레버리지 ETF를 오래 들고 있을 때 생기는 일 같은 것들입니다. 이런 글은 전체 글의 ‘그 밖의 글’에 모여 있습니다.
이 글은 학습과 정보 공유 목적으로 작성되었으며, 특정 종목이나 상품에 대한 투자 권유가 아닙니다. 투자의 판단과 책임은 투자자 본인에게 있습니다.