cs

FinanceDataReader라는 라이브러리를 활용해서 주가를 편하게 가지고 올 수 있었다. 

 

이전에 대리님과 트레이딩 봇 구현할 때 대리님께서 키움증권 api를 따서 크롤링하는 형태로 가지고 왔는데 (물론 정보가 더 많고 분별로 가지고 올 수 있다), 일별 가격정보를 통해서 백테스팅을 하거나 공식 활용하는 건 이걸로도 충분히 활용 가능할 것 같다. 파이썬 연습을 최대한 이걸 통해서 해보고 계속 포스팅 해볼 예정이다.

 

github을 거의 따라하는 수준이니 아래의 github를 보시면 설명이 더 디테일 할 것이다.


 

GitHub - FinanceData/FinanceDataReader: Financial data reader

Financial data reader. Contribute to FinanceData/FinanceDataReader development by creating an account on GitHub.

github.com

해당 github를 방문하면 활용 하는 방법도 나와있고 한국 증시뿐만 아니라 나스닥 S&P 500 정보도 가지고 올 수가 있다.

github의Overview를 보면 SSE'(상해), 'SZSE'(심천), 'HKEX'(홍콩), 'TSE'(도쿄) 정보까지 불러드리는게 가능하다. 

개인적으로 이거 만든사람 상줘도 된다.

 

(그리고 파이썬 학부때 배우지 않은걸 너무 뼈 시리게 후회한다.. 좀만 빨리 알았어도 뻘짓 안했을걸.. )

 

 

FinanceDataReader 불러오기

import pandas as pd
import FinanceDataReader as fdr
  • fdr.DataReader -> 가격 정보
  • fdr.StockListing -> 종목 정보 

크게 라이브러리가 두개정도로 나눠지는 것 같은데 DataReader를 통해서 가격정보를 가지고 올 수 있고, StockListing을 통해 해당 종목의 정보를 가지고  올 수 있다. 컬럼은 아래에서 확인해보자. 

 

 

삼성전자 주가 불러오기 

#삼성전자 2017년부터 가장 최근 가격까지 가지고 오기

df= fdr.DataReader('005930',"2017","2022")
df.tail()

하도 많이 봐서 저 종목 코드는 안까먹을것같다. 삼성전자 주식 코드 005930을 지정해주고 2017년부터 2022년까지로 설정을 했다. 

2021년도로 하니까 21년 12월까지의 정보가 나와서 최근 가격까지 가지고 오는지 확인하기 위해서 22년을 설정하고 tail을 통해 마지막 5줄을 가지고 온다. 

현재 삼전 주가가 맘에 안든다..

 

결과가 정말 깔끔하고 아름답게 나왔다. 해당 날자의 시가, 고가, 저가, 종가 그리고 거래량과 더불어 전날 대비 변동률까지 깔끔하게 나왔다.

(다만 삼전 주가의 흐름이 아름답지 않을뿐...)

 

 

종가 기준으로 그래프 그리기 (plot)

#종가로 그래프 그리기

df["Close"].plot()

지정된 데이터 프레임에서 종가를 지정하고, 종가에 대한 간단하게 plot으로 그려준다.

21년시작과 함께 터지긴 했지만,, 10만원은가야지! 

 

+ Recent posts