퀀트 전략 만드는 법을 정리해봅니다.^
'퀀트 전략'이라고 하면 퀀트 전략을 전문으로 연구하는 소수의 기관 투자자들에게만 한정된 성역이었지만, 퀀트 전략에 대한 저변과 시뮬레이션 및 자동 매매 툴이 급격히 대중에게 보급된 현재 시점에는 누구나 몇 분만에 수십년치 데이터로 쉽게 자신의 퀀트 전략을 시뮬레이션할 수 있는 시대가 되었습니다.
퀀트 전략에 관심은 많았지만, 어디서부터 손을 대야할 지 너무나 막막하고 감이 안 잡히기에 한번 정리 해보겠습니다.~
1. 퀀트 전략을 짜는 방법과 순서
1) 검증하고자 하는 팩터 선정
2) 팩터의 성과를 상위, 하위순으로 정렬하여 성과 검증
3) 보유 기간을 달리하여 테스트
4) 마켓 타이밍 적용
5) 필터링 조건 추가
5) 매수, 매도 조건 최적화
2. 검증하고자 하는 팩터 선정
- 첫번째, 팩터 선정부터 살펴보겠습니다. 여러분이 퀀트 전략을 짜려고 한다면, 나름대로의 가설을 세우게 될 것입니다. 예를 들자면, 최근 영업이익이 급증한 종목으로 포트를 구성하면 수익이 잘 날 것이다 혹은 최근 급락 혹은 급등한 종목, 혹은 가치가 좋은 종목으로 포트를 구성하면 수익이 날 것이다라는 것들이 모두 훌륭한 퀀트 전략의 가설이 될 수 있습니다.
절대 다수의 망하는 투자자들은 자신이 세운 가설이 무척 합리적이라고 생각하고 그대로 투자합니다.
가설이 너무나 논리적이고 합리적이기 때문에, 수익은 당연히 날 것이며, 검증은 할 필요조차 없다는 겁니다.
소위 말하는 시장을 어떤 경제 논리나 매크로 지표로 방향성을 예측하는 자칭 전문가들도 다 이런 부류에 속합니다.
실제로도 그들의 주장이나 논리는 무척 합리적인 것처럼 들립니다.
하지만, 들어맞는 경우는 거의 없는 이유는, 그들의 논리나 주장은 증명되지 않은 합리적인 '가설'에 불과하기 때문입니다.
우리가 어떤 연구를 할 때 처음 세우는 가설도 모두 '합리적'입니다. 증명할 가치도 없는 허무맹랑한 가설로 연구를 하는 사람은 없지요. 퀀트 시뮬레이션을 많이 하다보면 아무리 합리적인 것처럼 생각되는 가설도 실제로 검증해보면 의미가 있다고 생각되는 것은 5%도 채 안되는 것을 발견할 수 있는데요, 이 사실을 여러분이 시뮬레이션을 통해 두 눈으로 확인하는 순간 그동안 막연하게 '이런 이런 종목을 이런 자리에서 사면 당연히 수익이 나지 않을까?' 라는 생각으로 검증도 안해보고 무장적 투자했던 과거를 돌아보며 등줄기에 식은땀이 날 지도 모르겠습니다.
착각하지 않기!!
검증되기 전까지는 여러분, 혹은 전문가들이 주장하는 가설이 아무리 합리적이고 논리적이라고 주장하더라도 그것은 가치가 '전혀' 없습니다.
가설이 합리적, 논리적인 것과 그것이 사실인지 아닌지의 여부는 전혀 상관이 없습니다. 검증해봐야만 알 수 있습니다. 너무 과격한 얘기 아니냐고요? 아닙니다. 팩트는 원래 폭력적입니다.
3. 팩터의 성과를 상하위로 검증
어쨌거나 여러분이 검증하고자 하는 팩터를 선정했다면, 이제는 그 팩터의 유용성을 검증할 단계입니다.
이 팩터가 실제로 수익이 나는지 아니면 손실이 나는지, 수익이 나면 얼마나 잘 나는지, 손실이 발생하면 얼마나 큰 지 등의 기본적인 사항을 확인하는 단계입니다.
이 단계에서는 내가 선정한 팩터를 상/하위로 정렬하여 팩터의 성과를 검증하게 되는데요, 예를 들어, PER 이라는 대표적인 가치 투자 지표를 이용해서 성과를 검증하고자 한다면 PER이 낮은 30종목 vs PER 이 높은 30종목으로 포트폴리오를 구성하여 각각의 퍼포먼스를 비교해보면 됩니다.
보유기간은 넉넉하게 250일 과 같이 잡으면 됩니다.
이 때, 중요한 것은 세부적인 매수와 매도의 조건은 전혀 걸지 않아야 한다는 것입니다. '아니 전략의 성과를 향상시키려면, 매수와 매도 로직도 세부적으로 걸어야 되는 거 아닙니까?' 라고 질문할 수 있지만, 모든 것에는 다 단계가 있는 법입니다.
여러분이 생각하는 기똥찬 매수와 매도 로직까지 장착을 해버리면, 시뮬레이션 단계에서 내가 선정한 개별 팩터가 유용해서 수익이 잘 난 것인지, 아니면 여러분이 장착한 매수와 매도의 로직이 너무나 기똥차서 수익이 잘 난 것인지 전혀 알 수가 없기 때문입니다.
따라서, 처음 시작하는 단계에서는 매수와 매도의 구체적인 로직은 생략하고, 팩터 자체의 성과에만 집중하는 것이 중요합니다.
4. 보유 기간을 달리하여 테스트 (리밸런싱 주기 선정)
팩터의 기본적인 성과를 확인했다면, 이제는 리밸런싱 주기를 선정하는 단계입니다.
예를 들어, PER 하위 포트가 상위 포트보다 성과가 압도적으로 우월하게 나타났다면, 보유 기간을 조절하여 어느 정도의 기간을 가지고 리밸런싱 할 것인지 결정하는 단계입니다.
일반적으로 보유 기간이 길면 세금과 수수료를 절약할 수 있지만, 종목의 교체가 낮아지기 때문에 분산 효과를 누리기 어렵고, 충분한 수익 혹은 손실이 발생했을 때 얻을 수 있는 리밸런싱 효과에서 손해를 볼 수 있습니다.
어떤 종목이 짧은 기간에 급등을 하면 이후에 재차 하락할 수가 있는데 무작정 리밸런싱 기간을 너무 길게 잡으면 적절히 올랐을 때 의미있는 수준의 차익실현을 하기 어렵기 때문입니다.
따라서, 일반적인 퀀트 시뮬레이션에서 널리 쓰이는 방법은 월단위 리밸런싱 전략입니다. 1달에 1번 종목 전체를 교체하는 방법입니다.
일단위로 접근한다면 대략 20 거래일이 한 달에 해당되므로 1개월 혹은 20일 리밸런싱을 기본으로 이용하시면 되겠습니다.
5. 마켓 타이밍 적용
아무리 내가 짠 전략, 종목이 좋다고 하더라도 시장이 추세적으로 하락하거나 급락하는 구간에서는 전체 포트도 반드시 손실이 나게 되어 있습니다.
2008년 금융 위기, 2020년 코로나 사태와 같은 무시무시한 구간에서, '내가 선택한 종목들은 좋은 종목이니까 괜찮을거야' 라고 생각하실지 모르겠으나, 전혀 괜찮지 않습니다.
그것은 여러분의 희망 사항일 뿐입니다.
시장이 의미있게 하락하는 구간에서는 운이 좋아 들고 있는 종목 몇 개는 수익이 날 수 있겠지만, 전체 포트폴리오 단위로는 반드시 손실을 보게 되어 있습니다.
퀀트 전략을 장기로 유지하실 계획이라면 시장의 하락구간으로 접어들 때는 반드시 매수를 쉬고, 보유하고 있는 종목 전체를 청산했다가 장이 좋아질 때 다시 진입하는 마켓 타이밍 전략을 반드시 장착해야 합니다.
마켓 타이밍 조건의 목표는 손실이 전혀 없고, 실패가 전혀 없는 마법의 진입과 청산 시점을 찾으려는 것이 전혀 아니고, 예상치 못하게 진행할 수 있는 최악의 추세 하락 구간을 피하기 위한 비록 불완전하지만 반드시 필요한 타이밍을 설정하는 것입니다.
6. 필터링 조건 추가 / 매수, 매도 조건 최적화
마켓 타이밍 조건까지 장착하면 어느 정도 우상향하는 전략의 뼈대가 완성됩니다. 백테스트 수익 곡선을 봐도 약간 불안정한 구간이 보이지만, 안정적으로 우상향하는데는 큰 지장이 없기 때문에, 관상용으로 감상하기에도 뿌듯한 상황이 됩니다.
하지만 실전에 투자하려면 좀 더 정교하게 가다듬을 필요가 있기 때문에, 나쁜 종목을 걸러내고, 매수와 매도의 조건을 좀 더 정교하게 디자인하는 과정이 필요합니다.
단순한 우선 순위 조건만으로는 불량한 종목을 골라내기 힘들기 때문에, 기술적, 가치적, 재무적, 혹은 자신만의 기준에서 편입되어서는 안되는 종목들의 조건을 선정하여 필터링 아웃하여 안정성을 기하고, 수익을 극대화하기 위해 단순한 마켓 타이밍 조건에 부가하여 의미있는 매도 조건을 추가합니다. (의미있는 수준의 수익률 달성시, 의미있는 기술적 지표 조건 충족시 등)
이런 조건을 디자인할 때는 반드시 상식적이고 합리적인 논리에 근거를 두어야 합니다. 이 과정이 끝나고 백테스트에서 만족할 만한 성과를 확인한다면, 실전에 투입을 할 수 있게 되지요.
지금까지 간단하게 퀀트 전략을 어떻게 시뮬레이션 하는지 커다란 틀을 정리 해보았습니다.
'금융머니' 카테고리의 다른 글
[금융] 2023년 연말정산 안내 (원천징수 이행상황신고서) (31) | 2024.01.27 |
---|---|
[주식] 퀀트 전략의 기초 - 팩터 선정 (0) | 2023.10.18 |
[주식] 주식용어 PER (0) | 2023.08.30 |
[주식] Quant에 대해 (0) | 2023.08.27 |
[주식] 주식 용어 정리 1 (1) | 2023.08.26 |