Files

10 KiB
Raw Permalink Blame History

持仓定时分析功能 - 使用指南

📖 功能概述

持仓定时分析功能允许您:

  • 管理持仓股票:添加、编辑、删除持仓股票清单
  • 批量分析:一次性分析所有持仓股票的投资价值
  • 定时任务:设置每日自动分析时间
  • 自动监测:分析结果自动同步到实时监测列表
  • 通知提醒:邮件或Webhook接收分析完成通知
  • 历史记录:查看每只股票的历史分析结果

🚀 快速开始

1. 安装依赖

确保已安装以下依赖包:

pip install schedule
pip install openai  # DeepSeek API使用

2. 访问功能

  1. 启动应用:streamlit run app.py
  2. 点击侧边栏**"📊 持仓分析"**按钮
  3. 进入持仓管理界面

📝 功能详解

一、持仓管理

添加股票

  1. 点击**" 添加持仓股票"**展开表单
  2. 填写股票信息:
    • 股票代码(必填):例如 600519.SH000001.SZAAPL
    • 股票名称(可选):例如 贵州茅台,留空自动获取
    • 成本价(可选):您的买入价格
    • 持仓数量(可选):持仓股数
    • 备注:记录买入理由等信息
    • 自动同步监测:勾选后分析结果自动加入监测列表
  3. 点击**" 添加股票"**完成

编辑股票

  1. 在股票卡片中点击**"✏️"**按钮
  2. 修改信息后点击**"保存"**
  3. 或点击**"取消"**放弃修改

删除股票

  1. 在股票卡片中点击**"🗑️"**按钮
  2. 确认删除(不可恢复)

二、批量分析

立即分析

  1. 切换到**"🔄 批量分析"**标签
  2. 选择分析模式:
    • 顺序分析:逐个分析,稳定但较慢
    • 并行分析:同时分析多只,速度快但消耗资源更多
  3. 设置选项:
    • 自动同步到监测:勾选后自动将评级结果添加到监测列表
    • 发送完成通知:勾选后通过邮件/Webhook发送结果
  4. 点击**"🚀 立即开始分析"**
  5. 等待进度完成,查看分析结果

分析结果

  • 概况统计:总数、成功、失败、耗时
  • 详细结果:每只股票的评级、进场区间、止盈止损位
  • 颜色标识
    • 🟢 绿色:买入推荐
    • 🟡 黄色:持有观望
    • 🔴 红色:卖出建议

三、定时任务

配置定时分析

  1. 切换到**" 定时任务"**标签
  2. 配置定时时间(支持多个时间点):
    • 查看当前已配置的时间列表
    • 点击**" 添加定时时间"**添加新时间点(如 09:30, 15:05
    • 点击时间旁的**"🗑️"**按钮删除不需要的时间
    • 系统自动按时间排序,支持2-5个时间点
  3. 配置分析选项
    • 分析模式:顺序或并行
    • 并行线程数:并行模式下的同时分析数量(2-10
    • 自动同步到监测:是否自动将结果同步到监测列表
    • 发送完成通知:是否发送通知
  4. 点击**"💾 更新配置"**保存

推荐配置

  • 保守型:09:25(盘前) + 15:05(盘后)
  • 积极型:09:30(开盘) + 13:05(午盘) + 15:05(收盘)
  • 详见:docs/MULTI_SCHEDULE_GUIDE.md

启动/停止调度器

  • 启动:点击**"▶️ 启动调度器"**,系统将在每日设定时间自动执行分析
  • 停止:点击**"⏹️ 停止调度器"**,取消自动执行
  • 立即执行:点击**"🚀 立即执行一次"**,无需等待定时触发

查看状态

  • 🟢 运行中:调度器已启动
  • 🔴 已停止:调度器未运行
  • 分析时间:设定的每日执行时间
  • ⏭️ 下次运行:下次预计执行的时间

四、分析历史

查看历史记录

  1. 切换到**"📈 分析历史"**标签
  2. 选择股票:
    • 全部:显示所有股票的最新20条记录
    • 指定股票:显示该股票的最近20次分析
  3. 展开记录查看详情:
    • 投资评级和置信度
    • 进场区间、目标价
    • 止盈位、止损位
    • 分析摘要

历史数据用途

  • 对比变化:观察评级和位置的变化趋势
  • 验证准确性:对比历史预测与实际走势
  • 优化策略:根据历史数据调整投资决策

⚙️ 高级配置

通知配置

邮件通知

  1. 进入**"⚙️ 环境配置"**
  2. 配置SMTP信息:
    EMAIL_ENABLED=true
    SMTP_SERVER=smtp.example.com
    SMTP_PORT=587
    EMAIL_FROM=your@email.com
    EMAIL_PASSWORD=your_password
    EMAIL_TO=receiver@email.com
    

Webhook通知(钉钉/飞书)

  1. 获取群机器人Webhook URL
  2. 配置环境变量:
    WEBHOOK_ENABLED=true
    WEBHOOK_URL=https://your_webhook_url
    WEBHOOK_TYPE=dingtalk  # 或 feishu
    WEBHOOK_KEYWORD=aiagents通知
    

数据存储

  • 持仓数据库portfolio_stocks.db
    • 持仓股票信息
    • 分析历史记录
  • 监测数据库stock_monitor.db
    • 自动同步的监测股票

数据备份

建议定期备份数据库文件:

# Windows
copy portfolio_stocks.db portfolio_stocks_backup_%date%.db

# Linux/Mac
cp portfolio_stocks.db portfolio_stocks_backup_$(date +%Y%m%d).db

💡 使用技巧

1. 合理配置持仓清单

  • 精选股票:只添加重点关注的股票(建议10-30只)
  • 完善信息:填写成本价和数量,便于计算收益
  • 详细备注:记录买入理由、目标价等,便于复盘

2. 选择合适的分析模式

  • 顺序分析

    • 稳定可靠,API调用有序
    • 适合API限速严格的场景
    • 速度较慢,10只股票约需10-15分钟
  • 并行分析

    • 速度快,3线程约5-8分钟完成10只
    • 适合持仓较多的用户
    • 对API并发要求高,可能触发限速

建议

  • 持仓≤10只:顺序分析
  • 持仓>10只:并行分析(3-5线程)

3. 设置合理的定时时间

推荐定时配置:

  • 开盘后分析09:35(开盘5分钟后,数据稳定)
  • 午盘后分析13:05(午盘结束后,评估上午走势)
  • 收盘后分析15:05(收盘后,获取完整日数据)

4. 充分利用自动监测

  • 开启**"自动同步到监测"**
  • 分析后自动将进场区间、止盈止损同步到监测列表
  • 实时监测模块会在触发关键位置时发送通知
  • 减少手动操作,不遗漏交易机会

5. 定期查看历史记录

  • 每周查看一次历史分析
  • 对比预测与实际走势
  • 总结规律,优化投资策略

🔧 常见问题

Q1: 添加股票后为什么无法分析?

A: 检查以下几点:

  1. DeepSeek API Key是否配置正确
  2. 股票代码格式是否正确(A股需要加.SH.SZ后缀)
  3. 网络连接是否正常
  4. API额度是否充足

Q2: 定时任务为什么没有执行?

A: 可能原因:

  1. 调度器未启动(检查是否显示🟢运行中)
  2. 应用已关闭(调度器需要应用持续运行)
  3. 时间配置错误(检查系统时间和设定时间)

解决方案

  • 保持Streamlit应用运行(可使用nohupscreen后台运行)
  • 或使用外部定时工具(如系统cron)调用分析接口

Q3: 批量分析失败率高怎么办?

A: 优化建议:

  1. 切换到顺序分析模式
  2. 减少并行线程数
  3. 检查网络稳定性
  4. 确认股票代码有效性
  5. 查看错误日志定位具体问题

Q4: 如何导出分析结果?

A: 方法:

  1. 通过邮件/Webhook接收结果
  2. 直接查询portfolio_stocks.db数据库:
    SELECT * FROM portfolio_analysis_history ORDER BY analysis_time DESC;
    
  3. 未来版本将支持CSV/Excel导出功能

Q5: 监测同步不生效?

A: 检查:

  1. 持仓股票是否勾选**"自动监测"**
  2. 分析是否成功(失败的分析不会同步)
  3. 分析结果是否包含进场区间和止盈止损(缺失则跳过)
  4. 查看日志确认同步结果

📊 性能参数

分析速度参考

持仓数量 顺序分析 并行(3线程) 并行(5线程)
5只 5-8分钟 3-4分钟 2-3分钟
10只 10-15分钟 6-8分钟 4-5分钟
20只 20-30分钟 12-15分钟 8-10分钟
30只 30-45分钟 18-22分钟 12-15分钟

实际速度取决于网络环境和API响应时间

资源消耗

  • 内存:基础50MB + 每线程10MB
  • CPU:单线程<5%,多线程<20%
  • 网络:每只股票约2-5MB数据传输
  • 数据库:每条历史记录约1-2KB

🎯 最佳实践

日常使用流程

  1. 早晨(开盘前)

    • 查看昨日定时分析结果(如有)
    • 检查监测列表的通知
    • 决定今日交易计划
  2. 盘中(交易时段)

    • 关注监测列表的实时提醒
    • 根据进场区间执行买入
    • 按照止盈止损位纪律卖出
  3. 收盘后

    • 回顾今日交易
    • 更新持仓信息(新增/删除股票)
    • 查看分析历史,总结经验

长期投资策略

  1. 建立核心持仓清单10-20只优质股票)
  2. 设置定时分析(每日收盘后15:05
  3. 开启自动监测同步
  4. 每周回顾历史记录,调整持仓
  5. 每月总结投资表现,优化策略

短线交易策略

  1. 快速轮换持仓清单5-10只热门股)
  2. 多次盘中分析(开盘后、午盘后)
  3. 立即同步监测,捕捉买卖点
  4. 及时更新持仓(止盈/止损后删除)
  5. 灵活调整,跟随市场热点

📞 技术支持

获取帮助

  • 查看日志:检查终端输出的[OK]/[ERROR]消息
  • 数据库工具:使用SQLite Browser查看数据库
  • 问题反馈:在项目GitHub提交Issue

调试模式

开启详细日志:

# portfolio_scheduler.py 顶部添加
import logging
logging.basicConfig(level=logging.DEBUG)

📝 更新日志

v1.0.0 (2024-01)

  • 持仓股票管理(增删改查)
  • 批量分析功能(顺序/并行模式)
  • 定时任务调度器
  • 自动监测同步
  • 邮件/Webhook通知
  • 分析历史记录

未来计划

  • 收益率统计和可视化
  • CSV/Excel导入导出
  • 自定义分析指标
  • 组合优化建议
  • 风险敞口分析

🙏 感谢使用

持仓定时分析功能旨在帮助您更高效地管理投资组合,做出明智的投资决策。

祝您投资顺利!📈