GitHub Actions定时运行教程:让daily_stock_analysis自动生成股票分析报告
daily_stock_analysis是一款LLM驱动的A股智能分析器,集成多数据源行情、实时新闻、Gemini决策仪表盘和多渠道推送功能,可帮助投资者零成本实现股票分析报告的自动化生成。本教程将详细介绍如何利用GitHub Actions实现该工具的定时运行,让你每天自动获取专业的股票分析报告。## 准备工作:获取项目代码首先需要将项目代码克隆到本地或直接在GitHub上fork项目。
GitHub Actions定时运行教程:让daily_stock_analysis自动生成股票分析报告
daily_stock_analysis是一款LLM驱动的A股智能分析器,集成多数据源行情、实时新闻、Gemini决策仪表盘和多渠道推送功能,可帮助投资者零成本实现股票分析报告的自动化生成。本教程将详细介绍如何利用GitHub Actions实现该工具的定时运行,让你每天自动获取专业的股票分析报告。
准备工作:获取项目代码
首先需要将项目代码克隆到本地或直接在GitHub上fork项目。打开终端,执行以下命令:
git clone https://gitcode.com/gh_mirrors/da/daily_stock_analysis
cd daily_stock_analysis
配置环境变量
项目的定时任务和分析功能依赖于环境变量配置。在项目根目录下找到.env.example文件,复制一份并重命名为.env,然后根据需要修改其中的配置项。关键配置如下:
定时任务核心配置
# === 定时任务配置 ===
# 是否启用定时任务(true/false)
SCHEDULE_ENABLED=true
# 每日执行时间(HH:MM 格式,24小时制)
SCHEDULE_TIME=18:00
# 启动时是否立即运行一次(默认 true)
SCHEDULE_RUN_IMMEDIATELY=false
关键API配置
为了确保分析功能正常工作,需要配置至少一个AI模型API和数据源API:
# AI模型配置(二选一)
GEMINI_API_KEY=your_gemini_api_key
# 或
ANTHROPIC_API_KEY=your_anthropic_api_key
# 数据源配置(可选)
TUSHARE_TOKEN=your_tushare_token
# 搜索引擎配置(用于获取股票新闻)
TAVILY_API_KEYS=your_tavily_key
SERPAPI_API_KEYS=your_serpapi_key
创建GitHub Actions工作流文件
在项目根目录下创建.github/workflows目录(如果不存在),然后新建一个名为daily_analysis.yml的文件,内容如下:
name: Daily Stock Analysis
on:
schedule:
# 每天18:00运行(UTC时间,北京时间为次日2:00,需根据需要调整)
- cron: '0 10 * * *'
workflow_dispatch: # 允许手动触发
jobs:
analyze:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Configure environment
run: |
# 复制环境变量模板并替换为secrets中的配置
cp .env.example .env
echo "STOCK_LIST=${{ secrets.STOCK_LIST }}" >> .env
echo "GEMINI_API_KEY=${{ secrets.GEMINI_API_KEY }}" >> .env
echo "SCHEDULE_ENABLED=true" >> .env
echo "SCHEDULE_TIME=18:00" >> .env
- name: Run daily analysis
run: python main.py --schedule
配置GitHub Secrets
为了保护敏感信息,需要在GitHub仓库中配置Secrets:
- 进入仓库页面,点击"Settings" -> "Secrets and variables" -> "Actions"
- 点击"New repository secret"按钮添加所需的密钥,如:
STOCK_LIST: 股票代码列表,如"600519,300750,002594"GEMINI_API_KEY: 你的Gemini API密钥TUSHARE_TOKEN: 你的Tushare API令牌(如果使用)
图:在GitHub仓库中配置Secrets,保护敏感信息如API密钥和股票列表
验证定时任务配置
配置完成后,可以手动触发一次工作流来验证配置是否正确:
- 进入GitHub仓库的"Actions"页面
- 选择创建的"Daily Stock Analysis"工作流
- 点击"Run workflow"按钮,选择分支并点击"Run workflow"
查看分析结果
定时任务运行后,分析报告将通过你配置的通知渠道发送(如企业微信、飞书、邮件等)。你也可以在项目的reports目录下找到生成的分析报告文件。
图:daily_stock_analysis生成的大盘复盘报告示例,包含市场情绪、指数点评和资金流向分析
调整定时运行时间
如果需要调整定时运行时间,可以修改工作流文件中的cron表达式。例如,要在每天北京时间18:00运行,对应的UTC时间为10:00,cron表达式为:
schedule:
- cron: '0 10 * * *'
cron表达式格式为分 时 日 月 周,可以根据需要灵活调整。
故障排除
如果定时任务未按预期运行,可以通过以下方式排查问题:
- 检查GitHub Actions日志:在"Actions"页面点击对应的工作流运行,查看详细日志输出
- 验证环境变量配置:确保
.env文件中的必要配置项已正确设置 - 检查API密钥有效性:确认所有API密钥都有效且具有足够权限
图:daily_stock_analysis的FastAPI界面,可用于手动触发分析和查看历史记录
通过以上步骤,你已经成功配置了GitHub Actions定时运行daily_stock_analysis,实现了股票分析报告的自动生成。现在你可以每天自动获取专业的股票分析,及时把握市场动态,做出更明智的投资决策。
如果需要更详细的配置说明,可以参考项目的官方文档:docs/DEPLOY.md 和 docs/full-guide.md。
更多推荐
所有评论(0)