基于多Agent协作的智能股票分析系统,集成大语言模型(LLM),提供A股实时数据分析、技术指标计算、智能投资建议和专业可视化报告。
- 实时数据监控 - A股行情、资金流向、新闻舆情
- AI智能分析 - 基于GPT-4的深度分析报告
- 技术指标计算 - RSI、MACD、布林带、KDJ等30+指标
- 智能投资建议 - 个性化买卖点提醒和风险评估
- 专业可视化 - ECharts图表、K线图、技术指标图
- 新闻监控 - 财经新闻实时抓取和影响分析
- 🤖 多Agent协作 - 6个专业Agent协同工作
- 🧠 LLM驱动 - GPT-4/Claude提供智能分析
- 📈 实时更新 - WebSocket实时数据推送
- 🎨 现代UI - React+TypeScript+Ant Design
- 🔄 容错机制 - Mock数据保证系统稳定性
- 📱 响应式设计 - 支持桌面和移动设备
graph TB
subgraph "前端展示层"
UI[React前端界面]
WS[WebSocket实时通信]
end
subgraph "后端服务层"
API[FastAPI后端]
ORCH[Agent编排器]
end
subgraph "AI Agent层"
DA[数据收集Agent]
TA[技术分析Agent]
NA[新闻监控Agent]
AA[LLM分析师Agent]
VA[可视化Agent]
AL[提醒Agent]
end
subgraph "数据层"
TS[Tushare数据]
AK[AKShare数据]
NEWS[新闻数据源]
CACHE[Redis缓存]
end
UI --> API
API --> ORCH
ORCH --> DA
ORCH --> TA
ORCH --> NA
ORCH --> AA
ORCH --> VA
ORCH --> AL
DA --> TS
DA --> AK
NA --> NEWS
API --> WS
WS --> UI
DA --> CACHE
TA --> CACHE
┌─────────────────────────────────────────────────────────────┐
│ 前端层 (Frontend) │
├─────────────────────────────────────────────────────────────┤
│ React 18 + TypeScript + Ant Design + ECharts │
│ • Dashboard: 股票概览和实时数据 │
│ • Analysis: AI分析报告和技术指标 │
│ • News: 新闻监控和舆情分析 │
│ • Alerts: 智能提醒和风险预警 │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ API层 (Backend) │
├─────────────────────────────────────────────────────────────┤
│ FastAPI + Pydantic + WebSocket │
│ • /market/* - 市场数据API │
│ • /analysis/* - 分析服务API │
│ • /news/* - 新闻监控API │
│ • /alerts/* - 提醒服务API │
│ • WebSocket - 实时数据推送 │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ Agent编排层 (Orchestrator) │
├─────────────────────────────────────────────────────────────┤
│ LangChain + LangGraph + CrewAI │
│ • 工作流管理 │
│ • Agent间通信 │
│ • 任务调度和监控 │
│ • 结果聚合和处理 │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ AI Agent层 │
├─────────────────────────────────────────────────────────────┤
│ 数据Agent │ 技术Agent │ 新闻Agent │ 分析师Agent │ 可视化Agent │
│ • 实时行情 │ • 技术指标 │ • 新闻抓取 │ • LLM分析 │ • 图表推荐 │
│ • 历史数据 │ • 形态识别 │ • 舆情监控 │ • 投资建议 │ • 智能展示 │
│ • 数据清洗 │ • 趋势判断 │ • 影响评估 │ • 风险评估 │ • 交互设计 │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ 数据层 (Data) │
├─────────────────────────────────────────────────────────────┤
│ Tushare │ AKShare │ 新闻API │ Redis │ SQLite │ File Storage │
│ • A股数据│ • 财经数据│ • 实时新闻│ • 缓存 │ • 本地DB│ • 文件存储 │
└─────────────────────────────────────────────────────────────┘
| 技术 | 版本 | 用途 |
|---|---|---|
| React | 18.2.0 | 前端框架 |
| TypeScript | 4.9.5 | 类型安全 |
| Ant Design | 5.12.0 | UI组件库 |
| ECharts | 5.4.0 | 数据可视化 |
| Zustand | 4.4.0 | 状态管理 |
| Axios | 1.6.0 | HTTP客户端 |
| Socket.IO | 4.7.0 | 实时通信 |
| 技术 | 版本 | 用途 |
|---|---|---|
| FastAPI | 0.104+ | Web框架 |
| Python | 3.8+ | 开发语言 |
| LangChain | 0.1+ | LLM框架 |
| OpenAI | 1.0+ | GPT模型 |
| Tushare | 1.2+ | 股票数据 |
| Redis | 6.0+ | 数据缓存 |
- LLM模型: GPT-4, Claude-3.5
- Agent框架: LangChain, CrewAI
- 数据处理: Pandas, NumPy
- 技术分析: TA-Lib, Custom Indicators
- ✅ 市场概览 - 总股票数、涨跌统计、活跃提醒
- ✅ 实时走势 - K线图、移动平均线、技术指标
- ✅ 智能搜索 - 股票代码搜索,科技感UI设计
- ✅ 涨幅榜 - 热门股票排行,实时数据更新
- ✅ 成交量排行 - 智能分页(少于10条时隐藏分页器)
- ✅ Mock数据支持 - API失败时自动使用模拟数据
- ✅ 专业技术分析 - 90天历史数据分析
- ✅ 技术指标计算 - RSI、MACD、布林带、KDJ等
- ✅ 价格走势图 - 多时间周期K线图和移动平均线
- ✅ AI分析报告 - 基于LLM的综合分析和投资建议
- ✅ 智能建议 - 基于多指标综合判断的投资建议
- ✅ 报告导出 - 支持分析报告导出功能
- ✅ 历史记录 - 分析记录查看和重载功能
- ✅ 实时新闻 - 财经新闻自动抓取和分类
- ✅ 搜索功能 - 新闻内容智能搜索
- ✅ 影响分析 - 新闻对股价影响的AI分析
- ✅ 情绪标识 - 正面/负面/中性情绪分析
- ✅ 数据挖掘 - 新闻数据的深度挖掘和关联分析
- ✅ 智能提醒 - 基于AI分析的个性化提醒
- ✅ 历史记录 - 提醒历史查看和管理
- ✅ 优先级分类 - 高/中/低优先级提醒分类
- ✅ 实时通知 - WebSocket实时提醒推送
- ✅ 科技感设计 - 深色主题,渐变背景,毛玻璃效果
- ✅ 响应式布局 - 支持不同屏幕尺寸
- ✅ 输入框优化 - 悬浮效果,垂直居中,搜索按钮
- ✅ 卡片样式 - 渐变背景,阴影效果,统一设计语言
- ✅ 加载状态 - 完善的加载提示和错误处理
- Node.js 16+
- Python 3.8+
- Redis 6.0+
git clone https://github.com/your-repo/stock-agent-system.git
cd stock-agent-system# 安装Python依赖
pip install -r requirements.txt
# 配置环境变量
cp config/.env.example config/.envcd web/frontend
npm install# 回到项目根目录
cd ../..
# 启动后端
python start_backend.py# 启动前端
cd web/frontend
npm start- 前端界面: http://localhost:3000
- 后端API: http://localhost:8001
- API文档: http://localhost:8001/docs
stock-agent-system/
├── 📁 agents/ # AI Agent模块
│ ├── 📁 data_agent/ # 数据收集Agent
│ ├── 📁 tech_agent/ # 技术分析Agent
│ ├── 📁 news_agent/ # 新闻监控Agent
│ ├── 📁 analyst_agent/ # LLM分析师Agent
│ ├── 📁 viz_agent/ # 可视化Agent
│ ├── 📁 alert_agent/ # 提醒Agent
│ └── 📄 base_agent.py # Agent基类
├── 📁 core/ # 核心框架
│ └── 📄 orchestrator.py # Agent编排器
├── 📁 web/ # Web应用
│ ├── 📁 frontend/ # React前端
│ │ ├── 📁 src/
│ │ │ ├── 📁 components/ # 组件库
│ │ │ ├── 📁 pages/ # 页面组件
│ │ │ ├── 📁 stores/ # 状态管理
│ │ │ ├── 📁 services/ # 服务层
│ │ │ └── 📄 App.tsx # 主应用
│ │ ├── 📄 package.json # 前端依赖
│ │ └── 📄 tsconfig.json # TS配置
│ └── 📁 backend/ # FastAPI后端
│ └── 📄 api.py # API接口
├── 📁 config/ # 配置文件
│ └── 📄 config.py # 系统配置
├── 📁 tests/ # 测试代码
├── 📄 requirements.txt # Python依赖
├── 📄 start_backend.py # 后端启动脚本
└── 📄 README.md # 项目文档
sequenceDiagram
participant U as 用户
participant F as 前端
participant A as API
participant O as 编排器
participant D as 数据Agent
participant T as 技术Agent
participant L as LLM分析师
U->>F: 输入股票代码
F->>A: 请求分析
A->>O: 启动工作流
par 并行处理
O->>D: 获取股票数据
O->>T: 计算技术指标
end
D-->>O: 返回实时数据
T-->>O: 返回技术指标
O->>L: 综合分析
L-->>O: AI分析报告
O-->>A: 分析结果
A-->>F: 返回数据
F-->>U: 展示结果
- 用户请求 → 前端发起分析请求
- 工作流启动 → 编排器协调各Agent工作
- 数据收集 → DataAgent获取实时行情数据
- 技术分析 → TechAgent计算各类技术指标
- 新闻监控 → NewsAgent抓取相关新闻
- AI分析 → AnalystAgent生成综合报告
- 结果展示 → 前端展示分析结果和图表
# .env 文件
TUSHARE_TOKEN=your_tushare_token
OPENAI_API_KEY=your_openai_key
REDIS_URL=redis://localhost:6379
DATABASE_URL=sqlite:///./stock_data.db# config/config.py
class Config:
TUSHARE_TOKEN = "your_token"
OPENAI_API_KEY = "your_key"
REDIS_URL = "redis://localhost:6379"
# 更多配置...- 响应时间: < 2秒 (数据获取)
- 并发支持: 100+ 用户
- 数据更新: 实时 (WebSocket)
- 可用性: 99.9%
- 股票数据: 99.9% (Tushare官方数据)
- 技术指标: 99.9% (标准算法)
- AI分析: 85%+ (GPT-4模型)
- 期货/期权支持 - 扩展到衍生品分析
- 量化策略 - 内置常用量化策略
- 回测系统 - 策略历史回测功能
- 移动端APP - React Native应用
- 多市场支持 - 港股、美股数据接入
- 社交功能 - 用户互动和分享
- 高级AI - 多模态大模型集成
- 企业版 - SaaS化部署方案
- 代码规范: 遵循PEP8(Python)和ESLint(TypeScript)
- 提交规范: 使用Conventional Commits格式
- 测试要求: 新功能需要包含单元测试
- 文档更新: 重要功能需要更新文档
- Fork 项目
- 创建功能分支 (
git checkout -b feature/AmazingFeature) - 提交更改 (
git commit -m 'Add some AmazingFeature') - 推送分支 (
git push origin feature/AmazingFeature) - 创建 Pull Request
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。
感谢以下开源项目和服务提供商:
- Tushare - 股票数据接口
- AKShare - 财经数据接口
- LangChain - LLM应用框架
- Ant Design - React UI组件库
- ECharts - 数据可视化库
- 项目维护者: [Your Name]
- 邮箱: your.email@example.com
- Issue反馈: GitHub Issues
⭐ 如果这个项目对您有帮助,请给我们一个Star!