배당 주식 투자자/파이썬으로 배당 투자 분석하기

파이썬으로 주식 데이터 가져오기(yfinance, FinanceDataReader)

리치즈 2023. 9. 6. 06:37
728x90

주식 데이터를 가져올 수 있는 두가지 패키지를 소개한다.

colab을 기준으로 작성했고 colab 노트북은 포스트 제일 하단에서 다운받을 수 있다.

 

 

yfinance

야후 파이낸스에서 크롤링한 데이터를 가져오는 패키지다. 주가 외에도 배당, 주식 분할 내역 등 많은 정보를 제공하고 있어서 편리하다.

패키지 임포트

티커를 통해 간단하게 불러올 수 있다. 아래 코드는 리얼티인컴의 티커 "O"를 입력해서 정보를 가져오는 코드다. 

info 함수는 딕셔너리 형태로 주식에 대한 기본 정보를 제공한다.

import yfinance as yf
o = yf.Ticker("O")
o.info

 

 

주가 데이터 가져오기

history 함수를 사용하면 데이터프레임 형태로 주가 데이터를 반환한다. 일자별 시가, 고가, 저가, 종가를 제공한다.

hist = o.history(period="max")
hist.head()

 

 

기타 정보 가져오기

배당, 주식 분할은 따로 함수를 통해 불러올 수 있다. 

o.dividends # 배당
o.splits    # 주식분할
o.actions   # 배당, 분할
o.get_shares_full(start="2022-01-01", end=None)

그 밖에 재무제표, 현금흐름표와 같은 정보들도 제공하고 있으니, 자세한 내용은 공식 홈페이지를 참고하면 도움이 된다.

 

yfinance

Download market data from Yahoo! Finance API

pypi.org

 

 

 

FinanceDataReader

주가 외에도 주식 리스트, 지수 흐름, 환율 같은 정보들을 제공하고 있어서 유용하다.

(채권 수익률 데이터도 제공하였으나 현재 오류가 나고 있다.)

패키지 설치

colab 기준으로 패키지 설치가 필요하다. 아래 코드로 간단하게 설치가 가능하다

!pip install finance-datareader

 

주가 데이터 가져오기

yfinance 패키지와 동일하게 티커를 통해 데이터를 가져올 수 있다. 

이 패키지에서는 시작일자와 종료일자를 지정해줄 수 있는데, 지정을 안하게 되면 전기간 데이터를 불러온다.

import FinanceDataReader as fdr

fdr_o = fdr.DataReader("O", '2018')
fdr_o.head()

 

 

 

기타 정보 가져오기

S&P 500 상장 주식 리스트, S&P 500 지수 등을 제공하고 있다.

sp500 = fdr.StockListing('S&P500') # S&P500 주식 리스트
sp = fdr.DataReader('US500', '2015-01-01') # S&P 500 지수 (NYSE)
 

GitHub - financedata-org/FinanceDataReader: Financial data reader

Financial data reader. Contribute to financedata-org/FinanceDataReader development by creating an account on GitHub.

github.com

 

 

 

 

 

코드 다운로드

주식_데이터_가져오기.ipynb
0.00MB

 

 

 

 

 

※ 투자 판단과 의사결정 그리고 거래에 대한 모든 손익 책임은 투자자 본인에게 있습니다. 블로그의 모든 글은 개인적인 의견이 절대 투자 권장, 권유를 위한 글이 아닙니다.

 

728x90
LIST