[2019] 딥러닝 주식종목 랭킹모델 백테스팅
2020-06-28 • quant • 딥러닝, 주식종목, 랭킹, 백테스팅, deep learning, stock, ranking, back test • 4 min read
이번 포스트에서는 최근 구축한 주식종목 랭킹모델의 2019년도 1년치 백테스팅 결과를 정리합니다.
백테스팅 환경
퀀티랩의 주식종목 랭킹모델은 PER/PBR/ROE 등의 기본적 분석 지표, OHLCV/MACD/RSI 등의 기술적 분석 지표, 수익률, 변동성, 거래규모 등을 종합적으로 고려하여 학습했습니다.
이렇게 학습한 모델의 출력 값이 높을 수록 매수 고려 대상 종목이 되는 매매 전략을 세웠습니다. 매수, 익절, 손절 등의 기준은 다음과 같습니다.
- 매수: 종목 랭킹 결과 Top 5 종목
- 익절: 60%
- 손절: -60%
- 청산: 과거 평가 수익 고점 대비 -20%
- ...
이러한 기준으로 종가 매매를 진행하며 최대 10개 종목을 보유할 수 있도록 제한했습니다.
자본금은 1억원으로 정하고 종목당 1천만원까지 매수할 수 있도록 했습니다.
매수/매도 거래 비용을 다음과 같이 현실적으로 적용했습니다.
- 거래세: 0.25%
- 매매 수수료: 0.015%
백테스팅 결과
비교 대상(baseline)을 코스피 인덱스로 정하여 백테스팅 결과를 차트로 그려보면 다음과 같습니다.
진한 검정 선이 포트폴리오 가치(PV)를, 연한 회색 선이 코스피 인덱스를 보여줍니다.
동일한 스케일로 표시하기 위해 PV, 코스피 인덱스의 처음 값을 0으로 두고 변화율을 표시했습니다.
그 결과 퀀티랩 주식 종목 랭킹 모델은 약 15% 수익을, 코스피 Buy & Hold 전략 수익률은 약 9% 로 구해졌습니다.
매매 종목
백테스팅 과정에서 매매한 종목들의 내역은 다음과 같습니다.
date | action | code | name | price | amount | profitloss | eval |
---|---|---|---|---|---|---|---|
20190102 | buy | 042110 | 에스씨디 | 1,455 | 6,872 | 99,998,500 | |
20190102 | buy | 028300 | 에이치엘비 | 76,300 | 131 | 99,997,000 | |
20190102 | buy | 095190 | 이엠코리아 | 7,430 | 1,345 | 99,995,501 | |
20190102 | buy | 011320 | 유니크 | 7,720 | 1,295 | 99,994,002 | |
20190103 | buy | 017900 | 광전자 | 2,245 | 4,454 | 99,188,832 | |
20190103 | buy | 115440 | 우리넷 | 7,270 | 1,375 | 99,187,332 | |
20190103 | buy | 225570 | 넷게임즈 | 9,580 | 1,043 | 99,185,834 | |
20190103 | buy | 041960 | 코미팜 | 19,310 | 517 | 99,184,336 | |
20190104 | buy | 004720 | 우리들제약 | 8,770 | 1,140 | 101,308,762 | |
20190104 | buy | 041140 | 넥슨지티 | 9,770 | 1,023 | 101,307,262 | |
20190110 | sell | 225570 | 넷게임즈 | 10,500 | 1,043 | 9.60% | 104,164,638 |
20190110 | buy | 039830 | 오로라 | 10,150 | 985 | 104,163,138 | |
20190116 | sell | 041140 | 넥슨지티 | 12,750 | 1,023 | 30.50% | 110,248,684 |
20190116 | buy | 007720 | 대명소노시즌 | 2,585 | 3,868 | 110,247,184 | |
20190117 | sell | 095190 | 이엠코리아 | 10,200 | 1,345 | 37.28% | 114,231,397 |
20190117 | sell | 011320 | 유니크 | 12,800 | 1,295 | 65.80% | 114,187,471 |
20190117 | buy | 108230 | 톱텍 | 9,970 | 1,003 | 114,185,971 | |
20190117 | buy | 036200 | 유니셈 | 4,095 | 2,442 | 114,184,471 | |
20190117 | buy | 007390 | 네이처셀 | 11,744 | 851 | 114,182,972 | |
20190131 | sell | 039830 | 오로라 | 10,300 | 985 | 1.48% | 117,832,543 |
20190219 | sell | 042110 | 에스씨디 | 1,895 | 6,872 | 30.24% | 127,255,406 |
20190219 | buy | 008370 | 원풍 | 4,050 | 2,469 | 127,253,906 | |
20190219 | buy | 250000 | 보라티알 | 8,650 | 1,156 | 127,252,406 | |
20190308 | sell | 036200 | 유니셈 | 4,125 | 2,442 | 0.73% | 118,311,856 |
20190325 | sell | 028300 | 에이치엘비 | 78,000 | 131 | 2.23% | 120,028,982 |
20190325 | buy | 056080 | 유진로봇 | 4,475 | 2,234 | 120,027,483 | |
20190325 | buy | 208860 | 엔지스테크널러지 | 6,900 | 1,449 | 120,025,983 | |
20190411 | sell | 041960 | 코미팜 | 20,540 | 517 | 6.37% | 121,651,076 |
20190423 | sell | 007390 | 네이처셀 | 11,744 | 851 | 0.00% | 117,992,185 |
20190423 | buy | 097230 | 한진중공업 | 12,036 | 830 | 117,990,686 | |
20190423 | buy | 000440 | 중앙에너비스 | 8,380 | 1,193 | 117,989,187 | |
20190520 | sell | 017900 | 광전자 | 2,435 | 4,454 | 8.46% | 99,035,671 |
20190524 | sell | 097230 | 한진중공업 | 8,150 | 830 | -32.29% | 103,109,920 |
20190524 | buy | 083640 | 인콘 | 3,200 | 3,125 | 103,108,420 | |
20190524 | buy | 010660 | 화천기계 | 2,490 | 4,016 | 103,106,920 | |
20190610 | sell | 115440 | 우리넷 | 9,990 | 1,375 | 37.41% | 106,821,419 |
20190628 | sell | 010660 | 화천기계 | 3,120 | 4,016 | 25.30% | 108,235,770 |
20190628 | buy | 004540 | 깨끗한나라 | 2,415 | 4,140 | 108,234,270 | |
20190628 | buy | 004830 | 덕성 | 3,200 | 3,125 | 108,232,770 | |
20190628 | buy | 019540 | 일지테크 | 3,150 | 3,174 | 108,231,270 | |
20190708 | sell | 083640 | 인콘 | 2,185 | 3,125 | -31.72% | 108,047,706 |
20190711 | sell | 019540 | 일지테크 | 4,275 | 3,174 | 35.71% | 112,418,803 |
20190725 | sell | 056080 | 유진로봇 | 3,090 | 2,234 | -30.95% | 108,903,860 |
20190725 | buy | 230980 | 솔트웍스 | 3,800 | 2,631 | 108,902,361 | |
20190725 | buy | 002070 | 남영비비안 | 1,545 | 6,472 | 108,900,861 | |
20190726 | sell | 007720 | 대명소노시즌 | 1,790 | 3,868 | -30.75% | 110,587,888 |
20190729 | sell | 004720 | 우리들제약 | 5,960 | 1,140 | -32.04% | 112,485,768 |
20190729 | sell | 002070 | 남영비비안 | 2,605 | 6,472 | 68.61% | 112,441,090 |
20190729 | buy | 012700 | 리드코프 | 6,950 | 1,438 | 112,439,591 | |
20190729 | buy | 000140 | 하이트진로홀딩스 | 12,000 | 833 | 112,438,091 | |
20190729 | buy | 012610 | 경인양행 | 9,400 | 1,063 | 112,436,592 | |
20190731 | sell | 004830 | 덕성 | 3,300 | 3,125 | 3.12% | 111,465,379 |
20190801 | sell | 250000 | 보라티알 | 9,000 | 1,156 | 4.05% | 107,712,924 |
20190801 | buy | 036030 | KTH | 5,340 | 1,872 | 107,711,424 | |
20190801 | buy | 207760 | 미스터블루 | 7,430 | 1,345 | 107,709,925 | |
20190801 | buy | 086980 | 쇼박스 | 4,050 | 2,469 | 107,708,425 | |
20190805 | sell | 000440 | 중앙에너비스 | 5,620 | 1,193 | -32.94% | 105,756,923 |
20190805 | sell | 230980 | 솔트웍스 | 2,445 | 2,631 | -35.66% | 105,739,876 |
20190806 | sell | 208860 | 엔지스테크널러지 | 4,690 | 1,449 | -32.03% | 105,802,627 |
20190806 | buy | 041960 | 코미팜 | 11,550 | 865 | 105,801,129 | |
20190806 | buy | 007390 | 네이처셀 | 6,900 | 1,449 | 105,799,629 | |
20190807 | sell | 004540 | 깨끗한나라 | 3,180 | 4,140 | 31.68% | 106,554,466 |
20190819 | sell | 207760 | 미스터블루 | 9,690 | 1,345 | 30.42% | 107,638,863 |
20190819 | buy | 006090 | 사조오양 | 9,600 | 1,041 | 107,637,364 | |
20190819 | buy | 189860 | 서전기전 | 3,790 | 2,638 | 107,635,865 | |
20191011 | sell | 189860 | 서전기전 | 3,920 | 2,638 | 3.43% | 109,339,291 |
20191024 | sell | 007390 | 네이처셀 | 9,470 | 1,449 | 37.25% | 115,558,718 |
20191024 | buy | 056080 | 유진로봇 | 3,000 | 3,333 | 115,557,218 | |
20191024 | buy | 028300 | 에이치엘비 | 163,984 | 60 | 115,555,742 | |
20191024 | buy | 039830 | 오로라 | 12,650 | 790 | 115,554,243 | |
20191213 | sell | 028300 | 에이치엘비 | 87,044 | 60 | -46.92% | 114,112,748 |
20191217 | sell | 012700 | 리드코프 | 7,110 | 1,438 | 2.30% | 113,575,584 |
20191219 | sell | 036030 | KTH | 5,410 | 1,872 | 1.31% | 113,394,701 |
20191219 | buy | 000440 | 중앙에너비스 | 8,630 | 1,158 | 113,393,202 | |
20191219 | buy | 000520 | 삼일제약 | 22,700 | 440 | 113,391,704 | |
20191223 | sell | 041960 | 코미팜 | 15,450 | 865 | 33.77% | 113,165,219 |
향후 계획
모델을 지속적으로 발전시켜 나가며 종목 랭킹 결과 및 운용 시뮬레이션 결과를 퀀티랩에서 제공할 계획입니다.