00:00:00근데 지난 뭐 10년이든 20년이든 30년이든
00:00:03그런 기간을 놓고 보았을 때
00:00:04그 기간 동안 수익성이 좋았던 패턴의 개수는 대략 몇 개나 될까요?
00:00:09답은 부안합니다. 실제로 증명도 가능해요.
00:00:12네, 안녕하세요. 월가재입니다.
00:00:21오늘은 퀀트 투자에 대해서 다뤄보겠습니다.
00:00:24이제 제 유튜브에 댓글이나 질문 이메일로
00:00:26이제 퀀트 매매에 대해서 알려달라는 분들이 계셨었는데
00:00:29제 향후 목표나 방향이라던가 채널의 커리큘럼상으로
00:00:33알고리즘 트레이딩이나 퀀트 매매에 대해서
00:00:36그렇게 근실 내에 다룰 생각은 없었어요.
00:00:38그런데 저희 채널분들 중에서도
00:00:40이제 15% 정도 되는 구독자분들이 퀀트 매매를 하신다고 하시고
00:00:44또 요즘 조금 퀀트 투자에 대해서 우려스러운 부분이 있어서
00:00:48이렇게 영상을 제작하게 되었습니다.
00:00:50그래서 오늘 다룰 목차는 먼저 퀀트의 분류나 원칙
00:00:53그런 부분에 대해서 개괄적으로 본 다음에
00:00:56퀀트 매매에서 조심해야 할 점 10가지를 다루겠습니다.
00:00:59이 10가지만 명심을 하셔도 크게 퀀트 매매를 통해서
00:01:04뭐 크나큰 시간 낭비를 하시거나
00:01:06아니면은 백테스팅이나 그런 방법론 면에서
00:01:09잘못된 방법으로 하는 바람에
00:01:11크나큰 손실이 나는 케이스는 예방할 수 있을 거라고 생각을 해요.
00:01:15이런 부분들이 사실 기본 중에 기본인데도 불구하고
00:01:18요즘 뭐 시중에서 되게 비싸게 팔리고 있는 유료 강의들에서도
00:01:21이런 부분들을 자세히 다루지 않는 것 같더라고요.
00:01:24오히려 그런 강의들은 그런 백테스팅이나 퀀트 투자나
00:01:27그런 부분들을 조금 더 미화하는 부분들이 있는 것 같은데
00:01:31오늘 이 10가지만 명심하시면은 퀀트 투자나 퀀트 매매 관련해서
00:01:35어떤 정보를 들으시든 어떤 서비스를 이용하시든 간에
00:01:39어느 정도는 조금 본인을 지키시고 안전하실 거라 생각합니다.
00:01:43좀 시작하기 전에 제가 사실 며칠 전에 조금 격앙된 어조로
00:01:47짧은 포스팅을 하나 했었는데
00:01:49제가 조금 실수를 한 것 같습니다.
00:01:51요새 퀀트 투자에 대한 바이럴 마케팅이나 과대 광고가
00:01:54도를 넘은 것 같다.
00:01:55그렇게 쓴 것인데 거기에 이제 댓글로 특정 사람이나
00:01:59특정 업체에 대한 그런 악플들이 몇몇 달리더라고요.
00:02:02그래서 뭐 그런 분들이나 업체에 신뢰가 될까 봐 삭제를 했었는데
00:02:06솔직히 뭐 어떤 그런 부분들이 불법 리딩방이라던가
00:02:09대여업체 같은 불법적이고 나쁜 일도 아닌데
00:02:12제가 조금 오지랍을 부리는 것일 수도 있다고 봐요.
00:02:16그런데 한편으로는 대여 계좌나 뭐 그런 문제들은
00:02:19그걸 이용하는 사람들도 불법인 거를 알면서
00:02:22솔직히 조금 욕심 때문에 들어가는 책임도 있거든요.
00:02:25근데 요즘 퀀트 투자에 대한 그런 담론들을 바라보면은
00:02:28이건 그냥 일반적인 사람들 그냥 열심히 뭔가 정당하게 노력하기 위해서
00:02:33재테크에 좀 더 노력해보자 해서
00:02:35퀀트 투자라는 분야에 입문하시는 분들에게
00:02:37좀 피해가 갈 수 있겠다는 생각이 들더라고요.
00:02:40왜냐하면 퀀트 투자라고 하면은 흔히 이제 인식이 과학과 통계라는 키워드가 섞여서
00:02:46사람들이 사실은 비과학적인 부분이 들어있는데도 오해할 수 있게 만드니까
00:02:51그래서 불법 리딩방, 대여 계좌는 누가 봐도 불법적인 거라서
00:02:55피하려면 피할 수가 있는데
00:02:56이거는 그냥 열심히 하려는 선량한 피해자가 생길 수 있겠다 싶더라고요.
00:03:01누구나 며칠만 하면 금방 퀀트 투자 고수가 될 수 있다거나
00:03:04아니면 이거는 뭐 수십 년의 데이터로 검증된 전략이라던가
00:03:08아니면 지난 10년 동안 20% 복리 수익 냈으니까
00:03:11앞으로도 그럴 거라는 뉘앙스로 이야기를 한다던가
00:03:14그런 것들의 의도가 악의적이지 않고 그냥 던지는 말일 수도 있지만
00:03:18많은 사람들 중에서 줄이니 분들
00:03:20누군가는 오해를 하고 착각을 해서
00:03:23그런 백테스팅에 많은 시간을 허비하고
00:03:25금전적인 손실까지도 낼 수가 있거든요.
00:03:27그 백테스팅 결과에 대해서 지나친 믿음을 가지고 약간 신념을 가지고 하면은
00:03:32그래서 미국 금감원 SEC 규정상은 펀드가 그런 식으로 고객한테
00:03:35마케팅을 하면은 그대로 불법으로 적발이 됩니다.
00:03:38그래서 퀀트 투자에 대해서 논하시는 분들이
00:03:41타인의 돈의 무게를 조금만 더 무겁게 느끼셨으면 좋겠어요.
00:03:45그래서 뭐 저도 언제까지 할지는 모르지만
00:03:47유튜브를 일단 하고 있는 입장에서 착한 척 하자고
00:03:51이런 이야기를 하는 게 아니고
00:03:52저도 20대 중반에 돈으로 되게 고생을 많이 해본 입장에서
00:03:56그게 어떤 기분인지 알거든요.
00:03:58그리고 제가 이제 손실에 대한 멘탈 관리 같은 것도 자주 다루고
00:04:01또 20대 중반에 많이 손실 받던 그런 경험이나 썰들을 풀어가지고
00:04:05저한테 유독 그런 상담들이 많이 들어오는 것 같긴 한데
00:04:09억대로 손실을 봐서 고민 상담을 이메일로 보내신 구독자분들이
00:04:14일주일에도 여러 통씩 매주 있어요.
00:04:16그래서 돈과 관련되는 재테크, 주식, 부동산 유튜버들은
00:04:20한 번쯤은 자기 건멸을 조금 해볼 필요도 있다 생각합니다.
00:04:24저도 요새 80일간의 투자 일주하면서
00:04:26아 이거 점점 제가 뭐 리딩을 하는 느낌이 들어가지고
00:04:29이번 하락장만 끝나면은 다시 초심으로 돌아가야겠다는 생각이 들더라고요.
00:04:33어쨌든 그런 취지에서 영상을 제작하게 되었는데
00:04:37결코 어떤 특정한 분이나 업체를 저격하려는 의도는 없고
00:04:40그런 퀀트 투자 마케팅 관련 분들도
00:04:43본인들이 모르시오 그러는 부분도 있으실 테고 하니까
00:04:46다 같이 힘내서 이런 부분들을 인지하고
00:04:49개선하자는 취지이니까
00:04:51시청자분들도 댓글에 누구누구 저격하든지
00:04:55뭐 그런 이야기는 하지 않으셨으면 좋겠습니다.
00:04:57그래서 서론이 길었는데
00:04:58우선 퀀트의 분류부터 좀 살펴보겠습니다.
00:05:01우선 퀀트는 되게 넓고 다양하게 정의되는 의미예요.
00:05:04그래서 대충 뭐 시간순으로 대략적으로
00:05:07편의상 구분을 해보면은 초고빈도 매매가 있고요.
00:05:10이건 하이프리컨시 트레이딩 중에서도
00:05:12울트라 HFT라고 하는데
00:05:14서버를 콜로케이션해서 거래소 쪽에다가 서버를 갖다 놓고
00:05:19기계어 레벨에서 코딩을 하고
00:05:20하드웨어 그런 부분에 신경쓰고
00:05:22뭐 그런 레벨의 매매들이고
00:05:24그 다음에 이제 그것보다는 조금 시간지평이 긴
00:05:28알고리즘 트레이딩
00:05:29뭐 이런 기술적 지표를 쓰든지 아니면 룰 베이스드를 쓰든지
00:05:33요건 이제 개인들도 좀 많이 하고
00:05:35요새 뭐 백테싱 플랫폼 요런 데서 많이 보편화되고 있는 부분이고요.
00:05:39그 다음에 이제 통계적 차익거래
00:05:41뭐 페어 트레이딩
00:05:42통계적 모델이나 기법이나
00:05:44그런 통계적 방법론을 사용해가지고
00:05:46결국 과거의 패턴을 찾아서
00:05:48평균 회기한다는 가정하에
00:05:50그런 매매를 하는 부분이 있고
00:05:52또 팩터 인베스팅이 있겠죠.
00:05:54요거는 조금 장기로 가면서 모멘텀 팩터, 가치 팩터, 캐리
00:05:59뭐 그렇게 가격을 움직이는 팩터를 찾아내고
00:06:01알파도 찾고 뭐 그렇게 하는 거고
00:06:03그 다음에 최근 몇 년간 이제 화두가 되고 있는 게
00:06:06퀀터멘탈이라고
00:06:07펀더멘탈 분석을 개량하고 자동화하고
00:06:10여러 가지 데이터 분석, 대안 데이터
00:06:12요런 것을 추가해서 장기 투자해보는 그런 방식이고
00:06:16그리고 같은 맥락에서 요런 기계 학습이나
00:06:18뭐 빅데이터, 대안 데이터 요런 것들이
00:06:20이제 여러 가지 분야로 확장이 되고 있습니다.
00:06:23그래서 요런 부분들은 뭐 편의상 구분하는 것이고
00:06:26뭐 경계가 되게 모호하죠?
00:06:28뭐 이 전체를 알고리즘 트레이딩이라고 하기도 하고
00:06:30뭐 그렇습니다.
00:06:31그래서 뭐 일반적인 퀀트 매매
00:06:33거기에 대해서 그냥 개발적으로
00:06:35다 뭉뚱그려서 다루도록 하겠습니다.
00:06:37그래서 이 퀀트 매매의 원칙은
00:06:40첫 번째는 투자 아이디어나 가설이 있어야겠죠?
00:06:42그 다음에 이제 백테스팅을 합니다.
00:06:44과거 데이터에 그런 투자 아이디어나
00:06:47그런 가설을 검증해보는 거죠.
00:06:50요렇게 하면 돈을 벌 수 있는 것 같은데
00:06:51그러면 과거 데이터에다가 과거에 요렇게 했을 때
00:06:54돈이 실제로 벌렸나
00:06:56그거를 검증해보는 거죠.
00:06:57그래서 백테스팅에서도 수익이 잘 나오면은
00:07:00실전 매매를 하고
00:07:01그러면서 이제 리스크 관리도 해주는
00:07:03요 네 가지로 이제 프로세스가 진행이 됩니다.
00:07:06그래서 사실 퀀트 매매는 2010년대 중반 정도까지만 해도
00:07:09사실상 어떤 기관들의 전유물 기관 중에서도
00:07:13그런 뭐 이공계 박사들이 있는 퀀트들이 있는
00:07:16그런 퀀트 펀드의 전유물이었는데
00:07:18점점 기관들에서도 이제 뭐 엑스큐션이나
00:07:21그런 면에서 보편화가 되고 있고
00:07:23그리고 또 미국에서 퀀토피안이나
00:07:25그런 백테스팅을 되게 쉽게 만들어주는 서비스가
00:07:28론칭을 하면서 일반 개인들도
00:07:30그런 퀀트 매매를 손쉽게 이용할 수 있게 되면서
00:07:33많이 보편화되고 있는 추세입니다.
00:07:35근데 그와 동시에 조금 잘못된 퀀트 투자의 이해도
00:07:38요새 점점 늘고 있는 것 같아서
00:07:40그런 예시를 한번 들어보면은
00:07:42뭐 예를 들어서 지난 15년 동안 PBR이 0.92하고
00:07:46지난 12개월간 상상 기업에 투자를 했더니
00:07:48연수익률이 20.2%가 나온다.
00:07:51그거를 PBR을 좀 바꿔보니까
00:07:53뭐 14%, 17.8%가 나온다.
00:07:56그래서 이제 백테스팅을 이렇게 쭉 해보니까
00:07:58이 첫 번째 결과가 가장 좋았기 때문에
00:08:01이 첫 번째 결과대로 이런 룰로
00:08:03투자를 하자
00:08:04요렇게 결론을 내리는 모습들 많이 보거든요.
00:08:07근데 이거는 사실은 잘못된 예라고 할 수 있습니다.
00:08:09여러분들이 곰곰이 생각해 보시면은
00:08:12백테스팅의 과정은 과거의 패턴이
00:08:14미래에도 반복될 것이라는
00:08:16그런 보장되지 않는 가정 하에
00:08:18과거의 수익성이 좋았던 패턴을 찾는 것이거든요.
00:08:21근데 지난 뭐 10년이든 20년이든 30년이든
00:08:24그런 기간을 놓고 보았을 때
00:08:26그 기간 동안 수익성이 좋았던 패턴의 개수는
00:08:29대략 몇 개나 될까요?
00:08:30한번 영상을 멈추시고 생각을 해보시면은
00:08:32답은 무한합니다.
00:08:34실제로 증명도 가능해요.
00:08:36여러 가지 전략들의 파라미터가 연속적이기 때문에
00:08:38사실상 무한한 개수의 그런 수익성 좋은 전략들이 존재를 합니다.
00:08:42근데 문제는 이 중 몇 개나 미래에도 수익성이 좋을까?
00:08:46이게 사실 그런 퀀트인 노른자위라고 볼 수도 있거든요.
00:08:50과거의 수익성 좋았던 패턴을 찾는 거는
00:08:52진짜 뭐 그런 백테스팅 툴이 있고 하면은
00:08:55아무나 찾을 수 있겠죠.
00:08:56근데 과거에도 좋았으면서 미래에도 좋은 거를 찾는 게
00:09:00사실은 엄청나게 어렵고
00:09:02소위 말하는 헛간에서 바늘 찾기거든요.
00:09:04그래서 제가 여러 가지 블로그나 사이트나
00:09:07이렇게 한국 사이트들을 둘러보니까
00:09:09이 조엘 그린블라트의 마법 공식이라는 게
00:09:12되게 유명하더라고요.
00:09:13이 사람이 굉장히 간단한
00:09:15그런 뭐 시가정액이나 그런 필터링을 통해서
00:09:17주식을 선정하는 그런 공식을 세워가지고
00:09:20이제 투자하는 그런 마법 공식을 책을 썼었는데
00:09:24그게 굉장히 화제가 돼서
00:09:25뭐 일반 개인 투자자들한테 많이 알려진 것 같은데
00:09:28근데 또 요분이 해지펀드기에서는 굉장히 유명하죠.
00:09:311980년대부터 이제 투자를 했는데
00:09:33그 투자한 기간 동안 워렌 버핏보다
00:09:35더 높은 수익률을 기록해가지고
00:09:37그래서 더 마법 공식이 이제 각광을 받은 것 같은데
00:09:40결론부터 말씀드리자면
00:09:42이 그린블라트는 퀀트가 아니고
00:09:44또 이 사람의 해지펀드는 마법 공식만으로 투자한 게 아니에요.
00:09:47그 좋은 수익률이 마법 공식으로 투자한 게 아닌 거죠.
00:09:50이 펀드는 같이 투자한 게
00:09:52스페셜 시추에이션 그런 인베스팅도 했었는데
00:09:54그거는 이제 뭐 스피노프 같은
00:09:57예를 들어서 어떤 회사와 분리된다든지
00:09:59그럴 때 이제 나오는 가게의 괴리라든지
00:10:01엣지 그런 부분들을 이제 포착해서 수익을 내는
00:10:04그런 방법론들이랑 같이 사용했거든요.
00:10:07그리고 가치 투자 파트도 이런 단순한 그런 공식을
00:10:10사용하지는 않았을 거라 생각합니다.
00:10:12물론 그 프레임에 반년 했겠죠.
00:10:14근데 그냥 기계적으로 이런 식으로 공식으로 딱 사서
00:10:18그렇게 내진 않았을 거라 생각하고요.
00:10:20그래서 이제 마법 공식을 공개된 이후에
00:10:222005년부터 수익을 한번 백테스팅 해보면은
00:10:26이 회색이 S&P 지수고
00:10:28이 초록색이 마법 공식이거든요.
00:10:29그래서 보시면은 그냥 변동성 높게 있다가
00:10:32그냥 계속 언더포폼을 했고
00:10:34이런 부분들은 뭐 시스테믹 에퀴티 ETF
00:10:37그러니까 이런 것들이랑 비슷한 투자들이 나오고
00:10:40시장이 좀 더 효율적이 되면서
00:10:42그런 엣지가 사라졌다고 볼 수도 있는데
00:10:44이렇게 유명한 공식도 이런 모습밖에 못 보이는 것에서 알 수 있듯이
00:10:48과거의 수익성 좋은 패턴을 찾는 건 매우 쉽습니다.
00:10:50그리고 그걸로 책을 쓸 수도 있어요.
00:10:53근데 미래에도 수익성이 좋을 패턴을 찾는 것은
00:10:56정말 정말 정말 엄청나게 많은 작업이 소요가 됩니다.
00:11:00그래서 며칠의 생각과 클릭 몇 번으로 나오는
00:11:03그런 연 20% 전략은 세상에 존재하지 않습니다.
00:11:06그리고 또 하나의 예는 퀀토피안이죠.
00:11:08퀀토피안은 이제 2011년 정도인가 만들어진 스타트업인데
00:11:12미국에서 이제 백테스팅을 되게 쉽게 만들어주는 그런 플랫폼이었어요.
00:11:16그래서 30만 명이 1200만 번의 백테스팅을 통해서
00:11:20엄청나게 많은 퀀트 전략들을 거기서 테스팅하고 만들어냈고
00:11:24유명한 이제 억만장자 스티브 코엔이 투자했는데
00:11:27그 해지펀드 트레이더죠.
00:11:29그리고 퀀토피안의 그런 탑티어 퀀트들이
00:11:32논문까지 출판해가면서
00:11:34이런 전략 중에 미래에도 수익성 좋을 전략을
00:11:37어떤 기준으로 어떤 그런 통계적 방법론으로
00:11:40출현해야 되는지
00:11:41그런 부분들을 진짜 집중적으로 연구를 많이 해서
00:11:44전략 선정을 해서
00:11:46그걸로 어떤 새로운 해지펀드를 굴려보자
00:11:48이런 발상이었는데
00:11:49처절하게 실패했습니다.
00:11:51결국은 작년에 문을 닫았고요.
00:11:53왜 이런 현상들이 벌어질까요?
00:11:55그리고 뭐 퀀트 매매, 퀀트 투자를 하시려는 시청자분께서는
00:11:58이런 결과를 이제 어떻게 하면 피할 수 있을까요?
00:12:02물론 완벽히 피할 수는 없겠죠.
00:12:03그리고 저는 상당히 어려운 작업이라 생각하는데
00:12:07그럼에도 불구하고 도전해 보시려면은
00:12:10최소한 이 10가지는 명심을 하시고
00:12:12조심을 하셨으면 좋겠다.
00:12:13그런 관점에서 하나씩 말씀드려보겠습니다.
00:12:16이 10가지만 명심해도
00:12:17백테스팅을 잘못해 가지고 시간 낭비하고 또 손실을 보고
00:12:22그런 거는 면할 수 있지 않을까 싶습니다.
00:12:24물론 백테스팅을 잘한다고 해서 수익 내는 보장은 없습니다.
00:12:27먼저 첫 번째는 데이터를 의심해 봐야 된다는 거예요.
00:12:31보면은 막 구글, 야후 데이터 이런 걸 쓰시는 분들도 있는데
00:12:34그런 데이터는 생각보다 굉장히 굉장히 더럽습니다.
00:12:37그래서 퀀트 트레이딩을 바닥부터 시작하려는 분들은
00:12:41정말 데이터에서 많은 태클이 들어와요.
00:12:45이런 무료 데이터는 되게 더럽고 오류도 많고
00:12:47그 다음에 데이터를 깨끗하게 만드는
00:12:50그런 데이터 클리닝 작업에는
00:12:51그냥 오류만 찾아내면 된다고 생각하실 수도 있는데
00:12:54생각보다 사람의 주관적인 판단이랑
00:12:57편향도 들어가기 마련이에요.
00:12:59예를 하나 들어보겠습니다.
00:13:01어떤 주식이 41에서 43불대에서 매매가 되다가
00:13:05마감을 했어요.
00:13:06근데 장마감 즈음에서
00:13:08어떤 트레이더 한 명이 주문 실수를 해가지고
00:13:1128달러의 일주가 체결되어 버렸습니다.
00:13:14그러면 엄밀히 말하면은
00:13:16그날 저점은 28달러죠.
00:13:1828달러에서 이 사람은 실수해서 큰 손해를 받지만
00:13:21어쨌든 저점이 28달러로 찍혀야 되잖아요.
00:13:24그게 사실이잖아요.
00:13:25그럼 저점 고점을 어떻게 설정할 것인지
00:13:28이걸 없애고 그냥 41을 저점으로 찍는 것도
00:13:31사실은 실제로 존재하는 트레이드
00:13:34실제 저점을 삭제하는 거잖아요.
00:13:36근데 이걸 없애지 않으면은
00:13:38예를 들어서 그날 범위에서
00:13:405% 이하로 5분 내에 급락을 하면은
00:13:44매수 주문을 넣는
00:13:45그런 전략을 백테스팅하게 되면은
00:13:4728불에서 매수를 했다고
00:13:48그 백테스팅이 인식을 할 수도 있겠죠.
00:13:51그러면은 나는 28불에 사가지고
00:13:53종가 42불에
00:13:55바로 판 걸로 백테스팅이 인식을 하면서
00:13:58이 전략의 그런 수익이
00:13:59엄청나게 뻥튀기 될 수도 있겠죠.
00:14:01근데 물론 1주니까 삭제할 수 있는데
00:14:03예를 들어서 이 트레이더의 주문 실수가
00:14:0610주라면, 100주라면, 아니면 만주라면
00:14:09실제로 그런 케이스들 있습니다.
00:14:11그런 케이스들이 종종 몇 번 일어나고요.
00:14:14진짜 대규모 그런 수백억 날리는
00:14:17그런 케이스도 실제로 있긴 했지만
00:14:20요런 뭐 100주, 1000주
00:14:21요런 실수들은 생각보다 잦아요.
00:14:23물론 최근 몇 년은
00:14:24그런 알고리즘들이
00:14:25엑스큐션을 하게 되면서
00:14:27그런 안전망도 갖춰지고 해서
00:14:29옛날보다는 그렇게 자주는 아니지만
00:14:31어쨌든 백테스팅 데이터는
00:14:33그런 알고리즘 엑스큐션이 되기 이전 데이터
00:14:36뭐 2011년, 2005년
00:14:37그렇게까지 뒤로 가게 되면은
00:14:39요런 케이스들이 심심치 않게 보이거든요.
00:14:41그럼 그것을 어떻게 처리할 것이냐.
00:14:43그리고 여러 거래소에서
00:14:44매매된 상품들이 있습니다.
00:14:45그런 상품들일 경우에는
00:14:47그런 여러 가지 거래소의 데이터가
00:14:49통합이 돼서
00:14:50뭐 저점, 고점이라든지
00:14:52매매 데이터 거래량 이런 것이
00:14:53잘 클린하게 통합이 된 데이터인지
00:14:56아니면은
00:14:57몇 개 거래소 데이터만 받아와서
00:14:59약간 불완전한 매매 데이터로
00:15:01백테스팅을 하고 있는지
00:15:02데이터 비용이 싸면은
00:15:04고를 가능성이 있거든요.
00:15:05그리고 MDD를 계산할 때
00:15:07종가 아닌 저가 기준으로 하는지
00:15:09예를 들어서 뭐 월별로
00:15:11리발란싱하는 전략 같은 것을
00:15:13백테스팅 할 때는
00:15:141단위 데이터를 쓰면서
00:15:15그냥 종가를 쓰는 경우도 있습니다.
00:15:17근데 사실은
00:15:18그런 드로우다운을 계산하려면은
00:15:20인트라데이 드로우다운도
00:15:21봐야 되잖아요.
00:15:22그런 사소한 부분들
00:15:24혹은 선물로 백테스팅 할 때
00:15:26만기가 있는 상품이면은
00:15:27어떻게 이걸 롤러오버 하는지
00:15:29혹은 백테스팅 같은 경우에는
00:15:31연속적인 그런 선물 만기들 이어서
00:15:33데이터를 만들어서
00:15:34백테스팅을 하는데
00:15:35그 만기 롤러오버를
00:15:37어떻게 취급할 것인지
00:15:38그런 문제들
00:15:39이런 문제들 이외에도 굉장히 많습니다.
00:15:40근데 이런 데이터 문제에 대해서
00:15:42고민을 해보셨는지
00:15:44아니면 어디 뭐 백테스팅 서비스를 사용하신다면은
00:15:47그냥 그 업체의 데이터를 잘 했겠거니 하고 믿을 것인지
00:15:51그런 부분들을 확인할 필요가 있는데
00:15:53생각보다 데이터 문제에서 정말 많은 오류가 발생하고
00:15:57백테스팅 그런 결과가
00:15:59왜곡이 되는 경우가 많습니다.
00:16:01그 외에도 이제 데이터에서 오는 문제 하나가 뭐냐면은
00:16:04생존자 편향입니다.
00:16:06백테스팅에서 대표적인 오류 중에 하나고요.
00:16:08요 그림이 뭐냐면은
00:16:101차 세계대전인지 2차인지는 잘 모르겠는데
00:16:12이제 공군에서 이제 비행기들을 보강을 하려고 합니다.
00:16:16갑판을 어디를 조금
00:16:18그런 방어막을 더 굳게 만들어야 되는지
00:16:20그걸 파악하기 위해서
00:16:21이제 엔지니어들이 공중전을 치르고
00:16:24이제 복귀한 그 비행기들을 다 모아가지고
00:16:26어디에 총을 제일 많이 만나
00:16:28그거를 이제 파악했습니다.
00:16:29그래서 아 이런 부분에 제일 총을 많이 맞는구나
00:16:33그래서 이런 부분을 이제
00:16:34철판을 더 두껍게 만들든지
00:16:36뭐 그렇게 하자 결론을 내렸는데
00:16:38이게 어마어마한 잘못이죠.
00:16:40왜냐하면 실제로 이런 부분
00:16:42이런 부분
00:16:42아니면 요런 부분들
00:16:44거기에 피격당한 비행기들은
00:16:46다 추락해서 복귀를 하지 못했거든요.
00:16:49그래서 주어진 데이터로
00:16:50결론 내리는 게 얼마나 위험한지
00:16:52그걸 잘 보여주는 예신데
00:16:54이제 주식투자에서 생존자 편향이라고 하면은
00:16:56예를 들어서
00:16:57아 지금 보면은
00:16:5980년대 애플과 마이크로소프트를 샀으면은
00:17:02정말 대박이 낫겠다
00:17:03이렇게 생각을 해서
00:17:05그런 뭐 테크 주식들을 사는 전략을 수립을 한다고 해봅시다.
00:17:08근데 실제로 80년대 그 당시에
00:17:10애플이나 마소급으로 유망한 회사들은
00:17:13당시에 30개가 넘었어요.
00:17:14그리고 그 중에 28개는 사라진 거죠.
00:17:17그래서 단 2개밖에 살아남지 못했습니다.
00:17:19그래서 이 둘밖에 살아남지 못했는데
00:17:22이 둘을 바라보면서
00:17:23아 그렇게 지금 투자하면 대박 나겠다 생각하는 거죠.
00:17:27그래서 이런 식으로 현재 생존에 있는 회사들로만
00:17:30백테스팅 대상으로 삼아서
00:17:32백테스팅을 하면은 수익률이 뻥튀기 될 수밖에 없습니다.
00:17:35그리고 이건 당연히 백테스팅 기간이 길면 길수록
00:17:38더 큰 문제가 되겠죠.
00:17:40왜냐면 그 긴 기간 동안에
00:17:41분명히 그 초기에는 있었는데
00:17:43사라져버린 회사들이 많을 테니까
00:17:45근데 생각보다 많은 주린이 분들이
00:17:47요런 백테스팅을 시작할 때
00:17:48처음에 그런 스탁 유니버스를 정하잖아요.
00:17:51그런 어떤 주식들에 대해서 백테스팅을 할 것인지
00:17:54그 범주를 정할 때
00:17:55현재 존재하는 회사들로 구성을 해요.
00:17:58그래서 그 안에서
00:17:59이제 뭐 여러 가지 잣대로 백테스팅을 해서
00:18:02어떤 식으로 이제 좋은 회사를 그 중에서 고를 것인지
00:18:05요렇게 판단을 하는데
00:18:07그렇게 하게 되면은
00:18:08그 백테스팅 기간부터 지금까지
00:18:11파산한 회사들은 다 제외가 되거든요.
00:18:13그런 신급의 능력이 나한테 존재한다고
00:18:16가정을 한 채로 백테스팅이 되는 거죠.
00:18:18그러면 수익률은 당연히 실제보다 뻥튀기가 되겠죠.
00:18:21그래서 백테스팅 할 때는
00:18:23백테스팅이 뭐 20년 지면은
00:18:252001년 기준으로 존재했던 회사들을 상대로
00:18:29시작을 해가지고
00:18:30그 범주를 범주 삼아야 된다.
00:18:32그런 말씀을 드리고
00:18:33여담인데
00:18:34유튜브에 나오는 그런 슈퍼 개미들도
00:18:37생존자 편향 문제가 조금 있을 가능성도 있습니다.
00:18:40되게 실력으로 슈퍼 개미된 분들도 계시겠지만
00:18:43굉장히 큰 리스크를 져가지고
00:18:45어떤 한 주식에 엄청나게 큰 지분을 샀는데
00:18:48그게 터져가지고
00:18:49이제 슈퍼 개미가 됐는데
00:18:51그런 행동을 한 그런 분들이
00:18:5330명, 50명이 더 있었던 거죠.
00:18:55근데 그렇게 리스크가 높은 행동을 한 50명 중에서
00:18:58한 명이 살아남았고
00:18:59시청자들은 그 사람을 바라보고 있는 것일 수도 있겠죠.
00:19:02근데 이것도 어쩌면은 생존자 편향 문제일 수도 있다.
00:19:05그래서 지금 시점에서
00:19:06나도 저렇게 돼야지 하면서
00:19:08엄청나게 리스크 큰 그런 투자를 하게 되면은
00:19:11확정적으로 그렇게 되는 게 아니고
00:19:1350명 중에 한 명이 운 좋게 되어야만 그렇게 된다는 거.
00:19:17그래서 이런 편향들을 인지하고 있는 것만으로도
00:19:20되게 합리적이고 현명한 투자를 할 수가 있다.
00:19:22그래서 백테스팅 플랫폼을 사용할 때는
00:19:24아까 전에 말씀드렸던 그런 데이터 문제라든지
00:19:27아니면 생존자 편향 문제를
00:19:28전부 다 그냥 해당 업체에 위임한다고 보시면 돼요.
00:19:31나이브하게.
00:19:32근데 과연 그 업체가
00:19:33요런 부분들이나 아까 데이터 문제를
00:19:35정말 정말 엄밀하게
00:19:37그런 유저들의 입장에서 유저들의 수익률을
00:19:39실전 수익률을 걱정하면서
00:19:41많은 자본을 투입해가지고
00:19:43데이터를 깨끗하게 만들고 했을까.
00:19:45그런 부분들을 반드시 확인해 봐야 되는 거죠.
00:19:48그 다음에 이제 두 번째 조심해야 될 점은
00:19:50루커헤드 바이어스라고
00:19:52미래를 먼저 바라보지 말라는 것.
00:19:54루커헤드 바이어스를 대충 이름 붙이자면은
00:19:57미래 선지 편향?
00:19:58뭐 그렇게 해석할 수도 있는데
00:20:00매매 시점에서는 아직 획득할 수 없는 정보가
00:20:03백테스팅은 과거 데이터로 하잖아요.
00:20:05그래서 그런 시점상으로는
00:20:07이 작년에는 없었는 정본데
00:20:09작년 시점에 매매에 그 정보를 참고해서
00:20:12매매하도록 로직을 짜둔 경우가
00:20:14심심치 않게 발견이 됩니다.
00:20:15그거를 이제 루커헤드 바이어스라고 하고요.
00:20:18요런 예중에서 대표적인 실수 중에 하나는
00:20:21예를 들어서 이번 달 2021년 9월 기준으로
00:20:24모든 한국 주식들을 다 백테스팅하기 힘드니까
00:20:27뭐 100개만 하자.
00:20:29그렇게 뭐 유저가 생각을 하는 거죠.
00:20:30그래서 코스피 시가 총액 상위 100위를 추려가지고
00:20:34요걸로 이제 백테스팅을 합니다.
00:20:35뭐 PER이 뭐 어떠면은 사는 전략.
00:20:38그렇게 뭐 해가지고
00:20:3910년간 백테스팅을 했더니
00:20:41수익률이 매우 좋아요.
00:20:42근데 뭐가 잘못했을까요?
00:20:44지금 2021년 9월 기준으로 코스피 시가 총액이 상위 100위를 추렸죠.
00:20:50그 종목들만 추렸는데
00:20:51지금 10년 지 백테스팅을 하면 2011년 기준으로
00:20:552021년에 무엇이 상위 100위 안에 들어가 있을지를
00:20:59미리 알고 하는 거나 마찬가지죠.
00:21:01시가 총액 상위라는 것은 사실은
00:21:03그 주식 가격이 계속 꾸준히 올라왔다는 뜻이니까.
00:21:06근데 사람들이 요런 부분들은 뭐 신경 써도
00:21:08은근히 뭐 시가 총액으로 끊어가지고
00:21:11몇백 개만 하자.
00:21:12뭐 요렇게 생각하는 부분에 있어서
00:21:14되게 실수를 많이 하거든요.
00:21:15그리고 또 한 가지 얘는
00:21:17기업의 뭐 재무제표 펀더멘탈 실적 데이터로 백테스팅을 할 때
00:21:21매 분기별로 각 기업들이 실적 발표
00:21:24그런 거를 하는 날짜들이 다 다르잖아요.
00:21:26근데 그 각 기업들이 실적 발표를 하고 나서
00:21:29그 이후에 뭐 리밸런싱이라든지
00:21:31하여튼 매매가 이루어지는지
00:21:33그 다음 달 초에야 이 기업은 이제 실적 발표를 했는데
00:21:36요 정보를 안 채로 요 며칠 전에 월말이라서
00:21:40리밸런싱을 한 거죠.
00:21:41미래를 이미 알고 이때 매매를 하게 되는 거죠.
00:21:44고런 것들이 백테스팅에 섞일 수가 있습니다.
00:21:46그리고 또 한 가지 예시는
00:21:48예를 들어서 종가 기준으로 뭔가를 매매한다.
00:21:50그렇게 가정을 하고
00:21:52이제 데일리 뭐 리밸런싱을 하는데
00:21:54종가라는 것은 그 하루가 끝나봐야 아는 정보죠.
00:21:57근데 뭐 주문은 시장이 끝나기
00:22:005분 전에 체결을 하도록 백테스팅을 한다든지
00:22:03고런 식으로 하면서 이제 시간대에서
00:22:05그런 미래를 미리 알아버리는
00:22:07그런 편향이 생길 수도 있겠죠.
00:22:09그 다음 이제 세 번째가 매우 매우 중요합니다.
00:22:11과체적화를 피하는 거.
00:22:13아무리 강조해도 지나치지 않은 그런 부분인데
00:22:16과체적화는 뭐냐면은
00:22:18주어진 샘플 데이터에만
00:22:19지나치게 성능이 좋도록 모델을 만드는 거예요.
00:22:23예를 들어서 지금 샘플이 요렇게 있습니다.
00:22:25그럼 우리가 알고 싶은 거는
00:22:27이 뒤에 있는 그런 모집단이죠.
00:22:29실제 전체적인 그런 모집단을
00:22:32우리가 추정을 하고 싶은데
00:22:34혹시 뭐 모집단이 모르신 분들도 계실까봐
00:22:36짧게 설명을 드리자면은
00:22:38우리가 뭐 선거 결과에 대해서
00:22:40여론조사를 한다.
00:22:41근데 전국민을 대상으로 조사를 하면은
00:22:44그게 완벽한 어떤 여론조사가 되겠죠.
00:22:46정확도가 100%인.
00:22:48근데 전국민한테 할 수가 없으니까
00:22:50전국민 중에서 샘플을 뽑습니다.
00:22:53일부 인구만 뽑아가지고 그 샘플이 그 뒤에 있는 모집단을 대표한다.
00:22:58대표성이 있다.
00:22:59가정을 하고 그걸로 이제 추정을 하죠.
00:23:02그래서 요런 데이터도 실제로 그런 뒤에 있는 그런 모집단 데이터는
00:23:06뭐 이렇게 분포가 돼 있을 거고
00:23:08그 중에서 몇 개 이렇게 샘플들을 뽑아가지고
00:23:10샘플들로 요 뒤에 모집단이 어떻게 어떤 모양일까 추정을 해보는 거겠죠.
00:23:16그래서 그 모양에 맞게 모델을 이제 피팅을 하려고 하는 모습인데
00:23:20근데 모델을 피팅한다는 거는
00:23:22지금 이 샘플이랑 요 모델 추세선이랑
00:23:25요 오차가 최소한이 되는 그런 선을 찾아야 되거든요.
00:23:30요런 선들이.
00:23:30근데 지금 보시면 이렇게 엄청나게 꼬불꼬불한
00:23:34그런 복잡한 모델을 피팅을 하면은
00:23:37이 샘플 데이터 상으로는 오차가 제로죠.
00:23:39모든 샘플에 닿고 있습니다.
00:23:41그래서 이 샘플에는 완벽히 오차 없는
00:23:44오차 제로의 그런 모델이에요.
00:23:47근데 실제로 이게 뒤에 있는 모집단을 잘 표현하는 모델일까요?
00:23:51아니겠죠?
00:23:51새로운 샘플을 뽑아보면은 이 오차가 되게 크겠죠.
00:23:54그래서 요렇게 적당히 피팅을 해야지
00:23:58새로운 샘플들이 들어왔을 때
00:24:00요 오차가 어쨌든 되게 그 합이 적습니다.
00:24:03반면에 이거는 너무 단순한 직선을
00:24:06요렇게 피팅을 해버리면은
00:24:08언더핏 최적화가 덜 됐다.
00:24:10그래서 그냥 샘플 상으로도 오차가 그냥 커버리는 거죠.
00:24:13그래서 어떤 모델링에서 제일 중요한 게
00:24:16요렇게 적당히 최적화를 하는 것인데
00:24:18많은 분들이 백테스팅을 하실 때
00:24:20과거 데이터, 과거 데이터 어떻게 보면 샘플 데이터죠.
00:24:24그 샘플 데이터에 이런 식으로
00:24:26그냥 그 샘플 안에서 수익률이 그냥 극대화되도록
00:24:29온갖 그런 규칙을 집어넣어가지고
00:24:32수익률을 그냥 최대한 높여놓는다는 거죠.
00:24:35예를 들어서 2015년부터 2021년의 데이터의 백테스팅을 해보니까
00:24:39PER이 13.75 이상, 17.23 이하이고
00:24:43시가총액이 517억 이상, 623억 이하
00:24:46PBR은 1.17이 이하인 주식을 사면은
00:24:50연 70% 수익이 가능하다.
00:24:52요런 백테스팅 결과 나왔어요.
00:24:54이거는 딱 보셔도 완전히 오버피팅을 한 거죠.
00:24:57과체적화를 한 거죠.
00:24:58막 PER이 17.24인 기업인데 되게 수익성이 나빴던 그런 주식이
00:25:04이 데이터에 끼어 있었다든지
00:25:05아니면 시가총액이 막 515억이었는데
00:25:09되게 나쁜 그런 예여서 요렇게 정했다든지
00:25:12막 그런 식으로 되게 세밀하게 그냥 그 샘플 데이터, 과거 데이터만 보고
00:25:16어떻게든 수익률을 극대화하려고 하다 보면은
00:25:19요런 식의 모델이 나오고
00:25:21그러면 미래에 실제로 그 분포에서 그런 데이터가 나오면은
00:25:25오차 범위가 커진다.
00:25:27그런 이야기인데
00:25:28조금 더 자세히 보도록 하겠습니다.
00:25:29요것도 과체적화의 예죠.
00:25:31빨간색과 파란색을 잘 나누는
00:25:34그런 어떤 선을 배우려고 합니다.
00:25:36그런 선의 모델.
00:25:37근데 지금 이 까만색은 딱 적당하게 배웠는데
00:25:40초록색 꾸불꾸불한 거는
00:25:42지금 보이시는 파란색과 빨간색 그 점 기준으로는
00:25:46완벽하게 나눴죠.
00:25:48그래서 요 샘플 데이터 상으로는
00:25:50오차가 제로인 완벽한 선이지만
00:25:52실제로 뒤에 있는 모집단은
00:25:55뭐 파란색이 대충 여기서 막 나오고
00:25:57빨간색은 막 여기서 이제 막 나오면은
00:25:59실제 미래에 새로 그런 데이터가 들어오면은
00:26:03이 초록색 선은 오차가 되게 많을 거다.
00:26:05그렇게 추측할 수 있겠죠.
00:26:07그래서 과거 데이터에 너무 상색이 끼워 맞추면은
00:26:10미래에는 적용이 안 된다.
00:26:11이것도 뭐 비슷한 예인데
00:26:13재학 중이던 학생 100명의 인적 사항에 대한
00:26:15상세한 데이터를 수집했다.
00:26:16이를 토대로 올해 재학 중인 학생 100명 중에
00:26:19성적이 좋을 학생을 판별해라.
00:26:20그럼 막 이렇게 뭐 성의 정시고
00:26:22키는 요사이고
00:26:23막 그렇게 작년의 상위권 학생들의 데이터에
00:26:26지나치게 막 최적화시켜서
00:26:28그런 판별 규칙을 정하면은
00:26:30올해 재학 중인 학생한테 이걸 적용해버리면은
00:26:32진짜 얼토당토 안 할 수가 있다는 거죠.
00:26:34그냥 뭐 공부 시간이 몇 시간 이상인 학생들로
00:26:37이제 판별 규칙을 정하면은
00:26:39작년 재학 중이던 학생들의 데이터에 끼워보면은
00:26:42요렇게 세세한 것보다는
00:26:44정확도가 낮을 수 있어요.
00:26:45근데 정확도는 조금 낮지만
00:26:47실제로 올해 재학 중인 학생한테 해도
00:26:49여전히 정확도가 그만큼 괜찮을 확률이 높은 거죠.
00:26:53그러면은 이런 과체적화 문제를 어떻게 하면 완화할 수 있을까요?
00:26:56모든 백테스팅은 어느 정도는 과체적화 문제를 가지고 있고
00:27:00완전히 제거하는 건 불가능해요.
00:27:01그래서 뭐 예를 들어서 지난 5년치 데이터에 백테스팅한 전략의 수익률이
00:27:06향후 미래에 3년간 유효할지 어떻게 알까?
00:27:08그 질문에 대해서 완벽한 답은
00:27:11그냥 3년간 매매해 보는 거겠죠?
00:27:12근데 이거는 사후적인 거라서
00:27:153년간 매매했는데 손실 나오고 하면은
00:27:17무의미하겠죠?
00:27:17그래서 한 가지 방법은
00:27:19Out of Sample Data라고
00:27:21샘플 외의 데이터를 이용하는 것이에요.
00:27:23뭐 이건 제가 번역이 맞는지 모르겠는데
00:27:25보통 OOS 데이터라고 하거든요.
00:27:27그래서 예를 들어서
00:27:282015년 9월부터 2021년 9월
00:27:31그러니까 6년치 데이터에서
00:27:33수익률 좋은 전략을 찾아서
00:27:342021년 10월부터 매매하는 거는 별로겠죠?
00:27:38이렇게 하는 게 아니고
00:27:392014년 9월부터 2020년 9월까지
00:27:426년 데이터를 써가지고
00:27:44수익률 좋은 전략을 찾은 다음에
00:27:46그거를 이제 2020년 10월부터
00:27:492021년 9월에 백테스팅을 한 번 더 해보는 거죠.
00:27:52그러니까 2014년부터 6년간의 데이터에서
00:27:55백테스팅하면서 수익률 좋은 걸 찾은 다음에
00:27:57그거를 2020년 10월부터 실제로 매매해 본다고 상상을 하고
00:28:021년 동안 백테스팅을 해보는 거예요.
00:28:04그래서 그 결과가 좋으면은
00:28:062021년 10월부터 실전 매매를 하는 거죠.
00:28:09근데 물론 이렇게 나누면은
00:28:10또 다른 문제가 생기긴 하는데
00:28:12조금 이따 그거는 다루도록 하고
00:28:13지금 이제 전하고자 하는 부분은
00:28:16샘플 데이터가 이만큼 있으면은
00:28:18요만큼을 따로 떼 놓는 거죠.
00:28:19따로 떼 놓고
00:28:21요만큼 데이터에서 열심히 전략을 찾고
00:28:23백테스팅을 많이 하고
00:28:24여기에다 최적화를 해본 다음에
00:28:26바로 실전 투입하는 것이 아니고
00:28:28요렇게 이제 전략 찾는데
00:28:30쓰지 않았던 데이터에다가
00:28:31자 이제 실전이다 상상하고
00:28:33여기 써보는 거죠.
00:28:34그게 이제 샘플 웨 데이터
00:28:35OOS 데이터를 이용하는 것이라 하고요.
00:28:38뭐 데이터 과학에서는
00:28:39학습 데이터, 검증 데이터,
00:28:41트레인 데이터, 테스트 데이터,
00:28:42아니면 디벨로먼 데이터
00:28:44뭐 그런 용어들은
00:28:45굳이 뭐 중요하진 않고
00:28:46그래서 4번은 3번에서 이어지는데
00:28:48검증 기회는 단 한 번뿐이다.
00:28:50요게 굉장히 굉장히 굉장히 중요합니다.
00:28:53진짜 아무리 강조해도 부족함이 없는
00:28:58정말 정말 중요한 어떤 문장인데
00:29:01요 샘플 웨 데이터 테스팅에 대해서
00:29:03좀 더 다뤄보도록 하겠습니다.
00:29:04이제 샘플 데이터와 샘플 웨 데이터
00:29:06그러니까 뭐 다양한 명칭이 있는데
00:29:08이제 이 영상에서는
00:29:09학습 데이터, 검증 데이터로
00:29:11통일을 하겠습니다.
00:29:12아까 전 예시에서 보시면
00:29:132014년부터 2020년까지
00:29:16데이터는 학습 데이터
00:29:18그러니까 학습 데이터는
00:29:19전략을 찾는 데 쓰인 데이터
00:29:20그 다음 전략을 찾고 나서
00:29:22요거를 이제 검증해 보는 거
00:29:24그 마지막에 이제 1년 동안
00:29:26그 데이터 백댄싱 한 거를
00:29:28검증 데이터 그렇게 그냥 부를게요.
00:29:30그래서 지금 이 그래프는 뭐냐면
00:29:32규칙이나 모델이 얼마나 복잡한지
00:29:35오른쪽으로 갈수록
00:29:36정말 정말 더 복잡한 모델인 거죠.
00:29:38그러니까 뭐 173cm부터
00:29:40173.25cm
00:29:42이런 식으로 아까 규칙을 정하고
00:29:44그렇게 하면 할수록
00:29:45이제 복잡도가 올라가고요.
00:29:47그 다음 이거는 예측 오류
00:29:49그러니까 실전에 투입해 봤을 때
00:29:50오차가 얼마나 큰지
00:29:52그건데 보시면은
00:29:53트레이닝 샘플
00:29:54그러니까 학습 데이터에서는
00:29:55복잡한 모델을 쓰면 쓸수록
00:29:58오차가 줄어듭니다.
00:29:59아까 전에 막 이렇게 이제 샘플들이 있는데
00:30:02막 이렇게 꼬불꼬불 해서
00:30:03막 복잡하게 할수록
00:30:05요 샘플 데이터 안에서는
00:30:06오차를 제로로 없앨 수 있었죠.
00:30:08그래서 모델을 엄청나게 복잡하게 하면 할수록
00:30:12오차는 0의 수렴에 가고요.
00:30:14그런데 그렇게 학습한 모델을
00:30:16이제 따로 떼둔 그런 검증 데이터로
00:30:18한번 시험을 해보면은
00:30:19오차가 얼마나 나오느냐.
00:30:21처음에 모델이 굉장히 단순한
00:30:23뭐 직선이라든지
00:30:24되게 언더피팅을 했을 때는
00:30:26오차가 비슷하게 나옵니다.
00:30:28그런데 모델이나 규칙이 점점 복잡해지면 복잡해질수록
00:30:31지금 요 학습 데이터 상의 샘플에서는
00:30:33오차가 계속 줄어드는데
00:30:35이 검증 데이터에서는
00:30:37바닥을 찍고 지나치게 복잡해지기 시작하는 시점부터
00:30:40오차가 더 늘게 돼요.
00:30:42그래서 뭐 투자해서 백테스팅으로 비유를 하자면은
00:30:45굉장히 백테스팅을 막 많이 돌리고
00:30:47이것저것 되게 세세한 그런 규칙들을 정하고
00:30:51많이 백테스팅 해보고
00:30:52그러면서 막 되게 세밀하게
00:30:55그런 뭐 파라미터 같은 거
00:30:56PER 값을 얼마 이상으로 해야 된다.
00:30:59그런 것들을 세세하게 복잡하게 만들을수록
00:31:02그 과거 데이터 상의 수익률은 점점점 올라갑니다.
00:31:05이건 지금 오차 그래프니까 낮을수록 좋은 거죠.
00:31:08그러니까 어쨌든 과거 데이터에 되게 끼워 맞춤 백테스팅은
00:31:12끼워 맞춤 맞출수록 점점 수익률이 좋아지는데
00:31:15이걸 실전에 적용했을 때는
00:31:17이렇게 지나치게 복잡하게 하면
00:31:18어느 순간부터는 복잡한 복잡한 룰일수록
00:31:21실전상에서의 수익률은 낮아진다.
00:31:23이렇게 되는 거죠.
00:31:24근데 지금 제가 오차가 낮아지는 것을
00:31:26수익률이 좋아진다.
00:31:28오차가 높아지는 것을 수익률이 나빠진다.
00:31:31이렇게 표현을 했는데
00:31:32엄밀히 말하자면은
00:31:33오차가 커진다는 것은
00:31:34수익률이 낮아진다는 것과는 살짝 달라요.
00:31:37그러니까 백테스팅을 막 엉망으로 하고
00:31:39엄청 오버피팅을 하면 할수록
00:31:42백테스팅 수익률과 미래 수익률 사이의 격차가
00:31:45오차가 커진다는 것이지
00:31:47그 오차가 오히려 무작위적으로
00:31:49더 높을 수도
00:31:50더 나질 수도 있겠죠.
00:31:51근데 일반적으로 그렇게 오차가 나면은
00:31:53실전 수익률이 더 나쁘게 됩니다.
00:31:55왜냐하면은 과거 데이터에 끼워 맞출 때
00:31:57수익률을 최대한 끌어올리도록
00:31:59막 끼워 맞춘 거라서
00:32:00그 수익률에서 오차가 나면
00:32:02보통 아래쪽으로 오차가 나겠죠.
00:32:03그래서 그러면은 학습 데이터와 검증 데이터를
00:32:06어떻게 나눠서 백테스팅을 할 것인가.
00:32:08예를 들어서 2011년부터 2021년까지
00:32:1111년치 데이터로 학습해서 내년부터 적용해 보는 것은
00:32:15이제 그렇게 나눠서 검증 데이터를 쓰지 않겠다는 뜻이죠.
00:32:18전부 다 학습 데이터로 써가지고 적용하는 건데
00:32:21이건 권장하지 않고요.
00:32:22이제 아까 전에 말씀드린 그렇게 나누는 것은
00:32:25이렇게 10년치 데이터로 학습 데이터를 삼아서 학습한 다음에
00:32:282021년 마지막 1년을 검증을 한 다음에
00:32:312022년부터 적용하는 방법이 있겠고요.
00:32:34근데 요거는 좀 이따 말씀드리겠지만
00:32:36그렇게 좋은 방법은 아니다.
00:32:38그 외에 조금 더 개선된 방법들은 뭐냐.
00:32:40워크포워드 테스팅이라는 방식이 있는데
00:32:43요거는 뭐냐면은
00:32:44예를 들어서 99년도부터 3년 동안
00:32:46거기서 이제 학습해서 파라미터를 최적화한 다음에
00:32:49그걸 토대로 1년간 검증해 보고
00:32:52그 다음에 이렇게 롤링식으로 요렇게 하는 거죠.
00:32:55그래서 요런 식으로 써서 이제 전략을 수립하게 되면은
00:32:58사실 예를 들어서 굉장히 단순한 모델
00:33:01저는 뭐 PER로 기준 삼아서 백테스팅한 건
00:33:04말도 안 된다고 생각하지만
00:33:05PER 일정 이하 되는 주식을 사는 전략이 있다고 가정해 봅시다.
00:33:08그러면 10년 동안의 그런 데이터 상으로
00:33:11PER을 최적화하면은
00:33:13각 해마다 더 좋은 그런 PER 기준들이 다 다를 텐데
00:33:17그 중에서 그냥 평균적으로 괜찮은 거를 선택하게 되겠죠.
00:33:20근데 그걸 조금 더 좁히면은
00:33:22지난 3년치를 토대로 이제 PER 값을 정해서 매매를 하고
00:33:26뭐 요런 식으로 테스팅을 하게 되면은
00:33:28이 파라미터를 조금 더 유연하게
00:33:30시간 흐름과 함께 조절할 수 있게 되는 거죠.
00:33:32그런 식으로 테스팅을 하는 건데
00:33:35뭐 그렇게 테스팅해도 되고
00:33:37그 다음 KFOLD CBE라고
00:33:38CROSS VALIDATION이라고 하는데
00:33:39요거는 어떻게 하냐면은
00:33:41요 K값이 몇 개 단위로 나누냐 요런 뜻인데
00:33:45그림을 보시면 K값이 5겠죠.
00:33:47그러면 K값을 5로 정하면은 데이터를 5등분 해가지고
00:33:50요 4년치에다가 학습을 시킨 다음에
00:33:531년치에 검증 데이터에서 수익률이 얼만지 찾아보고
00:33:56그 다음에 요 4가지에다가 학습을 시킨 다음에
00:33:59요 해에 그게 어떻는지 검증을 해보고
00:34:01요런 식으로 한 다음에 요 수익률의 평균을 5분의 1로 이제 나눕니다.
00:34:05그러니까 요 수익률들을 평균하는 거죠.
00:34:09그게 이제 기대할 수 있는 수익률이랑 비슷하다.
00:34:12그런 생각을 하는 거고요.
00:34:13그 외에는 예를 들어서 지난 10년간의 데이터를 쓴다.
00:34:16그러면은 짝수해의 데이터로 학습을 하고
00:34:19홀수해의 데이터로 검증을 하기도 합니다.
00:34:22요런 것들이 다 장단점이 있는데
00:34:23요거의 장점을 말씀드리자면은
00:34:26마켓 레짐 체인지에 되게 파라미터가 안정적이에요.
00:34:30무슨 뜻이냐면은
00:34:31금융 위기나 코로나가 터지면은
00:34:33시장 성질이 변화하게 됩니다.
00:34:35그러면은 예를 들어서 2008년도에 금융 위기가 터졌는데
00:34:391998년부터 2007년까지 데이터로 학습을 해서
00:34:43수익률 좋은 걸 찾아낸 다음에
00:34:45여기서 검증하고 하면은
00:34:46이 시장 성질이 달라져 버리기 때문에
00:34:49이게 조금 분포도 달라지고
00:34:51이 뒤의 시장 상황을
00:34:52이 앞에 그런 패턴들이 반영을 하지 않겠죠.
00:34:55그래서 요런 식으로 나누게 되면은
00:34:57그렇게 엄청난 사건이 터져가지고
00:35:00시장 성질과 패턴이 변해버리는 문제에
00:35:02조금 더 안정적으로 이제 검증을 할 수가 있어요.
00:35:06그래서 요런 방식을 쓰기도 하고
00:35:08요런 방식을 쓰면은 아까전에 말씀드린 미래를 바라보는 거
00:35:11그거를 주의하셔야 돼요.
00:35:13왜냐하면은 매매 주기에 따라서 다르겠지만
00:35:16월별로 매매한다 치면은
00:35:18지금 학습 데이터에
00:35:19이게 2014년 학습 데이터가 반영이 돼 있는데
00:35:222013년도에 어떤 규칙이나 어떤 데이터를 쓰냐에 따라서
00:35:262014년이 되어야 아는 부분들이
00:35:28요 검증 데이터에 섞일 수가 있거든요.
00:35:30그러면은 요 검증 데이터의 수익률이 뻥튀기 되겠죠.
00:35:34이미 미래를 바라보고 학습을 했으니까.
00:35:36그래서 각별히 요 부분을 주의하셔야 되고
00:35:39그리고 되게 그냥 거칠게 말씀을 드렸는데
00:35:41기계 학습 머신러닝 요런 파트의 경우에는
00:35:44하이퍼 파라미터 요런 부분들이 있습니다.
00:35:46또 그러니까 파라미터는 일반적으로 모델 자체가
00:35:50샘플 데이터의 오차를 줄이기 위해서 조절해 나가는 부분이고
00:35:54하이퍼 파라미터는 사람이 정해야 되는 부분이에요.
00:35:57예를 들어서 회기 분석을 한다.
00:35:59그러면은 뭐 직선을 쓸 것인지 아니면 곡선을 쓸 것인지
00:36:03그러니까 파라미터가 얼마나 복잡한 그런 형태의 식을
00:36:07그런 모델을 쓸 것인지
00:36:09그런 것은 사람이 결정하겠죠.
00:36:11그러면 그런 파라미터의 개수 요런 거는 하이퍼 파라미터고요.
00:36:15그거를 정해놓고 나면은 이제 그 데이터에 따라서
00:36:18그 데이터의 오차를 최적화하는 방향으로
00:36:22요 선을 피팅을 하는 거죠.
00:36:23그래서 기울기라든지 절편 그게 이제 요 데이터에 맞춰서
00:36:28모델이 학습하게 되는데 요 기울기 값 요런 부분들을 파라미터라고 합니다.
00:36:33그래서 하이퍼 파라미터도 여러 가지를 시도를 해 봐야겠죠.
00:36:36그래서 그냥 요렇게 트레인 테스트 데이터로 나눈 게 아니고
00:36:40데프 데이터라고 하나를 더 나눠요.
00:36:42그래서 여기다가 이제 최적화를 한 다음에
00:36:45하이퍼 파라미터는 여기다가 최적화하고
00:36:48그 다음에 이제 테스트 데이터로 검증하고 요렇게 하기도 합니다.
00:36:51근데 뭐 기계 학습을 아시는 분들은 이미 다 이해하실 거고
00:36:55요걸 모르시는 분들은 어차피 요정도 설명으로는 모르실 거기 때문에
00:36:58그냥 뭐 넘어가도록 하겠습니다.
00:37:00근데 이런 작업을 할 때 굉장히 굉장히 굉장히
00:37:04아무리 강조해도 지나치지 않은 중요한 부분이 있습니다.
00:37:08바로 검증 데이터
00:37:10검증 데이터는 절대로 절대로 절대로 두 번 보시면 안 됩니다.
00:37:15그 결과를
00:37:16학습 데이터에서 막 학습을 해서 수익률 좋은 그런 전략을 백테스팅 여러 번 해보고 그래서 찾아내잖아요.
00:37:22그러면 요 전략이 학습 데이터 상에서는 어쨌든 수익률 좋은 걸 찾았는데
00:37:26실전에서 요걸 사용해 보면은 정말 그대로 좋을지 그것을 검증하기 위해서
00:37:31학습 데이터에 사용하지 않았던 그 기간이나 그 데이터를 써가지고 요걸 돌려보는 거잖아요.
00:37:38근데 이거는 절대로 두 번 돌리시면 안 됩니다.
00:37:41딱 한 번만 돌려보고 딱 한 번 돌렸을 때 수익률이 나쁘잖아요.
00:37:45그러면은 아무리 뭐 몇 년을 노력하고 아무리 이 전략을 만드는데 개고생을 했었어도
00:37:50전체 전략을 그냥 버려야 됩니다.
00:37:52왜냐? 실전에 이 전략을 적용했을 때 손익을 볼 기회도 단 한 번밖에 없거든요.
00:37:57시간을 돌릴 수는 없잖아요.
00:37:58그럼에도 불구하고 아까워가지고 요 검증 데이터에서 나쁘게 나왔다고
00:38:03다시 학습 데이터만 써가지고 파라미터 좀 조정해보고 그러면서
00:38:07다시 돌려봤는데 검증 데이터에서 수익률이 좋게 나왔어요.
00:38:10그렇게 하는 순간 이미 검증 데이터는 검증 데이터가 아니고
00:38:14학습 데이터로 편입이 되어버린 거예요.
00:38:16그 파라미터를 찾고 하는데 검증 데이터까지 포함해서 최적화를 해버렸잖아요.
00:38:21그래서 요 전략은 이제 실전에 갔을 때 얼마나 좋은 수익률을 낼지
00:38:26우리가 어떤 아무런 보장을 할 수가 없는 거죠.
00:38:29그래서 그 부분이 굉장히 중요하고
00:38:31이제 백테스팅을 하실 때 중요한 점 요것도 이어지는 얘기인데
00:38:34시대는 변한다는 거 마켓 레짐이라는 개념
00:38:37제가 질문을 하나 해보겠습니다.
00:38:3920년치 백테스팅이랑 3년치 백테스팅 중에서
00:38:42어느 것이 더 유의미할까요?
00:38:44이미 제가 제목을 이렇게 해둬서 답은 나왔는데
00:38:47많은 줄이니 분들이 백테스팅을 길게 할수록 좋다
00:38:50데이터가 많을수록 좋다 그렇게 생각하시는 분들이 계세요.
00:38:54근데 저라면은 이 두 가지 백테스팅 중에서
00:38:57물론 뭐 시간 지평이나 얼마나 자주 매매하냐
00:39:00그런 거에 따라서 다르겠지만
00:39:01웬만해서는 3년치를 쓰겠습니다.
00:39:03데이터의 개수는 많으면 많을수록 좋아요.
00:39:06근데 같은 분포에서 비롯되는 데이터여야 돼요.
00:39:09무조건 데이터는 많을수록 좋은데
00:39:11이미 뭔가 환경이 변해버린 부분에서 오는 다른 데이터가 섞이면 좋지 않다는 거죠.
00:39:17그래서 백테스팅을 길게 잡으면 직면하는 문제는
00:39:20시장의 성질이 변한다는 거죠.
00:39:22이거는 이제 뭐 이게 뭐 실질 수익률 그래프인가
00:39:26어쨌든 뭐 금리 관련 그래프인데
00:39:28지금 보시면은 시기별로 적정 금리라고 하는 그런 개념 자체가
00:39:33물론 요렇게 변동을 하지만
00:39:34그 체제 하의 그런 적정 금리 그런 수준이 확확 변하죠.
00:39:38이때는 이쯤에다가 요 뭐 오일쇼크인가
00:39:41어쨌든 요 시기를 계기로 요때는 또 요기고
00:39:45그 다음에 80년대 이후로는
00:39:47요기가 이제 일반적으로 통용되는 그런 금리가 되었죠.
00:39:51그러면 뭐 채권 관련 트레이딩을 하는데
00:39:53요 시기 안에서 이제 매매 전략을 이제 학습해서
00:39:57요기다가 이제 사용한다고 해봅시다.
00:39:59그러면은 이때 이제 마켓 레짐이 바뀌어버리면은
00:40:02여기에서는 요기 학습한 그런 데이터로 만든 수익성 좋은 전략은
00:40:07여기서 통용되지 않겠죠.
00:40:08그게 이제 마켓 레짐 체인지라고 하거든요.
00:40:11뭐 시장의 성질, 시장의 체제, 그런 변화
00:40:14그래서 시장 성질의 변화는
00:40:17뭐 시장 플레이어들의 변화에 따라서 이루어지기도 하고요.
00:40:20예를 들어서 코로나 이후에 개미들이 엄청나게 유입이 많이 되면서
00:40:23게임스탑 사태도 생겨나고
00:40:25그러면 예전에는 코로나 이전에는
00:40:27그런 공매도 전략들, 쇼셀링 전략들
00:40:30뭐 쇼셀링 전문으로 하는 해지펀드들도 있죠.
00:40:32되게 잘 먹히던 전략들인데
00:40:34갑자기 요런 걸로 이제 시장 성질이 변하면서
00:40:37완전히 뭐 파상까지 갔었죠.
00:40:39그 다음에 이제 제도 및 규제 변화, 금융위기가 터지고
00:40:43투자은행에서 프랍 매매들이 금지되고
00:40:45그 다음 파생상품 시장에서도 여러 규제들로 시장이 변화하고
00:40:49그런 금융위기 이전의 학습 데이터로
00:40:50학습한 그런 전략은
00:40:52이후에 잘 먹히지 않겠죠.
00:40:54그 다음 이제 뭐 외생적인 이벤트
00:40:55오일 쇼크 같은 그런 엄청나게
00:40:57시장 자체를 변화시켜버리는
00:40:59그런 거시경제적인 이벤트
00:41:01그 다음에 이제 거시경제적인 변화들
00:41:03부채 비율이 점점점 이제 올라가면서
00:41:06금리 수준이 옛날에는 뭐 이 정도였는데
00:41:08이제는 엄청나게 저금리 시대가 된 거
00:41:11그러면서 사실 양적 완화 이런 부분들도
00:41:13이런 저금리에 일조를 하고
00:41:15그러면서 성장주들이 갑자기 아웃퍼폼을
00:41:17지난 10년 동안 엄청나게 했죠.
00:41:19근데 양적 완화 하기 전의 학습 데이터로
00:41:22수익성 좋은 전략을 찾아 냈는데
00:41:24막 가치주를 사고 막 그런 거예요.
00:41:25그러면은 당연히 향후 10년 동안은
00:41:27되게 안 좋았겠죠.
00:41:28그 외에도 뭐 신기술 등장
00:41:30아니면 산업 구조 변화
00:41:32뭐 그런 부분들이 있습니다.
00:41:33그래서 20년치 백테싱 했을 때
00:41:352001년의 데이터가 과연 의미가 있을까
00:41:38물론 마켓 레짐 체인지라는 것은
00:41:40어떤 요소를 보느냐
00:41:42거기에 따라서 좀 달라요.
00:41:43결국은 전략의 어떤 로직이나
00:41:45규칙이나 아니면 모델이
00:41:47어떤 요소들을 보고
00:41:49어떤 데이터를 사용하는지
00:41:51거기에 따라서
00:41:52그 데이터의 레짐이
00:41:53체인지 되는 것을 봐야겠죠.
00:41:55그래서 뭐 월 단위로도
00:41:56되게 빨리빨리 성질이 변화하는
00:41:58데이터도 있을 것이고
00:41:59아니면 뭐 10년, 15년 정도는
00:42:01되게 안정적인 그런 데이터도 있을 것이고
00:42:03그래서 코로나 주기들도 다 다르기 때문에
00:42:05일반적으로 이렇게 뭐
00:42:07무조건 코로나 터졌다고 해서
00:42:09그 전에 모든 패턴들이
00:42:09다 무의미하고 그런 건 아니에요.
00:42:12근데 어쨌든 막 20년 치
00:42:14막 이렇게 하게 되면은
00:42:15분명히 조금 문제가 있다.
00:42:17그렇게 보셔도 되고
00:42:18만약에 되게 옛날 데이터를
00:42:20써가지고 유추하려고 하면은
00:42:22마켓 레짐이
00:42:23중간에 변화했는데
00:42:24또 변화하고 해가지고
00:42:25어쨌든 현재 시점을 반영하는
00:42:29먼 과거의 데이터면은
00:42:30이제 또 사용 가능하기도 해요.
00:42:32그래서 뭐 어떤 사람들은
00:42:33지금 1940년대와 지금이 닮았다.
00:42:35요런 얘기도 하기도 하는데
00:42:37여담이고
00:42:38그래서 퀀트 트레이딩은
00:42:41되게 뭐 보편화가 많이 되고
00:42:42일반 개인들도 하고 하는데
00:42:44장기 투자하는 거
00:42:45퀀트 투자의 어떤 맹점은
00:42:47어떤 요런 개량적 기법을
00:42:49장기 투자에 적용을 할 때
00:42:51많은 데이터 기술을 확보하는 동시에
00:42:53레짐 체인지를 피하는 게 되게 힘들거든요.
00:42:55예를 들어서 뭐 분단이 데이터를 쓰는
00:42:57그런 알고리즘 매매 전략이 있다고 해봅시다.
00:42:591분에 아니 1시간에
00:43:0160개 데이터가 있죠.
00:43:0260분이니까
00:43:0360개 데이터가 있고
00:43:04그러면은 뭐
00:43:0524시간 트레이딩 되는 선물이라고 해봅시다.
00:43:08그럼 24 곱하면은
00:43:091440개
00:43:10맞나?
00:43:101440개 데이터가 있죠.
00:43:12그러면은 1440개의 하루가 있으면은
00:43:15뭐 주 5일 매매 돼서 250개
00:43:17251이 있다고 가정하면은
00:43:201년에 뭐 30몇만 개
00:43:21그 정도 숫자의 데이터가
00:43:231년치에 확보가 되죠.
00:43:25그렇게 1년치만 해도
00:43:2630몇만 개의 데이터 개수가 확보가 되기 때문에
00:43:29충분히 유의미하게 많은 데이터 속에서
00:43:32검증도 하고
00:43:33좀 더 복잡한 모델도 써보고
00:43:35그렇게 할 수가 있습니다.
00:43:36근데 뭐 월 단위로 매매하는
00:43:37그런 리밸런싱 전략이라고 해봅시다.
00:43:39그럼 1년에 12개밖에 없죠.
00:43:41그럼 20년을 해도
00:43:42240개밖에 없습니다.
00:43:44그래서 데이터 개수를 시간축으로 못 늘리기 때문에
00:43:47여러가지 주식 종목들을 이제 보면서
00:43:49그쪽으로 이제 조금 넓혀가지고
00:43:51유의미성을 조금 확보하려고 하는데
00:43:53결국은 시간축에서
00:43:54그럼 레짐 체인지를 피하기는 어렵죠.
00:43:57그래서 요런 부분들이 굉장히 어려워요.
00:43:58그래서 코로나 터지고 나서
00:44:00되게 많은 퀀트들이
00:44:02이 이니고 프레이저 젠킨스라는 사람은
00:44:05되게 유명한 회사의 퀀트 헤드로 알고 있는데
00:44:09왜 나는 더 이상 퀀트가 아닌지
00:44:11여기에 대해서 설명을 했는데
00:44:13결국은 요런 이제 내용이 뭐냐면은
00:44:15퀀트가 하는 일이 과거 패턴을 바탕으로 미래를 예측하는 것인데
00:44:19이런 식으로
00:44:20코로나 같은 게 터져버리면은 과거 패턴들이 무용지물이 돼서
00:44:23마켓 레짐 체인지가 있을 때
00:44:25전혀 퀀트가 할 수 있는 것이 되게 적다.
00:44:28그래서 뭐 퀀트들의 존재론적 위기
00:44:30뭐 이런 얘기도 하고
00:44:31그리고 작년에 되게 퀀트들이 안 좋았죠.
00:44:34물론 되게 좋았던 퀀트들도 일부 있지만
00:44:36평균적으로 굉장히 굉장히 안 좋았습니다.
00:44:38그래서 지금 한 절반 정도 온 것 같은데
00:44:40벌써 한 시간 반이 지나가지고
00:44:43일단 1부는 여기까지 하고요.
00:44:45내일은 이제 2부에서 나머지 6번부터 10번 다루고
00:44:49장점과 한계
00:44:50그 다음 퀀트 공부를 위한 커리큘럼
00:44:52요렇게 다뤄보도록 하겠습니다.
00:44:54그럼 2부에서 뵙겠습니다.
00:44:55감사합니다.