파이썬으로 미국주식 재무제표 가져오는 5가지 방법
- 퀀트투자
- 2025. 2. 1.
파이썬으로 미국주 재무제표 가져오는 5가지 방법
미국 기업의 재무제표를 분석하거나 투자 리서치를 하다 보면, 데이터를 효율적으로 수집하는 것이 중요합니다. 파이썬을 활용하면 다양한 API와 라이브러리를 통해 손쉽게 기업의 재무제표를 가져올 수 있습니다. 이번 포스팅에서는 파이썬으로 미국 재무제표를 가져오는 5가지 방법을 소개합니다.
1. SEC의 EDGAR API 사용하기
미국 증권거래위원회(SEC)는 기업의 10-K, 10-Q 보고서를 제공하는 EDGAR API를 운영합니다. 이 API를 활용하면 기업의 공식 공시 데이터를 직접 가져올 수 있습니다.
✅ 사용 방법
import requests
cik = '0000320193' # 애플(Apple)의 CIK
url = f'https://data.sec.gov/submissions/CIK{cik}.json'
headers = {'User-Agent': 'Your Name (your_email@example.com)'}
response = requests.get(url, headers=headers)
data = response.json()
print(data)
- CIK (Central Index Key): 기업 고유 식별 번호
- User-Agent 필수: 요청 시 User-Agent를 지정해야 차단되지 않습니다.
📊 장점
- 공식 데이터로 신뢰성 높음
- 무료 제공
⚠️ 단점
- 데이터 구조가 복잡하여 초기 학습 필요
2. Yahoo Finance API (yfinance 라이브러리)
yfinance
라이브러리는 주식 가격뿐만 아니라 기업의 재무제표 정보도 가져올 수 있습니다. 설치와 사용이 매우 간편합니다.
✅ 사용 방법
import yfinance as yf
ticker = yf.Ticker('AAPL') # 애플
financials = ticker.financials # 손익계산서
balance_sheet = ticker.balance_sheet # 대차대조표
cashflow = ticker.cashflow # 현금흐름표
print(financials)
📊 장점
- 설치 후 간단한 코드로 사용 가능
- 실시간 데이터까지 제공
⚠️ 단점
- 일부 상세한 재무 정보는 제공되지 않을 수 있음
3. Finnhub API 활용하기
Finnhub는 글로벌 금융 데이터를 제공하는 API로, 주식, 환율, 암호화폐 등 다양한 데이터에 접근할 수 있습니다.
✅ 사용 방법
- https://finnhub.io에서 무료 API 키 발급
- 코드 작성
import requests
api_key = 'YOUR_API_KEY'
symbol = 'AAPL'
url = f'https://finnhub.io/api/v1/stock/financials?symbol={symbol}&statement=bs&freq=annual&token={api_key}'
response = requests.get(url)
data = response.json()
print(data)
📊 장점
- 빠른 속도와 상세한 재무 데이터(유료 구독시)
- 다양한 금융 정보 지원
⚠️ 단점
- 무료 플랜은 API 호출 횟수 제한
4. Alpha Vantage API 사용하기
Alpha Vantage는 손익계산서, 대차대조표, 현금흐름표 데이터를 API로 제공합니다. 간단한 쿼리로 데이터에 접근할 수 있어 초보자에게도 추천합니다.
✅ 사용 방법
- https://www.alphavantage.co에서 API 키 발급
- 코드 작성
import requests
api_key = 'YOUR_API_KEY'
symbol = 'AAPL'
url = f'https://www.alphavantage.co/query?function=INCOME_STATEMENT&symbol={symbol}&apikey={api_key}'
response = requests.get(url)
data = response.json()
print(data)
📊 장점
- 무료 API 키 제공
- 간단한 API 호출 방식
⚠️ 단점
- 무료 사용 시 데이터 제한
- 가끔 지연 발생
5. BeautifulSoup을 이용한 웹 스크래핑
API가 제공되지 않는 경우에는 웹사이트에서 직접 데이터를 스크래핑할 수 있습니다. 대표적인 사이트로는 MarketWatch, Nasdaq 등이 있습니다.
✅ 사용 방법
import requests
from bs4 import BeautifulSoup
url = 'https://www.marketwatch.com/investing/stock/aapl/financials'
headers = {'User-Agent': 'Mozilla/5.0'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
tables = soup.find_all('table')
for table in tables:
print(table.text)
📊 장점
- 다양한 사이트에서 데이터 추출 가능
- API 제한 없이 활용 가능
⚠️ 단점
- 법적 이슈 발생 가능성 (서비스 약관 확인 필수)
- 사이트 구조 변경 시 코드 수정 필요
✅ 방법 비교
방법 | 데이터 출처 | 장점 | 단점 |
---|---|---|---|
SEC EDGAR API | SEC 공시 데이터 | 공식 데이터, 무료 | 복잡한 JSON 구조 |
yfinance | Yahoo Finance | 간편한 사용, 인기 있음 | 제한된 재무 데이터 |
Finnhub API | Finnhub | 빠른 속도, 상세한 정보 | API 호출 제한 (무료 플랜) |
Alpha Vantage API | Alpha Vantage | 무료 API 키, 쉬운 사용 | 데이터 제한, 가끔 지연 발생 |
BeautifulSoup | 웹사이트 | 다양한 사이트 활용 가능 | 법적 이슈, 구조 변경 시 취약 |
🚀 마무리
파이썬을 활용하면 기업의 재무제표 데이터를 쉽고 빠르게 수집할 수 있습니다. 초보자라면 yfinance
나 Alpha Vantage
로 시작하고, 더 정교한 데이터가 필요하다면 SEC EDGAR API
나 Finnhub
를 활용해 보세요.
함께 보면 좋은 글
파이썬으로 미국 주식 티커 가져오기
미국주식 티커 가져오기미국주식은 우리나라와 달리 티커라는 개념이 있습니다. 우리나라에서는 숫자로 주식종목을 식별할 수 있는 고유코드를 부여하지만. 미국은 약자로서 고유코드를 부여
seong6496.tistory.com
초보자도 하는 주식 기술적 분석 파이썬 라이브러리
주식 기술적 분석 계산에 유용한 파이썬 라이브러리 소개주식 시장에서 기술적 분석은 투자 의사 결정을 내리는 데 중요한 도구로 사용됩니다. 하지만 방대한 데이터를 수동으로 분석하기에는
seong6496.tistory.com
'퀀트투자' 카테고리의 다른 글
파이썬으로 미국 주식 티커 가져오기 (2) | 2025.01.25 |
---|---|
초보자도 하는 주식 기술적 분석 파이썬 라이브러리 (3) | 2025.01.18 |