Stock Insight
빅데이터 기반 주식 시장 감성 분석
본 프로젝트 소개는 서비스 기능 설명을 위한 정보이며, 투자 자문을 제공하지 않습니다.
2025-11-05
The Challenge
**1. 방대한 비정형 데이터 처리** 하루에도 수십만 건씩 쏟아지는 뉴스 기사와 트윗, 커뮤니티 게시글을 실시간으로 수집하고 중복을 제거하는 파이프라인 구축이 필요했습니다. 특히 금융 분야 특유의 은어(Jargon)와 반어법 등을 정확하게 해석하는 것이 관건이었습니다. **2. 실시간성 확보** 뉴스가 발생하고 대시보드에 반영되기까지의 지연 시간(Latency)을 최소화해야 했습니다. 기존의 배치(Batch) 처리 방식으로는 급변하는 시장 상황을 따라갈 수 없었습니다.
The Solution
**1. FinBERT 모델 파인튜닝** 금융 텍스트 분석에 특화된 BERT 모델인 FinBERT를 도입하고, 국내 주식 시장의 커뮤니티 데이터로 추가 학습(Fine-tuning)을 진행했습니다. 이를 통해 "한강 가즈아"(부정적/자조적 의미)와 같은 문맥적 뉘앙스까지 85% 이상의 정확도로 분류해냈습니다. **2. Kafka 기반 스트리밍 파이프라인** 데이터 수집부터 분석, 저장까지의 과정을 Kafka와 Spark Streaming을 이용한 이벤트 기반 아키텍처(Event-Driven Architecture)로 전환했습니다. 이를 통해 데이터 처리 지연 시간을 평균 10분에서 30초 이내로 단축했습니다.
Project Overview
'Stock Insight'는 뉴스 기사와 소셜 미디어 데이터를 수집하여 특정 종목에 대한 시장의 감성(Sentiment)을 실시간으로 분석하는 금융 대시보드입니다. 주가는 결국 시장 참여자들의 심리에 의해 결정된다는 행동경제학 가설에 기반하여 제작되었습니다. 단순히 "이 주식이 오른다/내린다"를 예측하는 것이 아니라, 현재 시장이 해당 종목에 대해 공포(Fear)를 느끼는지 탐욕(Greed)을 느끼는지를 수치화하여 객관적인 지표로 제공합니다. 이를 통해 투자자들은 감정에 휘둘리지 않는 이성적인 매매 전략을 수립할 수 있습니다.
Tech Stack
- Python (FastAPI)
- Apache Kafka & Spark
- Elasticsearch (Logstash)
- React (Recharts, Next.js)
- Hugging Face Transformers
Key Features
- 실시간 뉴스 데이터 크롤링 및 FinBERT 분석
- 종목별 감성 스코어 (Fear & Greed Index 변형)
- 워드 클라우드를 통한 주요 키워드 시각화
- RSI, MACD 등 기술적 지표와 감성 지표 오버레이 차트 제공
- 급격한 감성 변화 감지 시 알림 발송