自动化获取多个中证指数股息率数据,生成专业分析报告并通过钉钉机器人分别推送。
- 多指数支持:同时分析多个中证指数数据
- 自动化数据获取:每日定时从网络获取最新的Excel数据
- 智能数据分析:计算关键指标(当前值、均值、极值、分位数等)
- 专业图表生成:生成美观的股息率趋势图
- 个性化报告:HTML格式的专业投资分析报告
- 钉钉独立推送:每个指数生成独立报告并通过钉钉分别发送
- 容错机制:单个指数失败不影响其他指数分析
- 当前股息率水平
- 15日历史均值对比
- 历史分位数分析
- 日内变化趋势
- 投资参考建议
- 多指数对比分析
GitHub Actions → 多指数数据收集 → 并行数据处理 → 图表生成 → 钉钉推送
↓ ↓ ↓ ↓ ↓
定时调度 Excel解析 指标计算 Matplotlib Webhook
├── main_multi_fixed.py # 多指数主程序(简化版,推荐使用)
├── main_multi.py # 多指数主程序(原始版)
├── index_config.py # 指数配置管理模块
├── multi_index_analyzer.py # 多指数分析核心逻辑
├── data_collector.py # 数据收集模块
├── data_processor.py # 数据处理模块
├── report_generator.py # 报告生成模块
├── dingtalk_sender.py # 钉钉发送模块
├── config.md # 配置说明文档
├── DEPLOYMENT_CONFIG.md # 部署配置文档
├── DEPLOYMENT_CHECKLIST.md # 部署检查清单
├── requirements.txt # Python依赖包
├── .github/workflows/
│ └── daily_report.yml # GitHub Actions工作流(已配置钉钉Webhook)
├── reports/ # 生成的报告和图表
├── real_data_reports/ # 历史报告备份
└── test_reports/ # 测试报告
git clone <repository-url>
cd 自动化测试项目已配置钉钉Webhook,无需额外设置。如需修改,请编辑 .github/workflows/daily_report.yml 文件中的 DINGTALK_WEBHOOK 环境变量。
编辑 index_config.py 文件,添加或修改要分析的指数配置。
git add .
git commit -m "部署AI投研助手多指数版本"
git push origin main项目已预配置钉钉Webhook,开箱即用。如需修改:
- 编辑
.github/workflows/daily_report.yml文件 - 修改
DINGTALK_WEBHOOK环境变量值 - 钉钉机器人关键词设置:
AI投研助手、股息率、报告、分析、投资
- 工作流文件:
.github/workflows/daily_report.yml - 执行时间:每天 UTC 23:00(北京时间次日早上 7:00)
- 支持手动触发:Actions 页面点击 "Run workflow"
详细配置说明请查看 config.md 和 DEPLOYMENT_CONFIG.md
默认每天UTC 23:00执行(北京时间次日早上7点)
可通过修改 .github/workflows/daily_report.yml 中的cron表达式调整执行时间。
支持的手动触发:在GitHub Actions页面点击"Run workflow"按钮。
每个指数将收到独立的报告,包含:
- 核心指标卡片
- 股息率趋势图
- 趋势分析
- 投资参考建议
- 总体分析总结报告
- ✅ GitHub Secrets保护:钉钉Webhook URL已迁移到GitHub Secrets,避免代码中明文暴露
- ✅ 环境变量安全:工作流中使用
${{ secrets.DINGTALK_WEBHOOK }}引用,确保敏感信息加密 - ✅ 访问控制:建议在钉钉机器人设置中配置IP白名单,限制只有GitHub Actions的IP可以调用
- ✅ 关键词验证:所有消息必须包含预设关键词:
AI投研助手、股息率、报告、分析、投资
-
GitHub Secrets配置:
- 在仓库Settings → Secrets and variables → Actions中添加
DINGTALK_WEBHOOK - 值为钉钉机器人完整的Webhook URL
- 在仓库Settings → Secrets and variables → Actions中添加
-
钉钉机器人安全加固(推荐):
- 登录钉钉机器人管理后台
- 设置IP白名单:添加GitHub Actions的IP范围
- 启用关键词验证
- ✅ 自动触发:每日报告生成后自动部署到GitHub Pages
- ✅ 公开访问:报告可通过Web链接直接访问
- ✅ 版本管理:每次部署保留历史版本
报告生成后可通过以下链接访问:
https://zironglv.github.io/hlnote/
- 工作流文件:
.github/workflows/deploy-pages.yml - 触发条件:每日报告工作流成功完成后自动触发
- 部署内容:
reports/目录中的所有HTML报告和图表
✅ 已完成清理:
- 删除所有调试文件 (
debug_*.py,debug_*.log,debug_*.png) - 删除所有测试文件 (
test_*.py,test_*.png,test_report.html) - 清理临时目录 (
__pycache__,debug_download,.qoder,.venv,venv) - 保持核心功能文件完整
- 多指数支持
- 钉钉机器人推送
- 集成AI观点分析
- 网络舆情爬取
- 智能加仓/减仓建议
- 更多技术指标
- 移动端推送通知
如有问题请提交Issue或联系维护者。
AI投研助手 - 让投资更有依据