mirror of
https://github.com/shawnkim1997/All-in-one-Financial-Analysis.git
synced 2026-08-16 11:58:07 +00:00
- Create directory for AI coding agents and new developers - Add as the main navigation hub and entrypoint - Add project context files: , , , , , - Add development guidelines and architecture decisions: , (including 429 error handling and 10-year DCF logic)
1.6 KiB
1.6 KiB
Flows
본 애플리케이션은 **정성적 흐름(Qualitative Flow)**과 **정량적 흐름(Quantitative Flow)**을 완전히 분리하여 설계되었습니다.
1. 정성 데이터 흐름 (Qualitative Flow)
- 다운로드:
sec-edgar-downloader를 사용하여 입력받은 티커와 이메일로 가장 최신 10-K HTML 문서를 가져옵니다. - 파싱 및 클렌징: HTML 문서에서
lxml과BeautifulSoup을 사용해 테이블, 이미지, 스크립트를 제거하고 정규식으로 Item 1A(Risk Factors)와 Item 7(MD&A) 섹션만 추출합니다. - 캐싱 및 Chunking: 추출된 텍스트를 로컬 디렉토리(
data/)에 캐시로 저장하고, Gemini API 한도를 넘지 않도록smart_chunk()함수를 통해 중간 내용을 생략하여 압축합니다. - LLM 추론: Gemini API를 호출하여 경영진 전략, 주요 리스크, 핵심 인사이트를 생성하고 결과를 화면에 스트리밍합니다.
2. 정량 데이터 흐름 (Quantitative Flow)
- 검색 및 식별: 사용자가 입력한 기업명으로
yahooquery를 통해 티커 및 거래소 식별자를 추론합니다. - 데이터 페칭:
yfinance및yahooquery를 통해 재무상태표, 손익계산서, 현금흐름표를 호출합니다. - 폴백(Fallback) 연산: 특정 값이 없을 경우
fast_info,info,quarterly데이터 순으로 TTM(Trailing 12 Months) 값을 대체 연산합니다. - 모델링 및 렌더링: 전처리된 데이터를 바탕으로 Pandas 연산을 통해 DCF 내재가치, Piotroski F-Score, DuPont 분석 값을 산출하고 Plotly 차트(Radar, Sankey)로 시각화합니다.