코스피 ETF의 종류와 매월 일정금액을 투자했다면 그 결과는?!

2020. 7. 29. 17:00

코스피 ETF는 여러가지 종류가 있다. 크게는 코스피 200을 추종하는 ETF, 코스피200과 반대로 움직이는 인버스 ETF, 배로 움직이는 레버리지 상품이 있다. 코스피ETF는 ETF상품에서도 가장 기본에 해당한다. 그래서 삼성증권, 미래에셋증권 등 대부분의 운영사가 코스피 ETF상품을 보유하고 있다. 오늘은 코스피 ETF의 종류와 매월 일정금액을 투자했다면 그 결과는 어떻게 될지 알아보도록 하겠다.

 

 

코스피ETF
코스피 ETF

 

 

코스피ETF란?!

코스피 ETF는 코스피 지수를 추종하는 상품은 아니고, 정확히는 코스피200지수를 추종한다. 코스피는 유가증권시장에 상장된 전체 종목을 포함하기 때문에, 운영하기가 어렵다. 그래서 시가총액이 상위군이고 거래량이 많은 종목 순으로 200 종목을 편입해 지수를 산출한 것이다. 이 코스피200지수를 추종하는 상품이 우리가 코스피ETF 상품이라고 부르는 것이다. ( 코스피 지수를 추종하도록 만든 ETF상품도 있다. )

 

IRP계좌로 ETF를 매수하면, 수수료 뿐만 아니라 소득공제 혜택도 받을 수 있다. 자세한 내용은 아래 포스팅을 참조해보자.
( 참조: IRP 계좌(개인형퇴직연금)의 장점과 단점은? )

 

 

코스피 ETF의 종류는?!

ETF의 종류는 네이버 증권에서 쉽게 확인할 수 있다. 네이버 증권의 주요시세정보에서 ETF를 클릭하고, 국내시장지수를 선택하면 61개의 ETF 상품을 확인할 수 있다. 이 중에서 코스피 200지수를 추종하는 시가총액 상위 ETF 상품을 알아보면 아래의 5가지가 있다.

 

ETF명

시가총액
(억원)

운영사

운영보수

추적오차율

1년 수익률

KODEX 200 53,723 삼성자산운용 0.15% 0.59% 12.58%
TIGER 200 26,415 미래에셋자산운영 0.05% 0.62% 12.59%
KODEX 200TR 11,261 삼성자산운용 0.07% 0.38% 12.4%
KBSTAR 200 11,086 케이비자산운용 0.045% 0.46% 12.62%
ARIRANG 200 8,107 한화자산운용 0.04% 0.46% 12.46%

- 20년 7월 29일 기준임

 

 

ETF를 고를 때 거래가 활발하고 운영규모가 큰 것이 좋다고 한다. 그래야 사고 팔기가 좋기 때문이다.

수익률은 큰 차이가 없고, 추적오차율은 KODEX 200TR이 가장 낮다. 추적오차율은 추종하는 지수를 ETF가 얼마나 잘 따라가는지를 나타내는 지표로 낮을수록 좋다.

KODEX 200TR은 KODEX 200과 같지만, 배당금을 배분하지 않고 자동재투자하는 상품이다. 보수나 추적오차율 값은 좋으나 이 ETF는 17년11월에 출시된 상품으로 장기간 투자결과를 평가하기 어려워 제외하였다.

나머지 중에서는 운영보수가 가장 저렴한 ARIRANG200 ETF 상품을 선택하였다.

 

 

아리랑ETF

( 아리랑 ETF 홈페이지도 있었다, http://arirangetf.com/ )

 

 

매월 일정금액을 투자했을때 결과는?!

ARIRANG200을 매월 100만원씩 매수한다면 수익률은 어떻게 될까. 이를 확인하는 방법은 여러가지가 있지만, 필자는 파이썬과 zipline이라는 패키지를 이용하였다. zipline에 대해서는 아래 포스팅이나 필자의 책을 참고하면 될 듯 하다.
( 참조: 파이썬 퀀트투자, 알고리즘 개발부터 백테스트까지 zipline )

 

 

금융데이터를_위한_파이썬

 

 

우선 ARIRANG200 ETF의 거래 데이터를 FinanceDataReader패키지로 수집하였다. 필자의 책에서 만든 to_csv함수를 이용해서 수집했다.

 

from kor_stock_to_csv import to_csv

 

# arirang etf

to_csv("152100","2015")

 

 

데이터를 수집하고 난 후에는, zipline의 data bundle에 데이터를 등록해야 한다. 터미널에서 아래와 같이 실행하여 kor_stocks라는 번들에 데이터를 등록하였다.

 

> zipline ingest -b kor_stocks

 

 

이제 매월 100만원씩 ETF를 매수한다고 가정하고, 코드를 작성하였다. 날짜를 정확히 계산하기 귀찮아서 23일이 지난 후에 매수하는 것으로 하였다. 주식 거래일을 기준으로 하면 약 23일이 지난 후가 다음달이다.

작성한 코드는 buy_etf_monthly.py로 저장하였다.

 

 

from zipline.api import order, record, symbol

 

def initialize(context):

    context.i=0

    pass

 

def handle_data(context, data):

    context.i+=1

    record(nth=context.i)

 

    if int(context.i)%23==0:

        buy_cnt=int(1000000/int(data.current(symbol('152100'), 'price')))

        order(symbol('152100'),buy_cnt)

        record(buy_cnt=buy_cnt)

        record(etf=data.current(symbol('152100'), 'price'))

    else:

        record(buy_cnt=0)

        record(etf=data.current(symbol('152100'), 'price'))

        pass

 

 

 

터미널에서 아래와 같이 코드를 실행하여, 백테스트 결과를 얻었다.

 

> zipline run -f buy_etf_monthly.py --start 2015-1-1 --end 2020-7-28 --bundle kor_stocks --trading-calendar XKRX -o buy_etf_monthly.pickle

 

 

수익률을 아래와 같이 계산해보았다.

 

import pandas as pd

 

perf=pd.read_pickle('buy_etf_monthly.pickle')

 

cnt_sum=perf["buy_cnt"].sum()

print("총 매수수량: {}".format(cnt_sum))

 

perf["buy_amt"]=perf["buy_cnt"]*perf["etf"]

buy_sum=perf["buy_amt"].sum()

print("총매수금액: {}".format(buy_sum))

 

last_price=perf.loc[perf["nth"]==perf["nth"].max(),"etf"][0]

cur_sum=cnt_sum*last_price

print("평가금액: {}".format(cur_sum))

 

print("수익률: {:.2f}%".format(cur_sum/buy_sum*100-100))

 

[Out]:

총 매수수량: 2257

총매수금액: 58,286,328

평가금액: 68,138,830

수익률: 16.90%

 

매수매도

- 코스피200ETF 가격 흐름과, 매수시점(보라색) -

 

 

약 5년 6개월간 총 2,257주를 매수했다. 총 투자금액은 5,800만원 정도 되고, 평가금액은 6,800만원이다. 수익률은 16.9%이다. 필자가 욕심이 과했던 것인지 예상한 수익률보다는 낮다. 기간별 수익률을 감안하지 않더라도 이보다는 훨씬 높을 거라고 예상했다.

 

책에서 다룬 pyfolio 패키지를 이용해서 연간수익률도 구해보았다.

import pyfolio as pf

 

pf.create_full_tear_sheet(perf.returns)

pf.timeseries.perf_stats(perf.returns)[["Annual return"]]

 

[Out]:

Annual return    0.133696

 

포스팅을 작성하다보니 글이 너무 길어졌다. 중간에 끊기가 애매했는데, 수익률이 잘 나오지 않은 이유에 대해서는 다음 포스팅에서 이어서 알아보도록 하겠다.
( 다음 포스팅: 2. 적립식 ETF 투자의 장점과 단점은?! )

댓글()
  1. Favicon of https://rhdahwnqnstjr20180127.tistory.com BlogIcon P.H.Jeong. 2020.07.29 19:06 신고 댓글주소  수정/삭제  댓글쓰기

    잘보고갑니다.:)ㅎ 흥미롭네요:)ㅎㅎ

  2. Favicon of https://secret-great.tistory.com BlogIcon 은밀하고위대하게 2020.07.30 08:35 신고 댓글주소  수정/삭제  댓글쓰기

    코스피 200에 투자하셨군요. 저정도 되면 수익률이 높은거 아닌가요?