Freezent는 주가 조작 및 불공정 거래 행위에 대응하기 위해 개발된 LangGraph 기반 멀티 에이전트 분석 시스템입니다.
News_agent, Filings_agent, LSTM_agent로 구성된 각 에이전트가 정형·비정형 데이터를 독립적으로 분석하여 정보의 비대칭성을 해소하고 투자자의 합리적인 의사결정을 지원하는 것을 목표로 합니다.
시연 영상
Freezent는 ReWOO(Reasoning WithOut Observation) 아키텍처 기반의 멀티 에이전트 시스템으로, 각 도메인에 특화된 에이전트들이 독립적으로 분석을 수행한 뒤 그 결과를 종합합니다.
시스템 전반은 Orchestrator가 제어하며, Meta Planner가 사용자 요청을 하위 분석 작업으로 분해하고, Fusion Solver가 각 에이전트의 분석 결과를 통합하여 최종 결론을 도출합니다.
- 뉴스 분석 에이전트 (News Agent): 뉴스 데이터를 수집/분석하여 기업에 미치는 호재 및 악재를 분류하고, 정보의 신뢰도를 평가합니다.
- 공시 분석 에이전트 (Filings Agent): 공시 문서를 분석하여 주가 변동성에 영향을 미칠 수 있는 주요 이벤트를 식별합니다.
- 이상 탐지 에이전트 (Anomaly Detection Agent): LSTM-Autoencoder 모델을 활용하여 주가 시계열에서 이상 거래 패턴을 탐지합니다.
Freezent는 정형 데이터와 비정형 데이터를 결합하여 기존 시스템이 놓칠 수 있는 미세한 조작 징후까지 탐지합니다.
- LSTM-AE 기반 이상 탐지 모델
- 데이터셋: KRX 정보데이터 시스템의 KOSPI 전종목 시세 (2005.01 ~ 2025.07)
- 앙상블 학습: 전체 KOSPI 종목 중 300개를 선정하여 학습, 종목 편향 최소화
- 이상 징후 판단: 30일 윈도우의 주가·거래량 시계열에 대해 Reconstruction Error를 산출하고, 사전 정의된 Threshold 초과 여부로 이상 여부를 판정
-
뉴스 신뢰도 및 연관성 분석
- 데이터 수집: HTS 뉴스 제공 플랫폼 Infostockdaily 크롤링
- 연관성 판단: 기사 핵심 주제와 분석 대상 종목 간 직접적 연관성 여부 판별
- 신뢰도 평가: 기사 출처, 어조, 근거 정보를 기반으로 비동기 분석 수행, 허위 정보 및 찌라시성 뉴스 필터링
-
유동주식 비율 분석
- 데이터 소스: DART 최대주주 현황 API, 사업보고서
- 분석 지표: 최대주주 기말 보유 주식 지분율
- 비교 기준: KOSPI 평균 유동주식 비율(≈57%) 대비 상대적 유동성 평가
-
제3자 배정 유상증자 감지
- 데이터 소스: DART 유상증자결정 공시
- 탐지 기준: 신주 발행 방식이 제3자 배정에 해당하는지 여부
- 분석 목적: 경영권 변동 및 특정 세력 개입 가능성 신호 포착
-
실적 변동성 및 기재 정정 추적
- 데이터 소스: DART 영업실적등에대한전망(공정공시)
- 분석 지표: QoQ / YoY 기준 실적 변동폭
- 이상 신호: 공시 이후 기재 정정 발생 여부
- 판별 방식: 정정 사유 및 전후 문맥에 대한 LLM 기반 분석
-
의무보유(보호예수) 현황 추적
- 데이터 소스: Seibro 의무보유등록/반환정보
- 구조화 항목: 의무보유 여부, 비율, 해제일, 설정 사유
- 리스크 신호: 보호예수 해제 시점 기반 Overhang 발생 가능성
-
거래량 및 등락률 이상 패턴 탐지
- 데이터 결합: 개별종목 시세 데이터, 보호예수 정보
- 시나리오 A: 보호예수 해제 전후 대량 거래 및 가격 하락
- 시나리오 B: 보호예수 기간 중 비정상적 거래량 증가 또는 가격 상승
- 통계 기준: 최근 5일 평균 거래량·등락률을 최근 30일 기준과 비교
- Python: 3.9 이상
- Node.js: 20.x 이상
- API Keys: 프로젝트 루트 및 각 폴더(
front,agent)의.env.example을 참고하여.env파일을 생성하고 필요한 키를 입력하세요.
git clone https://github.com/banchan01/Freezent.git에이전트가 사용할 도구 서버를 먼저 실행합니다.
cd Freezent
pip install -r requirements.txt
cd agent/mcp-server-local
python mcp-server.py메인 에이전트 서버를 실행합니다.
cd ../.. # Freezent 루트로 이동
python app.py사용자 인터페이스를 실행합니다.
cd front
npm install
npm run dev브라우저 주소창에 http://localhost:3000을 입력하여 Freezent를 시작하세요.
Team Freezent
- 김민찬
- 김태균
MIT License
Copyright (c) 2025 banchan_01
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

