파이썬 퀀트투자 쉽게하기 - 1. 들어가는 글
본문 바로가기
파이썬(Python)/퀀트투자

파이썬 퀀트투자 쉽게하기 - 1. 들어가는 글

by 만초손겸수익 2021. 11. 21.

퀀트투자는 참으로 매력적인 투자방법입니다.

 

일정한 기준으로 종목을 선별해서 일정한 기간 후에 기계적으로 매도하고, 다시 같은 방법으로 매수합니다. 이런 작업을 계속해서 반복하다 보면 복리의 힘까지 더해져서 자산이 기하급수적으로 늘어나게 됩니다.

 

차트를 보고 투자를 하거나, 재무제표를 꼼꼼히 읽어가며 가치투자를 하거나 일반인들에겐 어렵기는 매 한 가지 입니다. 그리고 저조한 수익률도 피해갈 수 없습니다.

 

퀀트투자는 백테스트를 통해서 10년 이상의 데이터로 미리 연습을 해 보고 나서 투자를 하니, 아무래도 다른 투자법보다 성공할 확률이 높아집니다.

 

또한 통계와 확률의 영역이기에 주관적인 생각을 배제할 수 있습니다. 그래서 인간의 감정에 의한 실수를 획기적으로 줄일 수 있습니다.

 

퀀트투자 백테스트 17년간 누적 수익률

위의 그림은 PBR과 배당을 이용한 17년 동안의 백테스트 누적 수익률입니다. 

 

왼족 테이블은 11월 초에 투자를 해서 1년 후에 매도하는 방법으로 17년 동안 테스트를 한 결과입니다. 원금이 86배 불어나 있는 것을 보여줍니다. 이렇듯 퀀트투자는 일반 비전문가가 접근해서 수익을 낼 수 있는 가장 합리적인 투자법인 것 같습니다.

 

위의 백테스트는 모든 경우의 수를 반영할 만큼 완벽하지는 않을거라 생각합니다. 실제 투자에서는 어느정도 차이가 있을 수는 있지만, 다른 논문이나 퀀트투자 서적에서 말 하듯이 다른 투자법과 비교해서 나름 만족할 만한 수익률은 기대할 수 있다고 생각합니다.


퀀트투자 방법은 어렵지는 않지만, 무작정 아무런 준비 없이 시작하기에는 무리가 있습니다. 제가 퀀트투자 백테스트를 하면서 힘들었던 부분입니다.

 

1. 백테스트

 

퀀트투자를 하기 위해서는 백테스트가 필수적입니다. 백테스트란 본인이 만든 전략으로 과거의 데이터를 이용해서 실제로 수익이 나는지 검증하는 작업입니다. 개인적인 경험으로 4~5년 정도의 백테스트는 큰 의미가 없는 것 같습니다. 최소한 10년 이상의 데이터로 검증해 보는 것이 좋을 것 같습니다.

 

백테스트 기간이 길어지면 그 만큼 많은 시간이 소요됩니다. 퀀트투자법은 대게 20~30개 종목을 동일비중으로 투자하기 때문에 일일이 선정하고, 결과를 확인하는 작업은 생각보다 지루하며, 많은 시간과 끈기가 필요할 수 도 있습니다.

 

 

2. 본인신뢰

 

조엘그린블란트가 쓴 '주식시장을 이기는 작은책' 을 읽고나서 마법의 공식을 구현한 적이 있습니다. 이때는 파이썬을 배우기 전이라 엑셀 VBA를 이용해서 백테스트도 하고, 실전으로 투자도 해 보았습니다.

 

11월에 2,000만원 500만원 을 투자해서 그 다음해에 매도했습니다. 각각 15%, 23%의 수익을 얻고나서 자신감을 얻었습니다. 바로 8,000만원 가량의 금액을 투자했지만, 수익이 나지 않았습니다. 

 

저는 1년 단위로 리밸런싱(매도를 하고 다시 종목선정 후 매수)을 하는데, 이 기간동안 혹시나 내가 한 백테스트에 오류가 있는게 아닌지, 알파가 이제 사라진건 아닌지 많은 걱정들이 밀려왔습니다. 그리고 특정해에 수익이 나지 않더라도 꾸준히 투자를 지속해야 하지만, 스스로에 대한 불신이 점점 커져서 투자법을 고수하기 힘들었습니다.

 

어떠한 투자법이든 원칙과 인내가 중요합니다. 충분치 않은 백테스트는 이 두가지를 무력화 시키는 것 같습니다. 

 

 

3. 인내

 

투자에서는 엉덩이 힘이 중요합니다. 아무리 좋은 아이디어로 투자를 시작하더라도 기다림의 인고를 견디지 못하면 수익으로 연결시키지 못합니다.

 

저는 1년 단위든 6개월 단위든 본인이 정해놓은 기간은 무조건 지켜야 합니다. 하지만, 이 부분이 개인적으로 가장 힘들다고 생각합니다.

 

계좌에 주식을 담고 잊어버리면 되는데, 계속 핸드폰으로 확인하게 됩니다. 포트폴리오 수익률이 떨어지면 본인의 전략이 잘못된 건 아닌지 걱정이 되고, 올라가면 혹시나 떨어질까 걱정이 됩니다. 결국 정신은 피폐해지고, 수익은 별볼일 없어지고, 이 투자법을 지속하지 못하게 됩니다.

 


제가 하고싶은 말

 

저는 이 블로그를 통해서 누구나 쉽게 퀀트투자를 할 수 있는 방법을 알려드릴려고 합니다. 막상 제 블로그의 포스트를 보시다 보면 "겨우 이거였어?" 하시는 분도 있을만큼 아주 쉽게 설명을 드릴 예정입니다.

 

위에서 1~3번까지 얘기한대로 퀀트투자법은 백테스트가 아주 중요합니다. 아무리 좋은 아이디어가 있어도 직접 백테스트를 하지 못하면 그 투자법을 지속하기가 힘들어집니다.

 

그래서 파이썬으로 간단하게 백테스트를 구현하는 방법 또한 알려드릴 예정입니다.

 

시중에는 이렇게 백테스트를 구현할 수 있는 프로그래밍 서비스가 있습니다. 당연히 제가 알려드릴 프로그램 보다 더욱 정교하고 잘 만들어 졌으리라 봅니다.

 

하지만, 백테스트를 직접 해 보시면 아시겠지만 많은 변수들이 발생합니다. 이런 변수들을 인지하고, 보완해 가면서 투자를 지속해야 하지만, 다른 사람이 만든 프로그램은 이런 것들이 애초에 불가능합니다.

 

선택은 항상 본인이 하시는 겁니다. 남이 만든 프로그램을 사용해서 시간을 아끼는 방법도 나쁘지는 않습니다. 그리고 이번 기회에 직접 프로그램을 만드는 것도 좋은 경험이 되리라 생각합니다.

 

마음의 준비가 되신 분들만 다음 포스트로 넘어가시기 바랍니다.

 

  

 

728x90
반응형

댓글