681 lines
22 KiB
Markdown
681 lines
22 KiB
Markdown
# 🤖 复合多AI智能体股票团队分析系统
|
||
|
||
- 初心:在股市摸爬滚打多年,自学自编各种指标,花冤枉钱学习了各种战法各种策略,也曾入各种小班,总是赚少赔多,逐渐失去在股市玩的信心。自从去年deepseek上市,一直探索用ai辅助分析,且近日受tradingagents项目启发(感谢原作),多agent结合跟踪主力资金战法(某指每年收费6000rmb),用各种ai辅助编程,拼凑了这么个小程序,根据软件提供的辅助信息,实盘测试盈率还是挺高的,并且逐步形成了自己的交易系统,近一个月来,账户也慢慢在扭亏为盈。开源此软件的目的,就是为了使像我一样的小散,不再迷茫。也许这个软件不能让你发大财,但是他能给你足够的信心。最后提醒:股市有风险,入市需谨慎!
|
||
- 希望能帮到你!欢迎加微信群讨论
|
||
<img width="300" height="324" alt="image" src="https://www.sd-hn.cn/img/2wm.png" />
|
||
|
||
### 基于Python + Streamlit + DeepSeek的智能股票分析系统,模拟证券公司分析师团队,提供全方位的股票投资分析和决策建议。
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/f929f751-3726-48e6-bc18-919f6a599629" />
|
||
<img width="1910" height="923" alt="01" src="https://github.com/user-attachments/assets/7dcd4b2c-8b4b-428b-8a17-4d843e98a626" />
|
||
<img width="1910" height="923" alt="02" src="https://github.com/user-attachments/assets/02018fff-4e6b-4354-b258-a5da25537c38" />
|
||
|
||
## ✨1008 更新说明
|
||
### 最新更新:增加批量分析功能 ⭐️
|
||
- **批量输入**:支持同时输入多个股票代码(每行一个或逗号分隔)
|
||
- **双模式分析**:
|
||
- 顺序分析:按次序逐个分析,稳定可靠
|
||
- 多线程并行:同时分析多只股票,速度更快(推荐同时3-5只,以防api限流)
|
||
- **对比视图**:横向对比多只股票的关键指标和投资评级
|
||
- **详细卡片**:逐个查看每只股票的完整分析报告
|
||
- **智能筛选**:按评级、涨跌幅、信心度等条件快速筛选
|
||
- **智能筛选**:分析结果自动保存到历史记录
|
||
### 1006增加跟踪主力资金mcp,增加环境配置功能
|
||
### 1005增加股票监测功能,增加历史记录中个股导入到监测板块
|
||
|
||
## ✨ 功能特色
|
||
|
||
### 🎯 多维度分析
|
||
- **技术面分析**:趋势判断、技术指标、支撑阻力位分析
|
||
- **基本面分析**:财务指标、估值分析、行业研究
|
||
- **资金面分析**:资金流向、主力行为、市场情绪
|
||
- **风险管理**:风险识别、风险评估、风险控制策略
|
||
- **市场情绪**:投资者情绪、热点板块、消息面分析
|
||
|
||
### 🤖 AI智能体团队
|
||
- **技术分析师**:专注技术指标和图表分析
|
||
- **基本面分析师**:专注公司价值和行业研究(含13+财务指标)
|
||
- **资金面分析师**:专注资金流向和主力行为
|
||
- **风险管理师**:专注风险识别和控制
|
||
- **市场情绪分析师**:专注市场心理和情绪分析
|
||
- **新闻公告分析师**:专注热点新闻及公告影响分析
|
||
### 📊 完整分析流程
|
||
1. 📈 获取股票数据(支持A股和美股)
|
||
2. 📊 获取详细数据(三大报表+财务指标+20日资金数据+新闻+公告)
|
||
3. 🔍 多智能体并行分析
|
||
4. 🤝 团队综合讨论
|
||
5. 📋 最终投资决策
|
||
6. 🎯 操作建议和风险提示
|
||
7. 📄 PDF报告导出
|
||
|
||
### 🔥 批量分析功能(新增)⭐️
|
||
- **批量输入支持**:一次性输入多只股票代码
|
||
- **两种分析模式**:
|
||
- 顺序分析:稳定可靠,适合少量股票
|
||
- 多线程并行:快速高效,适合大量股票(最多3个并发)
|
||
- **实时进度显示**:清晰展示每只股票的分析进度和状态
|
||
- **对比分析表格**:
|
||
- 横向对比多只股票的关键指标
|
||
- 投资评级可视化(买入/持有/卖出)
|
||
- 智能筛选和排序功能
|
||
- **详细卡片视图**:逐个查看完整的分析报告
|
||
- **批量保存**:所有分析结果自动保存到数据库
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/836d758f-df6d-44a1-b64a-fd6ad442cb0f" />
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/903a64c7-7018-44dd-aa87-af4f7904048c" />
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/d9878153-d743-4d65-9575-62ac37f8cbfb" />
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/1c1c27af-1fe8-46e8-9e4a-68ead604a24d" />
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/242ee212-ba6c-4e0a-ae16-47aff3f356e6" />
|
||
|
||
|
||
### 🔍 实时监测功能
|
||
- **智能监测**:自动监控股票价格变动
|
||
- **关键位置提醒**:进场区间、止盈位、止损位触发通知
|
||
- **自定义间隔**:30秒至300秒灵活设置
|
||
- **多种通知方式**:网页提醒 + 邮件通知
|
||
- **卡片式管理**:直观的股票监测卡片展示
|
||
- **完整功能**:添加、编辑、删除、启停、通知开关
|
||
- **一键加入监测**:支持历史记录中一键加入监测功能
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/ca39f4c6-5922-4df5-b38f-8a45a3dbdfb9" />
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/1463fc59-05aa-4201-a4aa-15e6da373cb7" />
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/a283fcf9-5ea9-42e5-876f-82920a74dd33" />
|
||
|
||
|
||
### 🤖 量化交易功能(MiniQMT集成)
|
||
- **自动交易执行**:监测触发后自动下单
|
||
- **智能仓位管理**:灵活配置单股最大仓位比例
|
||
- **多种订单类型**:市价单、限价单、止损单支持
|
||
- **风险控制**:自动止损、止盈功能
|
||
- **持仓监控**:实时查看持仓和盈亏
|
||
- **预留接口**:完整的MiniQMT对接接口,可对接真实交易
|
||
<img width="1907" height="919" alt="image" src="https://github.com/user-attachments/assets/ea499f1e-5c11-4596-a359-d14de77bff9b" />
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/a85defbf-321a-4fe2-b491-6855f2aa366c" />
|
||
<img width="1869" height="906" alt="image" src="https://github.com/user-attachments/assets/d59de299-6300-4669-9902-7754da7407db" />
|
||
|
||
### 📧 邮件通知系统
|
||
- **多邮箱支持**:QQ邮箱、163邮箱、Gmail等
|
||
- **触发条件**:
|
||
- 价格进入进场区间
|
||
- 达到止盈位
|
||
- 触及止损位
|
||
- **测试功能**:一键测试邮件配置
|
||
- **历史记录**:完整的通知历史查询
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/a1a3c1ca-f97f-43eb-a043-1011c09e06d0" />
|
||
<img width="1910" height="923" alt="image" src="https://github.com/user-attachments/assets/1808f284-e922-4eac-bfea-134996de93f1" />
|
||
### 🎨 现代化界面
|
||
- **渐变背景设计**:专业的紫色渐变配色
|
||
- **响应式布局**:支持桌面、平板、手机
|
||
- **实时数据可视化**:Plotly交互式图表
|
||
- **卡片式展示**:清晰的信息模块化
|
||
- **动画交互**:流畅的悬停和过渡效果
|
||
|
||
## 🚀 快速开始
|
||
|
||
### 部署方式选择
|
||
|
||
本系统支持两种部署方式:
|
||
- **🐳 Docker部署(推荐)**:一键启动,环境隔离,适合所有用户
|
||
- **💻 本地部署**:传统方式,适合开发者
|
||
|
||
---
|
||
|
||
## 🐳 方式一:Docker 部署(推荐)⭐️
|
||
|
||
### 优势
|
||
- ✅ 无需配置Python和Node.js环境
|
||
- ✅ 一键启动,开箱即用
|
||
- ✅ 环境隔离,不影响系统
|
||
- ✅ 跨平台支持(Windows/macOS/Linux)
|
||
- ✅ 自动重启,稳定可靠
|
||
|
||
### 前置要求
|
||
- Docker 20.10+
|
||
- Docker Compose 2.0+(推荐)
|
||
- DeepSeek API Key
|
||
|
||
### 快速开始
|
||
|
||
#### 1. 安装 Docker
|
||
- **Windows/macOS**: 下载安装 [Docker Desktop](https://www.docker.com/products/docker-desktop/)
|
||
- **Linux**:
|
||
```bash
|
||
curl -fsSL https://get.docker.com -o get-docker.sh
|
||
sudo sh get-docker.sh
|
||
```
|
||
|
||
#### 2. 配置环境变量
|
||
```bash
|
||
# Windows (PowerShell)
|
||
Copy-Item .env.example .env
|
||
|
||
# Linux/macOS
|
||
cp .env.example .env
|
||
```
|
||
|
||
编辑 `.env` 文件,填入您的 DeepSeek API Key:
|
||
```env
|
||
DEEPSEEK_API_KEY=sk-your-actual-api-key-here
|
||
```
|
||
|
||
#### 3. 启动服务
|
||
```bash
|
||
# 使用 Docker Compose(推荐)
|
||
docker-compose up -d
|
||
|
||
# 或使用 Docker 命令
|
||
docker build -t agentsstock1 .
|
||
docker run -d -p 8503:8501 -v $(pwd)/.env:/app/.env --name agentsstock1 agentsstock1
|
||
```
|
||
|
||
#### 4. 访问系统(为避免端口冲突,已将运行端口改为8503)
|
||
打开浏览器访问:http://localhost:8503
|
||
|
||
#### 5. 常用命令
|
||
```bash
|
||
# 查看日志
|
||
docker-compose logs -f
|
||
|
||
# 停止服务
|
||
docker-compose down
|
||
|
||
# 重启服务
|
||
docker-compose restart
|
||
```
|
||
|
||
**📖 详细文档**:查看 [DOCKER_DEPLOYMENT.md](DOCKER_DEPLOYMENT.md) 获取完整的Docker部署指南和故障排除。
|
||
|
||
---
|
||
|
||
## 💻 方式二:本地部署
|
||
|
||
### 1. 环境要求
|
||
- Python 3.8+(微软store或官网,推荐3.12)
|
||
- Node.js 16+ (微软store或官网,pywencai需要)
|
||
- 稳定的网络连接(大陆网络请关闭vpn)
|
||
- DeepSeek API Key
|
||
|
||
### 2. 安装依赖
|
||
创建激活虚拟环境(powershell)并安装依赖
|
||
```bash
|
||
python -m venv venv
|
||
.\venv\Scripts\Activate.ps1
|
||
pip install -r requirements.txt
|
||
```
|
||
|
||
### 3. 配置API
|
||
|
||
#### 方法一:使用环境变量文件(推荐)
|
||
1. 复制环境变量模板文件:
|
||
```bash
|
||
# Windows (PowerShell)
|
||
Copy-Item .env.example .env
|
||
|
||
# 或者使用命令
|
||
cp .env.example .env
|
||
```
|
||
|
||
2. 编辑 `.env` 文件,设置您的配置(也可在前端web界面-环境配置中设置):
|
||
```env
|
||
# DeepSeek API配置(必需)
|
||
DEEPSEEK_API_KEY=your_actual_deepseek_api_key_here
|
||
|
||
# 邮件通知配置(可选)
|
||
EMAIL_ENABLED=false
|
||
SMTP_SERVER=smtp.qq.com
|
||
SMTP_PORT=587
|
||
EMAIL_FROM=your_email@qq.com
|
||
EMAIL_PASSWORD=your_authorization_code
|
||
EMAIL_TO=receiver@example.com
|
||
|
||
# MiniQMT量化交易配置(可选)
|
||
MINIQMT_ENABLED=false
|
||
MINIQMT_ACCOUNT_ID=your_account_id
|
||
MINIQMT_HOST=127.0.0.1
|
||
MINIQMT_PORT=58610
|
||
```
|
||
|
||
#### 方法二:设置系统环境变量
|
||
您也可以直接在系统环境变量中设置:
|
||
- 变量名:`DEEPSEEK_API_KEY`
|
||
- 变量值:您的API密钥
|
||
|
||
**注意**:环境变量文件的优先级高于系统环境变量。
|
||
|
||
### 4. 启动系统
|
||
```bash
|
||
.\venv\Scripts\Activate.ps1
|
||
python run.py
|
||
```
|
||
或者直接运行:
|
||
```bash
|
||
.\venv\Scripts\Activate.ps1
|
||
streamlit run app.py
|
||
```
|
||
|
||
### 5. 访问系统
|
||
打开浏览器访问:http://localhost:8501
|
||
|
||
---
|
||
|
||
## 📊 使用指南
|
||
|
||
### 股票代码格式(美股暂不支持)
|
||
- **美股**:AAPL, MSFT, GOOGL, TSLA, NVDA
|
||
- **A股**:000001, 600036, 000002, 600519
|
||
|
||
### 单个股票分析流程
|
||
1. 选择"单个分析"模式
|
||
2. 在输入框中输入股票代码
|
||
3. 选择要参与分析的分析师团队
|
||
4. 点击"开始分析"按钮
|
||
5. 等待AI分析师团队完成分析
|
||
6. 查看各维度分析报告
|
||
7. 阅读团队讨论结果
|
||
8. 获取最终投资决策
|
||
|
||
### 批量股票分析流程 ⭐️ 新增
|
||
1. **选择批量分析模式**
|
||
- 点击"批量分析"单选按钮
|
||
- 选择分析模式:顺序分析 或 多线程并行
|
||
|
||
2. **输入股票代码**
|
||
- 支持多种格式:
|
||
```
|
||
# 每行一个代码
|
||
000001
|
||
600036
|
||
600519
|
||
|
||
# 或逗号分隔
|
||
000001, 600036, 600519
|
||
|
||
# 或空格分隔
|
||
000001 600036 600519
|
||
```
|
||
|
||
3. **配置分析参数**
|
||
- 选择数据周期(1y, 6mo, 3mo, 1mo)
|
||
- 选择要参与的分析师团队
|
||
|
||
4. **开始批量分析**
|
||
- 点击"开始批量分析"按钮
|
||
- 系统会实时显示分析进度
|
||
- 每只股票的分析状态都会更新
|
||
|
||
5. **查看分析结果**
|
||
- **对比表格模式**:
|
||
- 横向对比所有股票的关键指标
|
||
- 投资评级用颜色标识(绿色=买入,黄色=持有,红色=卖出)
|
||
- 可按评级筛选
|
||
- 可按涨跌幅、信心度、RSI等排序
|
||
|
||
- **详细卡片模式**:
|
||
- 从下拉列表选择要查看的股票
|
||
- 查看完整的分析报告
|
||
- 包含图表、各分析师意见、团队讨论、最终决策
|
||
|
||
6. **结果管理**
|
||
- 所有分析结果自动保存到历史记录
|
||
- 点击"清除结果"可清空当前批量分析结果
|
||
- 失败的股票会单独列出,显示失败原因
|
||
|
||
### 批量分析使用技巧
|
||
- **建议数量**:一次分析不超过20只股票
|
||
- **模式选择**:
|
||
- 3-5只股票:建议使用顺序分析,更稳定
|
||
- 6只以上:建议使用多线程并行,更快速
|
||
- **注意事项**:
|
||
- 多线程模式最多3个并发,避免API限流
|
||
- 批量分析时间较长,请耐心等待
|
||
- 可在历史记录中查看所有分析结果
|
||
|
||
### 结果解读
|
||
- **投资评级**:买入/持有/卖出
|
||
- **目标价位**:预期价格目标
|
||
- **操作建议**:具体交易策略
|
||
- **进出场位置**:关键价位点
|
||
- **止盈止损**:风险控制位置
|
||
- **风险提示**:主要风险因素
|
||
|
||
### 实时监测功能
|
||
|
||
#### 快速开始
|
||
1. 点击侧边栏"📊 实时监测"按钮
|
||
2. 在监测管理页面点击"添加监测股票"
|
||
3. 填写股票信息和监测参数
|
||
4. 点击"▶️ 启动监测"开始自动监控
|
||
|
||
#### 添加监测股票
|
||
**必填信息**:
|
||
- **股票代码**:6位A股代码或美股字母代码
|
||
- **股票名称**:便于识别
|
||
- **投资评级**:买入/持有/卖出
|
||
|
||
**监测参数**:
|
||
- **进场区间**:设置最小和最大价格
|
||
- 当股票价格进入该区间时触发通知
|
||
- 用于把握最佳买入时机
|
||
- **止盈位**:目标卖出价格
|
||
- 价格达到或超过该值时提醒
|
||
- 帮助锁定收益
|
||
- **止损位**:最大亏损价格
|
||
- 价格跌破该值时立即提醒
|
||
- 控制投资风险
|
||
- **检查间隔**:30-300秒
|
||
- 监测频率,建议60秒以上
|
||
- 避免过于频繁的API调用
|
||
|
||
#### 管理监测股票
|
||
**查看功能**:
|
||
- 📊 实时价格显示
|
||
- 📈 涨跌幅展示
|
||
- ⏰ 最后检查时间
|
||
- 🔔 通知状态
|
||
|
||
**操作按钮**:
|
||
- 🔄 **更新**:手动刷新当前价格
|
||
- ✏️ **编辑**:修改监测参数
|
||
- 🔔/🔕 **通知开关**:启用/禁用通知
|
||
- 🗑️ **删除**:移除监测
|
||
|
||
**批量操作**:
|
||
- ▶️ 启动监测:开始后台自动监控所有股票
|
||
- ⏹️ 停止监测:暂停监控服务
|
||
- 🔄 刷新状态:更新显示信息
|
||
|
||
#### 通知系统
|
||
|
||
**网页通知**:
|
||
- 自动在界面显示提醒
|
||
- 实时查看通知历史
|
||
- 支持标记已读和清空
|
||
|
||
**邮件通知配置**:
|
||
|
||
1. **编辑.env文件**:
|
||
```env
|
||
EMAIL_ENABLED=true
|
||
SMTP_SERVER=smtp.qq.com
|
||
SMTP_PORT=587
|
||
EMAIL_FROM=your_email@qq.com
|
||
EMAIL_PASSWORD=your_authorization_code
|
||
EMAIL_TO=receiver@example.com
|
||
```
|
||
|
||
2. **获取邮箱授权码**:
|
||
- **QQ邮箱**:设置 → 账户 → POP3/IMAP/SMTP → 生成授权码
|
||
- **163邮箱**:设置 → POP3/SMTP/IMAP → 开启服务 → 设置授权密码
|
||
- **Gmail**:开启两步验证 → 生成应用专用密码
|
||
|
||
3. **测试邮件配置**:
|
||
- 进入"通知管理"区域
|
||
- 点击"📧 发送测试邮件"
|
||
- 检查收件箱(含垃圾箱)
|
||
|
||
**通知触发条件**:
|
||
- ✅ 价格进入进场区间 → 进场提醒
|
||
- ✅ 价格达到止盈位 → 止盈提醒
|
||
- ✅ 价格跌破止损位 → 止损提醒
|
||
|
||
#### 使用技巧
|
||
|
||
**参数设置建议**:
|
||
- **进场区间**:根据技术分析设定支撑位和阻力位
|
||
- **止盈位**:建议设置10-20%的盈利目标
|
||
- **止损位**:建议设置5-10%的止损线
|
||
- **检查间隔**:
|
||
- 长线投资:180-300秒
|
||
- 短线交易:30-60秒
|
||
|
||
**监测策略**:
|
||
1. 分析后添加到监测列表
|
||
2. 设置合理的进场区间等待买入信号
|
||
3. 买入后调整为止盈/止损监测
|
||
4. 收到通知后及时决策
|
||
|
||
**注意事项**:
|
||
- ⚠️ 监测间隔不要设置太短,避免频繁API调用
|
||
- ⚠️ 邮件通知有延迟,不适用于高频交易
|
||
- ⚠️ 定期检查监测服务运行状态
|
||
- ⚠️ 及时处理触发的通知,避免错过时机
|
||
|
||
## 🏗️ 系统架构
|
||
|
||
```
|
||
AI股票分析系统
|
||
├── app.py # Streamlit主界面
|
||
├── stock_data.py # 股票数据获取模块
|
||
├── deepseek_client.py # DeepSeek API客户端
|
||
├── ai_agents.py # AI智能体分析模块
|
||
├── monitor_manager.py # 监测管理界面
|
||
├── monitor_service.py # 监测服务后台
|
||
├── monitor_db.py # 监测数据库管理
|
||
├── notification_service.py # 通知服务(邮件/界面)
|
||
├── miniqmt_interface.py # MiniQMT量化交易接口 ⭐️
|
||
├── pdf_generator.py # PDF报告生成
|
||
├── database.py # 分析记录数据库
|
||
├── config.py # 配置文件
|
||
├── requirements.txt # 依赖包列表
|
||
├── run.py # 启动脚本
|
||
├── Dockerfile # Docker镜像构建文件 🐳
|
||
├── docker-compose.yml # Docker编排配置文件 🐳
|
||
├── .dockerignore # Docker构建忽略文件 🐳
|
||
└── DOCKER_DEPLOYMENT.md # Docker部署详细文档 🐳
|
||
```
|
||
|
||
### 核心模块说明
|
||
|
||
#### 📈 股票数据模块 (stock_data.py)
|
||
- 支持A股和美股数据获取
|
||
- 集成yfinance和akshare数据源
|
||
- 自动计算技术指标(MA、RSI、MACD、KDJ等)
|
||
- 获取详细财务数据(三大报表+13+财务指标)
|
||
- 数据清洗和格式化
|
||
|
||
#### 🤖 AI智能体模块 (ai_agents.py)
|
||
- 多个专业分析师AI角色
|
||
- 并行分析处理
|
||
- 团队讨论机制
|
||
- 最终决策生成
|
||
- 财务数据深度解读
|
||
|
||
#### 🔗 API客户端 (deepseek_client.py)
|
||
- DeepSeek API封装
|
||
- 智能对话管理
|
||
- 错误处理和重试
|
||
- 响应格式解析
|
||
- 支持多模型切换
|
||
|
||
#### 🔍 监测管理模块 (monitor_manager.py)
|
||
- 股票监测管理界面
|
||
- 添加/编辑/删除监测
|
||
- 卡片式展示
|
||
- 搜索和筛选功能
|
||
- 通知历史管理
|
||
|
||
#### ⚙️ 监测服务模块 (monitor_service.py)
|
||
- 后台监测线程
|
||
- 定时价格检查
|
||
- 触发条件判断
|
||
- 自动通知发送
|
||
- 启动/停止控制
|
||
|
||
#### 💾 监测数据库 (monitor_db.py)
|
||
- SQLite数据持久化
|
||
- 监测股票表
|
||
- 价格历史表
|
||
- 通知记录表
|
||
- CRUD操作接口
|
||
|
||
#### 📧 通知服务模块 (notification_service.py)
|
||
- 邮件通知发送
|
||
- 网页通知展示
|
||
- 多邮箱支持(QQ/163/Gmail)
|
||
- 通知历史管理
|
||
- 配置测试功能
|
||
|
||
#### 🤖 量化交易模块 (miniqmt_interface.py) ⭐️ 新增
|
||
- MiniQMT接口对接
|
||
- 自动交易执行
|
||
- 仓位管理
|
||
- 风险控制
|
||
- 订单管理
|
||
- 持仓监控
|
||
- 预留接口实现
|
||
|
||
#### 📄 PDF生成模块 (pdf_generator.py)
|
||
- 专业分析报告生成
|
||
- 中文字体支持
|
||
- 完整分析内容
|
||
- 一键下载功能
|
||
|
||
#### 🎨 前端界面 (app.py)
|
||
- 现代化渐变UI设计
|
||
- 响应式布局
|
||
- 三大功能模块(分析/监测/历史)
|
||
- 实时数据可视化
|
||
- 交互式操作
|
||
- 美观的动画效果
|
||
|
||
## 📋 技术特性
|
||
|
||
### 数据源
|
||
- **美股数据**:Yahoo Finance (yfinance)
|
||
- **A股数据**:AKShare免费接口
|
||
- **技术指标**:TA-Lib技术分析库
|
||
|
||
### AI模型
|
||
- **语言模型**:DeepSeek Chat API
|
||
- **分析框架**:多智能体协作
|
||
- **决策逻辑**:综合评分机制
|
||
|
||
### 可视化
|
||
- **图表库**:Plotly交互式图表
|
||
- **K线图**:蜡烛图with技术指标
|
||
- **指标图**:RSI、MACD、布林带等
|
||
|
||
### 性能优化
|
||
- **数据缓存**:Streamlit缓存机制
|
||
- **异步处理**:并行分析提升效率
|
||
- **错误处理**:完善的异常处理机制
|
||
|
||
## ⚙️ 高级配置
|
||
|
||
### API配置
|
||
```env
|
||
# .env 文件
|
||
DEEPSEEK_API_KEY=your_api_key
|
||
DEEPSEEK_BASE_URL=https://api.deepseek.com/v1
|
||
```
|
||
|
||
**重要提示**:
|
||
- 请将 `.env.template` 复制为 `.env` 文件
|
||
- 在 `.env` 文件中填写实际的API密钥
|
||
- 不要将 `.env` 文件提交到版本控制系统
|
||
|
||
### 数据配置
|
||
```python
|
||
DEFAULT_PERIOD = "1y" # 默认数据周期
|
||
DEFAULT_INTERVAL = "1d" # 默认数据间隔
|
||
```
|
||
|
||
### 系统参数
|
||
- **缓存时间**:300秒(5分钟)
|
||
- **API超时**:30秒
|
||
- **最大重试**:3次
|
||
|
||
## 🛠️ 故障排除
|
||
|
||
### 常见问题
|
||
|
||
1. **API Key错误**
|
||
- 检查.env文件中的DEEPSEEK_API_KEY设置
|
||
- 确保.env文件存在且格式正确
|
||
- 确保API Key有效且有足够余额
|
||
|
||
2. **股票数据获取失败**
|
||
- 检查网络连接
|
||
- 确认股票代码格式正确(A股6位数字,美股字母代码)
|
||
- 可能是数据源临时不可用,稍后重试
|
||
|
||
3. **财务数据获取失败**
|
||
- 部分新股可能没有完整财务数据
|
||
- 网络问题可能导致数据获取超时
|
||
- 系统会自动处理,继续进行其他分析
|
||
|
||
4. **依赖包安装失败**
|
||
- 使用 `pip install -r requirements.txt`
|
||
- 如有问题,尝试手动安装单个包
|
||
- 确保Python版本为3.8+
|
||
|
||
5. **页面加载缓慢**
|
||
- 首次运行需要下载数据,请耐心等待
|
||
- 系统有5分钟缓存,重复查询会更快
|
||
- 财务数据获取较慢,约需10-20秒
|
||
|
||
6. **分析过程中出错**
|
||
- 检查网络连接是否稳定
|
||
- 查看终端输出的详细错误信息
|
||
- 尝试重新启动应用
|
||
|
||
7. **MiniQMT连接失败**
|
||
- 确认MiniQMT客户端已启动
|
||
- 检查账户已登录
|
||
- 验证账户ID配置正确
|
||
- 确认网络连接正常
|
||
- 查看 `MINIQMT_INTEGRATION_GUIDE.md` 详细指南
|
||
|
||
8. **量化交易未执行**
|
||
- 确认量化功能已启用
|
||
- 检查MiniQMT连接状态
|
||
- 验证监测服务是否运行
|
||
- 查看通知记录中的错误信息
|
||
- 确认交易时间在交易日内
|
||
|
||
9. **Docker部署问题** 🐳
|
||
- **容器启动失败**:
|
||
- 检查Docker是否正常运行:`docker ps`
|
||
- 查看容器日志:`docker-compose logs -f`
|
||
- 确认.env文件已正确配置
|
||
- **端口被占用**:
|
||
- 修改docker-compose.yml中的端口映射(如改为8502:8501)
|
||
- **无法访问网页**:
|
||
- 确认容器正在运行:`docker ps`
|
||
- 检查防火墙设置
|
||
- 尝试访问:http://localhost:8501
|
||
- **数据库权限问题**(Linux/macOS):
|
||
- 修改数据库文件权限:`chmod 666 *.db`
|
||
- **Node.js相关错误**:
|
||
- 容器内已集成Node.js环境,无需额外配置
|
||
- 进入容器检查:`docker exec -it agentsstock1 bash`
|
||
- **详细文档**:查看 `DOCKER_DEPLOYMENT.md` 获取完整的故障排除指南
|
||
|
||
### 日志调试
|
||
系统运行时会在控制台输出详细日志,可用于问题诊断。如遇到错误,请查看终端输出。
|
||
|
||
**Docker部署日志查看**:
|
||
```bash
|
||
# 实时查看日志
|
||
docker-compose logs -f
|
||
|
||
# 或查看特定容器日志
|
||
docker logs -f agentsstock1
|
||
```
|
||
|
||
### 错误报告
|
||
如发现bug,请查看 `BUGFIX.md` 文件了解已知问题和解决方案。
|
||
|
||
## 📜 免责声明
|
||
|
||
本系统仅供学习和研究使用,不构成投资建议。股票投资有风险,入市需谨慎。使用本系统进行投资决策的风险由用户自行承担。
|
||
|
||
## 🤝 贡献指南
|
||
|
||
欢迎提交Issue和Pull Request!
|
||
|
||
## 📄 许可证
|
||
|
||
MIT License
|
||
|
||
---
|
||
|
||
**享受AI驱动的智能股票分析体验!** 🚀📈任何疑问请留言或联系ws3101001@126.com
|