코스닥 종가 베팅 (overnight position) 백테스트
코스닥 ETF 종가 베팅을 youtube에서 알게 됐다. 연복리수익률(CAGR)이 16%, 최대낙폭(MDD)이 -16%라고 들어서 괜찮은 전략이라 생각했다. 자동 매매 프로그램을 짜기 전에 백테스트를 직접 해서 검증하려고 한다.
종가 베팅(overnight position)이란?
장이 마감하기 전에 주식을 산다. 다음 장이 열리자마자 판다. 아침에는 주식이 오를 거란 기대감으로 주식을 사고 저녁에는 내일은 더 떨어질 거라는 절망감에 판다. 반대로 행동해서 수익을 취하는 전략이다. 아침에 기대감으로 비싼 주식을 사는 투자자들에게 팔고 저녁에는 실망해서 싼 가격에 주식을 산다.
주식 시장이 열리지 않을 때만 보유하는 시니컬한 전략이다. 영어로는 overnight position이라 부르는 것 같다.
백테스트 결과 CAGR, MDD
investing.com에서 받았다. 데이터 정제는 ’백테스트에 사용할 investing 주식 데이터 정제(data cleansing)’ 글을 참고한다.
8년간의 데이터로 백테스트했다. 데이터는코로나19로 인한 2020년 주가 대폭락(2020 stock market crash)을 회색으로 표시했다. 주가 그래프부터 살펴보자.
안타깝게도 박스권이다. 아름다운 우상향 그래프가 아니다.
연복리수익률(Compound Annual Growth Rate, CAGR)을 구하려면 누적 수익률(cumulative return)을 먼저 구해야한다. 구하고 그래프를 그려봤다.
최고는 2.026859498180219 이다. 1을 투자했을 때, 기준이므로 2배가 약간 넘는다. 마지막 값은 1.7852043206435881 이다. 8년간 투자 기준으로 계산해야 하기에 이 값으로. CAGR을 계산한다. 이제 CAGR을 구해보자.
1.7852043206435881 ^ (1/8) - 1 = 0.07513002661
CAGR은 7%가 나온다.
연도별 누적 수익률은 어떻게 나올까?
year | cumulative return |
---|---|
2015 | 0.08055180471379031 |
2016 | 0.20171296494133073 |
2017 | 0.2692987191516574 |
2018 | -0.1107918469929483 |
2019 | 0.11313801844032634 |
2020 | 0.22415046794137594 |
2021 | -0.024917466977072422 |
2022 | -0.14188185932337183 |
2023 | 0.06832165790409439 |
한해 데이터가 모두 쌓이지 않은 2015년과 2023년을 제외한다면 4번 이익을 보고 3번 손해를 본다. 특히 14% 손실이 나는 2022년에 이 전략을 믿고 계속 투자할 수 있을까 의문이 든다.
이제 MDD(Maximum Drawdown)를 확인해 보자.
MDD는 약 -21%가 나온다.
연도별 MDD를 구해보자.
year | MDD |
---|---|
2015 | -0.040020934767421405 |
2016 | -0.049775739677225206 |
2017 | -0.032231544386349474 |
2018 | -0.17053996843196179 |
2019 | -0.09040057866208501 |
2020 | -0.15225001541206515 |
2021 | -0.10075974493438535 |
2022 | -0.18168425565777752 |
2023 | -0.0595799976192331 |
2022년에 -18까지 떨어진다.
왜 이렇게 차이가 나는 걸까? 연복리수익률(CAGR)이 16%, 최대낙폭(MDD)이 -16%라고 했는데 계산 결과 CAGR이 7%, MDD가 -21%가 나온다.
거래수수료를 빼고 계산하면 저렇게 나온다.
거래수수료 계산은 중요하다
거래 수수료는 0.0003으로 계산했다. 살 때와 팔 때의 수수료인 0.015%를 2로 곱한 값이다. Kodex 코스닥150(229200)로 백테스트했기에 증권거래세 0.20%는 제외했다.
주식 개장하는 날마다 매수와 매도를 한다. 즉 매일 거래를 두 번 한다. 백테스트에서 거래 횟수는 2000번 정도로 빈번하다. 이런 주식 매매 전략에서는 거래수수료 계산이 반드시 들어가야 한다. 거래수수료가 들어가 있지 않다면 결과를 의심해 봐야 한다.
거래수수료를 빼고 CAGR과 MDD를 계산해 보자.
3.220027864898258 ^ (1/8) - 1 = 0.15739727027
마지막 날 누적 수익률은 222% 이며 CAGR은 약 16%가 나온다.
MDD도 -16%로 나온다.
거래 수수료를 넣고 계산하면 CAGR이 16%에서 7%로 떨어지고 MDD도 -16%에서 -22%로 떨어진다. 거래 빈도가 높은 전략일수록 그 차이가 확연하다.
수익률이 안 좋은 특정 요일을 빼고 투자한다면?
목요일과 금요일을 뺀 월화수 수익률이 좋다는 걸 보고 백테스트을 해봤다.
1이 월요일, 5가 금요일이다. 맞다. 월화수가 좋고 목금이 안 좋다.
누적 수익률이 2.0530234146439525이 나온다. 1.7852043206435881 보다 좋아졌다.
2.0530234146439525 ^ (1/8) - 1 = 0.09408039979
CAGR은 9%로 훨씬 더 좋아졌다.
MDD도 -13%로 훨씬 더 낮아졌다.
코스닥 종가 베팅을 한다면 월화수만 투자하는 게 훨씬 더 유리하다.
마치며
장이 열려있는 동안에는 주식을 보유하지 않는 시니컬한 전략인 코스닥 종가 베팅 백테스트를 했다. 거래 수수료를 계산에 넣지 않으면 CAGR이 16%, MDD는 -16가 나온다. 하지만 거래 수수료를 넣어서 계산하면 CAGR이 7%, MDD가 -21%가 나온다. 2000번 정도의 거래가 일어나기에 거래 수수료를 빼고 계산하는 건 말이 안 된다. 월화수만 거래하면 CAGR이 9%, MDD가 -13%로 훨씬 더 좋아진다. 만약 코스닥 종가 베팅을 한다면 월화수에만 종가에 주식을 사서 다음 장이 열리면 파는 전략을 취할 계획이다.