본문 바로가기
program

구글 Colaboratory에서 파이썬으로 퀀트투자 기초를.

by 믹스 2021. 10. 9.

#2154

분위기에 편승해서이기도 하지만, 가지고 있는 자금으로 해볼 수 있는 투자처라고는 주식밖에 없어서기도 해서 올해 들어 주식투자를 시작했었다. 근데 뭐 솔직히 알아야 투자를 하지. 주식을 하면서 듣게 되는 잡다한 정보 중에서도 최근 퀀트 투자라고 불리는 가치주를 찾아 투자하는 방법이 꽤 인기몰이를 하고 있었고 그중에서 한 권을 접하게 되어 책을 읽어 나가고 있는 중이다.

이 책에서 다루는 파이썬은 특이하게도 설치형이 아닌 구글에서 제공하는 서비스인 Colaboratory을 사용해서 가능했다. 자 또다시 파이썬 쌩초보가 책 보고 따라 하며 파이썬을 통한 퀀트 투자가 무엇인지 접해보기 시작했다.

이런 화면을 가지고 있다.

지금은 책의 도입부를 따라해보면서 체험 중이다.

# 설치
pip install finterstellar
# 라이브러리 호출
import finterstellar as fs

우선 finterstellar 라이브러리를 설치하고 import 명령어로 불러들인다.

# symbol에 분석하고자 하는 주식의 티커를 입력
symbol = 'DAL'
# 분석할 기간을 설정
df = fs.get_ohlc(symbol, start_date='2020-01-01', end_date='2021-10-01')

분석하고자 하는 주식의 티커를 설정하고 분석하고자 하는 기간을 설정해주면 분석을 위한 아주 기초 중의 기초기반을 설정된다.

# 차트 표시
fs.draw_chart(df, right=symbol)
# 데이터 출력
df.tail()

이제부터 차트를 그리거나 데이터를 불러오거나 하는 것들이 가능해지는데 다음은 draw_chart 명령어로 마이크로소프트사의 주식 차트를 그려본 거다. 신기하다.

백테스팅 설명

책을 따라하면서 가장 기초가 되고 중요한 백테스팅 정보를 이해하기 위한 정보는 다음과 같았다. 메모 메모

# 백테스팅 결과 예시
CAGR: 22.88%
Accumulated return: 41.10%
Average return: 5.39%
Benchmark return : -30.10%
Number of trades: 7
Number of win: 5
Hit ratio: 71.43%
Investment period: 1.7yrs
Sharpe ratio: 0.66
MDD: -26.49%
Benchmark MDD: -72.66%
CAGR: 22.88% 연평균 수익률(Compound Annual Growth Rate).
테스트 기간이 1년보다 짧으면 단리로 계산해서 확장하고 1년보다 길면 복리로 계산해 축소
Accumulated return: 41.10% 누적수익률(Accumulated return).
전체 투자기간 동안의 누적수익률.
Average return: 5.39% 평균수익률(Average return).
해당 전략을 이용한 트레이딩을 한 사이클(매수부터 매도까지)에서 발생한 건별 수익률의 평균.
Benchmark return : -30.10% 벤치마크수익률(Benchmark return).
투자 성능을 비교하기 위한 수익률. 기본적으로 S&P 500지수를 사용하지만 개별 종목 수익률의 테스트인 경우에는 전략을 이용하지 않고 주식을 테스트 기간동안 계속 보유하고 있었다고 가정.
Number of trades: 7 거래횟수(Number of trades).
테스트 기간 중 전략을 통해 매매가 발생한 사이클 횟수.
Number of win: 5 성공횟수(Number of win).
전략이 성공한 횟수. 수익 발생을 뜻한다.
Hit ratio: 71.43% 성공확률(Hit ratio).
전략이 성공한 확률을 뜻한다.
Investment period: 1.7yrs 투자기간(Investment period).
총 테스트 기간을 나타내지만 실제 데이터의 길이가 짧을 경우 실제 투자기간과 상이할 수 있다.
Sharpe ratio: 0.66 샤프비율(Sharpe ratio).
샤프지수라고도 하며 위험 대비 수익이 얼마인지를 표시. 얼마나 큰 위험을 감수하고 얻은 수익인지에 대한 비율로 0 이상이어야 투자대상으로 고려할 가치가 있고 1이상이면 상당히 괜찮은 투자라 볼 수 있다.
MDD: -26.49% 최대낙폭(Maximum Draw Down).
투자기간 중 투자자가 입을 수 있는 최대 손실률. 주가가 떨어지는 것을 Draw Down이라고 하며 MDD는 제일 큰 하락을 뜻함.
Benchmark MDD: -72.66% 벤치마크 MDD(Benchmark MDD).
전략을 사용하지 않고 주식을 계속 보유하고만 있었을 경우의 최대 손실률

분석 결과 해석

# 백테스팅 결과 예시
CAGR: 22.88%
Accumulated return: 41.10%
Average return: 5.39%
Benchmark return : -30.10%
Number of trades: 7
Number of win: 5
Hit ratio: 71.43%
Investment period: 1.7yrs
Sharpe ratio: 0.66
MDD: -26.49%
Benchmark MDD: -72.66%

2020년 1월 1일부터 2021년 10월 1일까지의 1년 7개월의 투자기간 동안 사용된 전략을 통해 총 7번의 거래가 있었으며 5번의 거래 성공으로 71.43%의 확률로 성공하였다. 연평균 수익률이 22.88%. 누적 수익률은 41.10%. 이긴 거래와 진 거래의 평균을 낸 평균 수익률은 5.39%. 벤치마크 수익률은 -30.10%로 주식을 그냥 가지고만 있었다면 꽤 큰 손해를 감수했어야만 했을 것 같다. 샤프 비율은 0.66으로 준수한 편인 것 같아 보인다. MDD는 -26.49%, 벤치마크 MDD가 -72.66%였다.

전체적으로 벤치마크에 비해 수익률이 좋았으며 승률도 높았던 것으로 보인다. 수익률이 22.88%에 MDD가 -26.49%.

이런식으로 보는게 맞는건지 지금은 잘 모르겠지만.. 뭔가 재미있다는 생각이 든다.

이제 시작

아직 시작한 뒤 책을 펴본 것이 다인만큼 정확한 해석도 못하는 상황이고 바른 척도를 가지고 있는 것도 아니라서 잘은 모르지만 차근차근 따라 하다 보면 뭔가 배우는 것이 생기지 않을까? 이제 시작헤 봤는데 조금씩 알아가는 재미가 있을 것 같다.


2021.10.22 - [book] - 미국 주식으로 시작하는 슬기로운 퀀트투자

728x90
반응형

댓글