전략을 검증하는 퀀트투자
퀀트투자 Factor에 대하여
이전 글에서 말씀 드린 자산배분전략등의 과거 수익률을 검증하기 하다보면 자연스럽게 ‘퀀트 투자’ 를 알게 됩니다. 퀀트 투자에서 과거 수익률을 검증하는 백테스트(Backtest)가 좋게 나온다고 해서 그게 곧 실전에서도 통한다는 보장은 없습니다. 제가 직접 여러 전략을 돌려보면서 처음에 이 사실을 체감했을 때, 솔직히 꽤 당황스러웠습니다. 숫자가 좋아 보이면 믿고 싶어지는 게 인간의 심리니까요.

퀀트 투자의 팩터 전략, 실제로는 어떻게 쓰이나
퀀트 투자는 수학적 모델과 통계 분석으로 매매 결정을 내리는 방식입니다. 일반적으로 "감정 없이 데이터로만 투자하니 안정적이다"라고 알려져 있는데, 제 경험상 이 말은 절반만 맞습니다. 모델 자체가 잘못 설계되어 있으면, 감정 대신 잘못된 논리가 개입되는 구조가 되거든요.
제가 처음 퀀트에 발을 들인 건 자산배분 모델을 직접 검증해보고 싶어서였습니다. 인터넷에 돌아다니는 요약 성과 자료들이 미덥지 않았고, 코딩을 거의 몰랐던 터라 서비스형 퀀트 플랫폼을 빌려 쓰기 시작했습니다. ETF 자산배분으로 시작해서, 점점 개별 주식을 특정 룰로 고르는 팩터 전략으로 넘어갔습니다.
퀀트 투자에서 팩터(Factor)란 수익률에 영향을 미치는 계량적 특성을 말합니다. 주로 아래와 같은 팩터들이 핵심적으로 사용됩니다.
- 밸류 팩터(Value Factor): 주가수익비율(P/E), 주가순자산비율(P/B) 등을 활용해 저평가된 주식을 선별합니다. 여기서 P/B란 주가를 주당 순자산으로 나눈 값으로, 1보다 낮으면 시장이 기업 자산보다 싸게 평가하고 있다는 의미입니다.
- 모멘텀 팩터(Momentum Factor): 최근 수익률이 좋은 주식이 단기적으로 계속 오르는 경향을 이용합니다. 과거 성과가 미래를 보장하진 않지만, 통계적으로 유의미한 지속성이 확인된 팩터입니다.
- 퀄리티 팩터(Quality Factor): 자기자본이익률(ROE)이나 부채비율 같은 재무 건전성 지표를 씁니다. ROE란 기업이 주주 자본으로 얼마나 이익을 냈는지를 나타내는 수치입니다.
- 사이즈 팩터(Size Factor): 시가총액이 작은 소형주가 장기적으로 대형주보다 초과 수익을 낸다는 이론에 기반합니다.
- 모멘텀 보조 지표: RSI(상대 강도 지수)도 자주 씁니다. RSI가 70 이상이면 과매수, 30 이하면 과매도 신호로 해석합니다.
리스크 관리 측면에서는 샤프 비율(Sharpe Ratio)과 최대 낙폭(MDD, Maximum Drawdown)이 핵심 지표입니다. 샤프 비율이란 수익률에서 무위험 수익률을 뺀 값을 변동성으로 나눈 것으로, 쉽게 말해 위험 한 단위당 얼마나 벌었는지를 나타냅니다. 최대 낙폭(MDD)은 특정 기간 내 고점 대비 최대로 떨어진 비율인데, 제가 전략을 고를 때 수익률만큼이나 이 수치를 중요하게 봤습니다. 수익률이 아무리 좋아도 중간에 -50%를 버텨야 한다면, 실전에서 그 전략을 끝까지 유지하기가 사실상 불가능하니까요.
포트폴리오 성과를 평가할 때는 알파(Alpha)도 자주 등장합니다. 알파란 시장 평균 수익률을 초과하는 성과를 의미합니다. 시장이 10% 올랐을 때 포트폴리오가 13% 올랐다면 알파는 3%가 됩니다. 결국 퀀트 전략의 목표는 이 알파를 안정적으로 만들어내는 것입니다(출처: AQR Capital Management).
과최적화의 함정, 백테스트 결과를 믿기 전에
백테스트 결과가 화려할수록 오히려 한 번 더 의심해야 합니다. 제가 직접 써봤는데, 파라미터를 조금씩 바꾸다 보면 어느 순간 수익률이 극적으로 좋아지는 지점이 생깁니다. 그때의 느낌이 묘한데, 발견한 것 같으면서도 동시에 "이게 진짜인가?" 싶은 의심이 들었습니다. 그리고 그 의심은 대부분 맞았습니다.
이것이 바로 과최적화(Overfitting) 문제입니다. 과최적화란 모델이 과거 데이터에 지나치게 맞춰져서 새로운 데이터에는 성능이 크게 떨어지는 현상을 말합니다. 머신러닝에서 훈련 데이터에 과하게 맞춘 모델이 실제 예측에서 형편없어지는 것과 정확히 같은 원리입니다. 퀀트 전략도 마찬가지입니다.
그래서 제가 실제로 적용한 방법이 데이터 분리입니다. 머신러닝에서 학습 데이터와 테스트 데이터를 나누듯, 전략 개발에 쓸 기간과 검증에 쓸 기간을 별도로 분리해서 테스트합니다. 예를 들어 2000년~2015년 데이터로 전략을 만들고, 2016년~2023년 데이터로 그 전략을 검증하는 방식입니다. 이렇게 했을 때 처음에 기대했던 것보다 성과가 뚝 떨어지는 경우가 꽤 있었고, 그 전략들은 그냥 버렸습니다.
하지만 데이터 분리만으로는 부족합니다. 제가 느끼기에 가장 중요한 건 전략의 논리적 타당성입니다. 일반적으로 "숫자만 맞으면 된다"고 보는 시각도 있는데, 저는 그게 위험하다고 생각합니다. 왜 이 팩터가 수익을 내는지, 그 원인이 투자 심리와 연결되는지, 거시경제 사이클에서 무너질 수 있는 구간은 없는지까지 따져봐야 합니다. 이를 위해서는 결국 공부를 많이 해야 합니다. 제 경우엔 거시경제 흐름과 투자 심리에 대한 공부를 병행하면서 전략의 논리를 다듬는 과정을 거쳤습니다.
이와 관련해 학계에서도 유사한 경고를 오랫동안 해왔습니다. 팩터의 수가 늘어날수록 과최적화 가능성도 높아진다는 연구 결과가 있으며, 통계적으로 유의미한 팩터처럼 보이는 것들 중 상당수가 데이터 마이닝의 산물일 수 있다고 지적합니다(출처: National Bureau of Economic Research(NBER)). 제가 직접 전략을 개발하면서 이 경고가 결코 과장이 아님을 몸으로 확인했습니다.
이 글을 쓰기 전 제가 스스로에게 던진 3가지 질문
전략을 하나 마무리할 때마다 저는 항상 아래 세 가지를 스스로에게 되묻습니다. 이 질문에 셋 다 답할 수 없다면, 아무리 백테스트 수익률이 좋아도 실전에 걸지 않습니다.
- 코딩을 몰라도 시작할 수 있을까? 저도 처음엔 코딩을 거의 몰랐고, 서비스형 퀀트 플랫폼으로 논리적 전략 설계부터 먼저 익혔습니다. 코딩은 전략이 어느 정도 정리된 뒤에 배워도 늦지 않습니다.
- 이 수익률, 혹시 끼워 맞춘 건 아닐까? 파라미터를 조금씩 바꾸다 수익률이 갑자기 좋아지는 지점을 만나면, 저는 그걸 발견이 아니라 의심의 신호로 받아들입니다. 개발 구간과 검증 구간을 나눠 두 번 테스트하기 전까지는 믿지 않습니다.
- MDD를 버틸 자신이 있는가, 팩터는 정말 다 필요한가? 수익률이 아무리 매력적이어도 -40%, -50% 구간을 실제로 버틸 수 없다면 그 전략은 저에게 맞지 않는 전략입니다. 팩터 수를 늘리는 것보다, 왜 이 팩터가 수익을 내는지 논리적으로 설명할 수 있는 단순한 전략 하나가 더 오래 살아남았습니다.
퀀트 투자는 감정을 배제하고 데이터로 결정한다는 점에서 매력적인 방식이 맞습니다. 하지만 데이터를 다루는 사람의 논리가 틀리면, 결국 틀린 결정을 자동화하는 시스템이 됩니다. 위 세 질문에 스스로 답해보는 습관이, 제가 이 영역에서 가장 크게 배운 것입니다.
참고 문헌 : 현명한 퀀트 주식투자(도서), 거인의 주식 블로그