study/프로그래밍

[FinanceDataReader 활용] 2. Python으로 주식 데이터 조회하기

밥짓는사나이- 2023. 6. 21. 15:35
728x90

Finance data reader를 통해 데이터들을 조회할수가 있습니다.

해당패키지에서는 krx 국내주식정보와 nasdaq 등 미국주식정보들을 조회할수 있어요!

1. Package import 하기

import FinanceDataReader as fdr
from IPython.display import display

 첫번째는 finance data reader package를 불러옵니다. 이름이 너무 길기 때문에 이후 fdr로 사용하기 위해서 as fdr을 붙여줍니다.
두번째 패키지는 dataframe을 출력할때 예쁘게(?) 출력하고자 display 함수를 불러왔습니다.


2. krx 한국 국내주식 조회하기
 krx를 인수로 줘서 fdr.StockListing 함수로 불러옵니다. 그러면 전체 krx의 종목 리스트를 확인이 가능합니다.

# 종목 코드 조회하기
df_krx = fdr.StockListing('KRX')  # KRX 시장의 종목 리스트 가져오기
print('[KRX 시장의 종목리스트 가져오기]')
print(df_krx.head())  # 종목 리스트 출력

print('-----------------------------------')
print('[KRX 시장의 종목리스트 가져오기, 예쁘게 보여주기]')
display(df_krx.head())

 정의한 df_krx의 앞부분 10개 데이터를 출력하기 위해 head 메소드를 붙여서 출력해봅니다. Print로 출력시에는 표가 정렬이 잘 안된 상태로 보일거구요-
display를 사용하면 더 예쁜(?) 정렬된 표로 확인이 가능합니다.

3. 필드명 출력해보기

# 종목 코드와 필드명 출력
print('종목 코드와 필드명 출력')
print(df_krx.columns)

 우리가 어떤 값들을 조회할수 있는지 알기위해서, 종목을 조회했을때 볼수있는 필드명을 조회해봅니다. Open(시가) 및 close(종가) 등 여러가지 항목이 조회가능하고, 이를 기반으로 우리가 원하는 데이터를 만들어 낼수 있습니다.
 
 4. 삼성전자 주가 데이터 조회

print('-----------------------------------')
# 주식 데이터 조회하기
df = fdr.DataReader('005930', '2022-01-01', '2022-12-31')  # 삼성전자(005930)의 2022년 데이터 조회
print('삼성전자 2022년 데이터 조회')
print(df.head())  # 조회된 주식 데이터 출력

리스트에서 조회한 삼성전자의 종목코드를 인수로 주면, 기간별 주가 조회가 가능합니다. 시가, 종가를 비롯해 4-5가지 항목들을 볼수 있어요-

728x90
728x90