본문 바로가기
문송충의 코딩하기/파이썬 데이터 분석

한국 거래소에 있는 코스피 종목 기본 정보 파이썬으로 가져오기

by 동장군님 2020. 10. 4.
728x90
반응형

한국 거래소에서 상장된 주식 종목들에 대해 기본 정보를 가져올 수 있는지 찾아봤더니 역시나 나와 같은 고민을 하고 있었던 사람이 있었다. 아래 링크는 바로 파이썬으로 한국 거래소 사이트에 있는 상장 종목 기본 정보를 가져올 수 있는 패키지이다. "pip install pykrx"로 패키지 설치를 먼저 하기를 바란다. 이번 글에서는 아래 패키지를 활용해서 코스피 종목들 기본 정보에 대해 가져와보고 엑셀로 추출해보겠다. 코드는 굉장히 쉽다

 

 

github.com/sharebook-kr/pykrx

 

sharebook-kr/pykrx

KRX 주식 정보 스크래핑. Contribute to sharebook-kr/pykrx development by creating an account on GitHub.

github.com

 

1. 코스피 전체 종목 가격

pykrx 패키지에서는 날짜와 상장 시장을 필터링해서 추출할 수 있는 기능을 제공하고 있다. 여기서는 추석 전 마지막 거래일 20200929, 시장은 코스피로 해서 데이터를 추출하겠다. 아래 간단한 코드를 돌리면 종목코드별 기업명, 마지막 거래 가격과 시가총액을 볼 수 있다.

 

from pykrx import stock
import pandas as pd
df = stock.get_market_ohlcv_by_ticker("20200929", market='KOSPI')
df=pd.DataFrame(df)
df=df[['종목명','종가','시가총액']]

 

 

 

 

 

 

 

 

 

2. 종목별 주요 가치 지표

단순히 종목별 가격 관련 정보뿐만 아니라 주요 가치 지표인 시가배당률, BPS, PER, EPS 정보도 제공하고 있어 이 부분도 추출하여 위 가격 테이블과 조인해보도록 하겠다.

 

fd = stock.get_market_fundamental_by_ticker("20200929",market='KOSPI')
fd=pd.DataFrame(fd)
tb=pd.merge(left=fd,right=df,how='left',left_on=fd.index,right_on=df.index)
tb=tb.rename(columns={"key_0": "Code","종목명_x":"종목명"})
tb=tb.set_index(['Code'])
tb=tb.drop(['종목명_y'],axis=1)
tb=tb.sort_values(by='시가총액',ascending=False)

 

위 코드를 돌리면 아래와 같은 시가총액 기준으로 내림차순 종목별 데이터를 확인할 수 있을 것이다.

 

 

 

3. 공매도 거래량

 

마지막으로 종목별 공매도 거래 현황을 가져와서 위에서 만든 테이블과 조인하도록 하겠다.

 

sf = stock.get_shorting_volume_by_ticker("20200929", "KOSPI")
sf=sf.groupby(level=0).first()
ddf=pd.merge(left=tb,right=sf,how='left',left_on=tb.index,right_on=sf.index)
ddf=ddf.rename(columns={'key_0':'Code'}).set_index('Code')

 

 

 

위 결과물처럼 약 900개에 이르는 코스피 종목 데이터를 엑셀로 데이터를 확인할 수 있게 되었다. 내가 가장 필요로 하는 데이터였는데 역시 나와 같은 고민을 하는 사람은 있었다. 주식 투자에 해당 데이터를 잘 활용해볼 예정이다. 

 

 

 

 

728x90
반응형

댓글