야후 파이낸스(yfinance) 라이브러리로 실시간 주가, 재무제표, 52주 최고/최저가 및 지표를 수집하여 AI가 전문가 관점에서 종목 분석 리포트를 작성하는 시스템을 구축합니다.
1. 금융 AI 전문 용어 사전 (Glossary)
- yfinance: 야후 파이낸스(Yahoo Finance)의 미국/한국 주식 실시간 시세 및 재무제표 데이터를 수집하는 파이썬 패키지입니다.
- PER (Price to Earnings Ratio): 주가를 1주당 순이익(EPS)으로 나눈 수치로, 기업 가치의 저평가/고평가 여부를 판단합니다.
- PBR (Price to Book Ratio): 주가를 1주당 순자산(BPS)으로 나눈 수치입니다.
- Portfolio Simulation: 자산 배분 비중을 조절하며 백테스팅(Backtesting)을 수행하여 미래 수익률을 시뮬레이션하는 기법입니다.
2. 파이썬 실시간 주가 수집 및 AI 리포트 생성기
import yfinance as yf
from openai import OpenAI
client = OpenAI()
def analyze_financial_stock(ticker_symbol):
# 1. yfinance로 주식 데이터 수집 (예: Apple 'AAPL', 테슬라 'TSLA', 삼성전자 '005930.KS')
stock = yf.Ticker(ticker_symbol)
info = stock.info
financial_data = {
"종목명": info.get("shortName"),
"현재주가": f"{info.get('currentPrice')} {info.get('currency')}",
"PER": info.get("trailingPE"),
"PBR": info.get("priceToBook"),
"52주 최고가": info.get("fiftyTwoWeekHigh"),
"52주 최저가": info.get("fiftyTwoWeekLow"),
"시가총액": info.get("marketCap")
}
# 2. AI 분석 프롬프트 주입
prompt = f"""
너는 월스트리트 수석 주식 분석가야.
다음 수집된 기업 재무 데이터를 바탕으로 투자 분석 리포트를 작성해 줘.
[재무 데이터]
{financial_data}
[작성 양식]
1. 기업 재무상태 평가
2. 주요 밸류에이션(PER/PBR) 분석
3. 투자 유의점 및 리스크 관전 포인트
"""
res = client.chat.completions.create(
model="gpt-4o-mini",
messages=[{"role": "user", "content": prompt}],
temperature=0.2
)
return res.choices[0].message.content
print(analyze_financial_stock("AAPL"))
3. 자주 묻는 질문 (Q&A)
Q. 금융 AI 서비스를 제공할 때 법적으로 명시해야 하는 항목은? A. AI 서비스 화면 하단에 "본 서비스가 제공하는 분석 자료는 단순 정보 제공 목적이며, 모든 투자 결정과 책임은 이용자 본인에게 있습니다"라는 **법적 면책 조항(Disclaimer)**을 반드시 표기해야 합니다.