이지훈님의 블로그
Python 주가데이터 가져오기 본문
Python 주가데이터 가져오기
yahoo finance가 historical data를 제공해주지 않아 URL을 사용해 csv파일을 받는 방법이나, 파이썬의 yahoo_finacne 패키지로 데이터를 가져오는 방법 등을 더 이상 사용할 수가 없게 되었다. 열심히 구글링을 하는 중 fix_yahoo_finance 패키지를 발견했다.
fix_yahoo_finance : https://github.com/ranaroussi/fix-yahoo-finance
Requirements
Python >=3.4 Pandas (tested to work with >=0.18.1) Numpy >= 1.11.1 requests >= 2.14.2 multitasking >= 0.0.3
Install
pip3 install fix_yahoo_finance --upgrade --no-cache-dir
Code
kospi데이터를 가져오기 위해서는 종목코드.KS를 붙여야 한다. 코스닥이라면 KQ이다.
예 : pdr.get_data_yahoo('005930.KS')
sys.stdout, sys.stderr 부분은 개발환경에서 인코딩에 문제가 없으면 삭제해도 된다.
from pandas_datareader import data as pdr import fix_yahoo_finance import os import sys import io sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding='utf-8') sys.stderr = io.TextIOWrapper(sys.stderr.detach(), encoding='utf-8') def download(stock_list, download_path): market = 'KS' stock_num = '' for stock_info in stock_list: stock_num = stock_info.split(',')[0] stock_name = stock_info.split(',')[1] data = pdr.get_data_yahoo(stock_num + '.' + market, start='2012-01-01', end='2017-05-31') data.to_csv(download_path + stock_name + '.csv') download_path = os.getenv("HOME") + '/code/Korea_Finance_Analysis/data/stock/' market_path = os.getenv("HOME") + '/code/Korea_Finance_Analysis/data/market/KOSPI' f = open(market_path, encoding='utf-8') download(f.readlines(), download_path)
'Stock Prediction' 카테고리의 다른 글
Python 종목코드 가져오기 (0) | 2017.06.19 |
---|
Comments