시스템 트레이딩을 설계할 때 가장 고민되는 부분 중 하나인 ‘테스트 데이터 사이즈(Test Date Size)’에 대해 제 생각을 적어둡니다.
“과거 데이터를 보유하고 있는 모두 다 넣으면 좋은 거 아냐?”라고 생각하실 수도 있지만
저는 다르게 이용하고 있습니다.
(정답은 알 수 없고, 수익이 나면 그게 정답입니다.)
8년. 시장의 ‘사계절’을 담는 시간
보통 시장에는 4년 주기로 상승, 횡보, 하락이 반복되는 1사이클이 있다고들 하는데요.
4년은 좀 짧다고 저는생각합니다.
운 좋게 대세 상승장만 걸릴 수도 있거든요.
그래서 저는 최소 6년(약 1,500거래일)에서 8년(약 2,000거래일) 정도의 데이터셋을 기본으로 백테스트를 합니다.
8년이면 대략 2번의 사이클이 돌아가는데, 이 기간이면 웬만한 산전수전은 다 겪게 된다는 생각합니다.
실제로 2001년부터 최근까지 미국 시장(S&P 500)에 어떤 일들이 있었는지 보면
| 년 | 시가 | 종가 | 저가 | 전년대비 상승률 | 전년대비 최저하락율 | 주요 이슈 |
| 2025 | 5881.63 | 6845.5 | 4835.04 | 16.39% | -17.79% | 트럼프 관세 쇼크 |
| 2024 | 4769.83 | 5881.63 | 4682.11 | 23.31% | -1.84% | |
| 2023 | 3839.5 | 4769.83 | 3794.33 | 24.23% | -1.18% | |
| 2022 | 4766.18 | 3839.5 | 3491.58 | -19.44% | -26.74% | 고인플레이션 쇼크 및 가파른 금리 인상 |
| 2021 | 3756.07 | 4766.18 | 3662.71 | 26.89% | -2.49% | |
| 2020 | 3230.78 | 3756.07 | 2191.86 | 16.26% | -32.16% | 코로나19 팬데믹과 역대급 유동성 장세 |
| 2019 | 2506.85 | 3230.78 | 2443.96 | 28.88% | -2.51% | |
| 2018 | 2673.61 | 2506.85 | 2346.58 | -6.24% | -12.23% | 미중무역전쟁시작 |
| 2017 | 2238.83 | 2673.61 | 2245.13 | 19.42% | 0.28% | |
| 2016 | 2043.94 | 2238.83 | 1810.1 | 9.54% | -11.44% | 브렉시트 |
| 2015 | 2058.9 | 2043.94 | 1867.01 | -0.73% | -9.32% | 중국증시 폭락 |
| 2014 | 1848.4 | 2058.9 | 1737.92 | 11.39% | -5.98% | |
| 2013 | 1426.2 | 1848.4 | 1426.2 | 29.60% | 0.00% | |
| 2012 | 1257.6 | 1426.2 | 1258.9 | 13.41% | 0.10% | |
| 2011 | 1257.6 | 1257.6 | 1074.8 | 0.00% | -14.54% | 미국 신용등급 강등 및 유럽 재정위기 |
| 2010 | 1115.1 | 1257.6 | 1010.9 | 12.78% | -9.34% | |
| 2009 | 903.2 | 1115.1 | 666.8 | 23.46% | -26.17% | 양적완화(QE)와 함께 대세 상승장 출발 |
| 2008 | 1468.4 | 903.2 | 741 | -38.49% | -49.54% | 글로벌 금융위기, 리먼 브라더스 파산 |
| 2007 | 1418.3 | 1468.4 | 1364 | 3.53% | -3.83% | |
| 2006 | 1248.3 | 1418.3 | 1219.3 | 13.62% | -2.32% | |
| 2005 | 1211.9 | 1248.3 | 1136.2 | 3.00% | -6.25% | |
| 2004 | 1111.9 | 1211.9 | 1060.7 | 8.99% | -4.60% | 연준(Fed)의 금리 인상 시작 |
| 2003 | 879.8 | 1111.9 | 788.9 | 26.38% | -10.33% | 이라크 전쟁 발발 → 극적인 반등 시작 |
| 2002 | 1148.1 | 879.8 | 768.6 | -23.37% | -33.05% | 닷컴버블 하락 마무리, 엔론 등 회계 스캔들 |
| 2001 | 1320.3 | 1148.1 | 944.8 | -13.04% | -28.44% | 9·11 테러, 닷컴버블 붕괴 후폭풍 지속 |
보시다시피 6~8년이라는 시간을 잡으면, 아무리 시장이 좋았어도 반드시 한 번은 처절한 하락장이나 예상치 못한 쇼크를 만나게 됩니다.
시스템트레이딩 전략 이 기간을 ‘생존’해내는데 초점을 맞춥니다.
흐르는 물처럼, ‘윈도우(Window)’ 방식의 업데이트
시장은 항상 변한다고 생각을 합니다.
2000년대 초반의 거래량과 지금의 거래량은 비교 자체가 안 되죠.
대형주와 중소형주의 역학관계, 기술주 중심의 환경 변화 등… 너무 오래된 과거 데이터는 오히려 현재의 로직을 오염시킬 수 있다는게 제 생각입니다.
그래서 저는 최신 데이터를 추가하고, 가장 오래된 데이터를 밀어내는 방식으로 데이터셋을 유지합니다.
20년 전의 결과에 집착하기보다는, 최근의 시장 환경에 내 로직이 얼마나 잘 녹아드는지를 보는 거죠.
엑셀 파일과의 싸움 : 견고함의 증명을 위해
저는 아이디어가 떠오르면 우선 엑셀로 빠르게 시뮬레이션을 해보는데요
어쩌다 도전 전신으로 제 로직이 생존이 얼마나 가능한지 확인하려고 이런 방법도 시도했습니다.
(지금은 AI로 만들 수 있습니다. ㅠㅠ)
2001~2008년 데이터로 로직을 다듬고, 2009년 1년을 시뮬레이션합니다.
그다음 2002~2009년 데이터로 2010년을 돌려봅니다.
이 과정을 2024년까지 반복하며서 매년 생존 여부를 체크했었습니다.
이 작업만으로 시뮬레이션 폴더가 1기가를 넘어가더군요.
(지금이면 더 빨리 몇시간만에 AI로 끝냈을 과정이 있지만.)
아무튼 그때는 “내 로직은 잘 버틴다” 라는 결과를 얻고 다음 단계로 나갈 수 있었습니다.
마치며: 정답은 없지만, 생존은 필수다
제가 하는 방식이 무조건 정답은 아닙니다.
어떤 분은 20년 치 데이터를 보실 수도 있고, 어떤 분은 최근 2년에 집중하실 수도 있겠죠.
정답은 없으니까요.
중요한 건 제가 설계한 로직이 시장의 사계절을 몇 번이나 버텨내며 녹아내리지 않았는지를
데이터로 확인해 보는 것도 좋은 방법이라 생각합니다.


