yfinance는 Yahoo Finance 데이터를 보다 쉽게 가져올 수 있도록 만든 파이썬 라이브러리입니다..원래 Yahoo Finance는 자체 API를 제공했지만, 2017년에 공식 API를 중단하면서 많은 개발자들이 대체 솔루션을 찾기 시작했고, 개발자 Ran Aroussi가 Yahoo Finance 데이터를 편리하게 가져올 수 있도록 yfinance(초기에는 fix-yahoo-finance)를 개발했습니다. 이 라이브러리는 웹 스크래핑 방식을 활용해서 Yahoo Finance에서 주가, 환율, 재무 정보 등을 쉽게 가져올 수 있도록 해줍니다.
처음에는 비공식적으로 사용되다가 점점 많은 사람들이 쓰기 시작하면서 주식 분석, 알고리즘 트레이딩, 퀀트 투자 등 다양한 분야에서 널리 활용되고 있고, 현재도 오픈소스로 유지보수되고 있고, 꾸준히 업데이트되고 있습니다.
이 것을 사용하는 간단한 정보를 수집하는 내용을 적어봤습니다. 사람들이 가장 관심을 가지고 있는 것이 주식이다 보니 확실시 주식이나 펀드쪽에 관심이 많은지 이런 코드가 많은 것 같습니다. 일단 데이터 수집부터 시작해서 활용하는 방안까지 생각해보겠습니다.
Yahoo 얼마나 오래 간만에 듣는 기업명인지.... 근데 확실히 이름값이 있는 회사는 역사가 있네요.
주어진 종목의 Ticker 객체를 가져오는 함수
def get_stock_data_ticker(target):
_msft = yf.Ticker(target)
return _msft
주어진 종목의 가격 데이터를 다운로드하는 함수
def get_stock_data_download(target):
_aapl = yf.download(target)
return _aapl
펀드 데이터 가져오는 함수
def get_funds_data_ticker(target):
_spy = yf.Ticker(target).funds_data
return _spy
내용 출력
if "__main__" == __name__:
msft = get_stock_data_ticker("MSFT")
print(msft.info)
print(msft.calendar)
print(msft.analyst_price_targets)
print(msft.quarterly_income_stmt)
print(msft.history(period='1mo'))
print(msft.option_chain(msft.options[0]).calls)
aapl = get_stock_data_download('AAPL')
print(aapl.head())
spy = get_funds_data_ticker('SPY')
print(spy.description)
print(spy.top_holdings)
- msft.info: 마이크로소프트의 일반 정보 (회사 개요, 시가총액, 산업 등)
- msft.calendar: 실적 발표 및 주요 이벤트 일정
- msft.analyst_price_targets: 증권사 애널리스트들의 목표 주가 정보
- msft.quarterly_income_stmt: 분기별 손익계산서
- msft.history(period='1mo'): 지난 한 달 동안의 주가 데이터 (OHLC, 거래량)
- msft.option_chain(msft.options[0]).calls: 최근 만기일의 콜옵션 데이터를 조회
- head()를 사용해 상위 5개 데이터 출력.
- spy.description: SPY 펀드의 설명
- spy.top_holdings: SPY의 주요 보유 종목 정보
Site
https://github.com/zafrem/Learn-Code/tree/main/Python-Class/01_Data_collector/1_Collector
Learn-Code/Python-Class/01_Data_collector/1_Collector at main · zafrem/Learn-Code
Contribute to zafrem/Learn-Code development by creating an account on GitHub.
github.com
Code
Learn-Code/Python-Class/01_Data_collector/1_Collector/_1_API_Stock_Funds_yfinance.py at main · zafrem/Learn-Code
Contribute to zafrem/Learn-Code development by creating an account on GitHub.
github.com
pip Package
pip install yfinance
pip package yfinance
https://pypi.org/project/yfinance
yfinance
Download market data from Yahoo! Finance API
pypi.org
'Python-Class' 카테고리의 다른 글
Google Trend RSS - 실시간 인기 검색어 (0) | 2025.03.19 |
---|---|
binance - Altcoin 현재 시가 리스트 (0) | 2025.03.07 |
pandas-datareader - Data Collector (0) | 2025.02.22 |