FinanceDataReader 파이썬 실습 - 2
Data Analyst

빅데이터 관련 자료/Python

FinanceDataReader 파이썬 실습 - 2

carpe08 2022. 2. 18. 18:06
320x100
320x100

라이브러리 불러오기

import pandas as pd
import FinanceDataReader as fdr

 

개별 종목의 일별 시세 수집

  • 종목코드로 수집이 가능합니다.
  • 종목명을 찾아서 일별 시세를 수집해 주는 함수를 만들어 볼 예정입니다.

- fdr.DataReader("종목코드", "하위 연도" , "상위 연도" )

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

# 종가 시각화 하기
df["Close"].plot()

상장종목 목록 가져오기

df_krx=pd.read_csv("krx.csv")
df_krx

 

상장종목 목록 사용하기

  • 종목명과 심볼을 찾기 위해 상장종목 목록을 사용합니다.
    df_krx.head()​

종목명으로 종목 코드를 받아오는 함수 만들기

def item_code_by_item_name(item_name):
    item_code=df_krx.loc[df_krx["Name"]==item_name,"Symbol"].tolist()[0]
    return item_code

- 검증

item_code_by_item_name("하이브")
# '352820'

item_code_by_item_name("삼성전자")
# '005930'

 

종목명으로 일별시세를 받아오는 함수 만들기

def find_item_list(item_name, year=2020):
    item_code=item_code_by_item_name(item_name)
    if item_code:
        df_day=fdr.DataReader(item_code,year)
        return df_day
    else:
        return False

종목명으로 일별 시세를 잘 가져오는지 확인하기

find_item_list("박셀바이오")

stock_daily=find_item_list("하이브")
stock_daily

 

개별종목 시세 시각화

Pandas 의 plot으로 시각화 하기

stock_daily["Close"].plot()

stock_daily.plot(secondary_y="Volume",figsize=(10,6))

 

서브플롯 그리기

stock_daily.plot(subplots=True,figsize=(10,8))

stock_daily.hist(figsize=(10,6))

stock_daily.hist(figsize=(10,10),bins=50)

2축 그래프 그리기

# secondary_y 옵션을 통한 종가와 거래량에 대한 2축 그래프 그리기
stock_daily[["Close","Volume"]].plot(secondary_y="Volume",figsize=(10,10))

320x100
320x100