Data/python

yahoo finance를 활용한 미국 재무정보 수집하기

노는토요일 2022. 6. 8. 23:56

2020년 코로나이후로 사람들이 주식에 관심이 많아지며, 그와 함께 해외주식에 대한 주문 건수도 내가 조사한 바에 의하면 약 10배정도 증가하였다.

 

그래서 해외주식에 관한 재무정보를 간편하게 얻기 위해 데이터 소스를 얻는 방법을 정리해 봤다. 

 

가장 먼저 EDGAR 

https://www.sec.gov/edgar/searchedgar/companysearch.html

 

SEC.gov | Company Search Page

Search Tools EDGAR Full Text Search New versatile tool lets you search for keywords and phrases in over 20 years of EDGAR filings, and filter by date, company, person, filing category or location. CIK Lookup Find a company or person EDGAR filings by their

www.sec.gov

한국에는 DART를 활용해 공시정보를 제공한다면, 미국의 경우 EDGAR가 그런 역할을 하고 있다. 

한국에서는 DART open api 를 제공해 여러가지 데이터에 접근 가능하게하고 있으나, 

내가 찾아본 바에 의하면 EDGAR는 그 용도가 제한적이고, 모두 사용하려면 회원가입 및 유료서비스를 이용해야한다. 

 

크게 얻을 수 있는 정보가 4가지가 있는데, 다른 컴퓨터에 있어서 내일 중 업로드할 예정이다. 

 

그래서 찾은 새로운 방안이 yahoo finance를 활용한 해외주식 재무 정보 수집이다. 

코드를 살펴보면,

# yahoo-finance reader
!pip install yfinance

먼저 yahoo에서 제공하는 api를 사용하기 위해 yfinance를 설치하고 

 

apple = yf.download('AAPL')

필자의 경우 apple의 정보를 불러와 apple에 관한 재무정보를 수집하려고 한다. 

다음과 같은 결과를 얻을 수 있는데, 

 

애플의 1980년 부터 현재까지의 시가, 고가, 저가, 종가,조정종가,거래량 을 조회 할 수 있다. 

# 시작 및 끝을 주고 싶으면 start ='####-##-##' , end = '####-##-##'를 주어 시작일과 끝일을 설정 할 수 있다. 

 

위의 사진은 주식 가격에 대한 정보를 불러온 것이고, 본 포스팅에 맞는 재무 정보를 불려오려면, 생각보다 어렵지 않다. 

 

## apple 재무정보 물러오기 
aapl_yf =yf.Ticker('AAPL')

aapl_data =  aapl_yf.financials # 재무정보 
print(aapl_data)

print('#######################')

aapl_data = aapl_yf.major_holders # 주주정보 
print(aapl_data)

print('##################################')
aapl_data = aapl_yf.balance_sheet  #재무재표 
print(aapl_data)
print('##################################')
aapl_data = aapl_yf.cashflow # 현금 흐름 
print(aapl_data)
print('##################################')
aapl_data = aapl_yf.earnings  #기업 실적  
print(aapl_data

aapl_data =  aapl_yf.financials # 재무정보 
print(aapl_data)

위의 코드를 참고해 불러오고 싶은 재무정보를 조회하고,

def get_net_income(x):
  ## apple 재무정보 물러오기 
  x_yf =yf.Ticker(x)
  data = x_yf.financials
  return data.loc['Net Income']
  print(data.loc['Net Income'])

일일이 코드작성하기 귀찮으니 사용자 정의 함수를 만들어 활용해준다. 필자의 경우 순이익을 추출하기 위한 사용자 정의 함수 작성 

 

해외 재무 정보 수집을 통해 도출하려했던 결과는 다음과 같은데,

https://news.alphastreet.com/infographic-how-campbell-soup-cpb-performed-in-q3-2022/

 

Infographic: How Campbell Soup (CPB) performed in Q3 2022 | AlphaStreet

Campbell Soup Company (NYSE: CPB) reported third quarter 2022 earnings results today. Net sales increased 7% year-over-year to $2.1 billion. Organic sales growth was 9%. Net earnings attributable to Campbell Soup Company was $188 million, or $0.62 per shar

news.alphastreet.com

 

사실 이 인포그래픽이 생각보다 보여줄게 그렇게 많지 않다는 판단을 했다. 굳이 이렇게 봐야하나 싶다는 느낌 ? 

 

또한 안타깝게도 yfinance는 가장 최근 공시정보를 가지고 있지 않다. 포스팅 날짜 기준 2022년 1분기 실적이 공개되어야 하는데, 애플의 경우 2021년 2분기 결과발표 자료만 있다.(2021-09-25) 공시. 해당 부분에서 한계점을 갖는데 새로운 방안을 찾게 된다면 업데이트 해보도록 하겠다. 

 

'Data > python' 카테고리의 다른 글

[stochastic] python을 활용한 백테스팅  (0) 2022.07.03
[골든크로스] python을 활용한 벡테스팅  (0) 2022.06.18