基于 LightGBM 回归模型的次日涨跌预测 · 全流程技术文档
| 表名 | 说明 | 更新频率 | 记录数 |
|---|---|---|---|
stock_candidates |
候选股票池,按热度、换手率排名取前40只 | 每日 | ≈40/天 |
stock_kline_ta |
全市场日K线 + Pandas TA技术指标(MA、RSI、MACD、布林带、ATR等) | 每日收盘后 | ≈1924条/天 |
stock_news_sentiment |
新闻情感分析结果,每条新闻产出情感分(0~1)、情感标签(利好/利空/中性) | 09:00 / 13:00 / 17:00 / 21:00 | ≈986条/天 |
stock_predictions |
LightGBM预测结果,含预测涨跌幅、置信度、特征快照 | 每日收盘后 | ≈40条/天 |
| 类别 | 数量 | 特征列表 | 数据来源 |
|---|---|---|---|
| 基础 | 15 | pct_change, close_price, volume, turnover, ma5, ma10, ma20, ma60, rsi14, macd, macd_signal, macd_hist, boll_upper, boll_mid, boll_lower, atr14, ta_score | stock_kline_ta |
| 衍生 | 10 | ma5/ma20比值, 布林带位置, rsi动量, macd动量, 量比, 额比, ma斜率, rsi斜率, 个股vs市场涨跌, 量vs均量 | 原始指标加工 |
| 市场 | 8 | 市场均值, 上涨概率, 市场波动率, 最大/最小/中位涨跌, 均量, 均额 | 每日全市场汇总 |
| 动量 | 3 | 昨日涨跌(pct_change_1d), 3日累计涨跌(mom_3d), 5日累计涨跌(mom_5d) | 历史数据滚动 |
| 数据类型 | 8:30 早报时点 | 15:30 收盘后 |
|---|---|---|
| 昨日 K线 + 技术指标 | ✓ 已确定 | ✓ 可用 |
| 今日 K线(未开盘) | ✗ 不存在 | ✓ 已确定 |
| 昨日市场均值/波动率 | ✓ 可用(昨收后计算) | ✓ 可用 |
| 今日市场均值(未收盘) | ✗ 不存在 | ✓ 可用 |
| 标签(次日涨跌) | ✓ 未来数据,标签构建用 shift(-1) | ✓ 同左 |
pct_change.shift(-1) 按股票分组移位,意味着 T 日的标签 = T+1 日的涨跌幅。这保证了训练时模型只使用截至 T 日的信息来预测 T+1 日的涨跌,完全不依赖未来数据。
lgb_model.txt,同步写入 .meta 文件记录版本号、特征数、训练日期,便于后续热更新校验Claude Code 是基于 Claude 模型的 AI 编程助手,可连接大模型自动执行数据采集、分析、报告生成等任务。
| 配置项 | 值 |
|---|---|
| 配置文件 | ~/.claude/CLAUDE.md |
| 命令前缀 | / + 技能名(如 /stock-morning-report) |
| 自定义 Skills | ~/.claude/commands/ |
/stock-morning-report 生成早报
/news-hot 热点新闻
/news-AI AI新闻
/stock-evening-report 晚报
tools 列表调用:
使用 @anthropic/mysql-mcp 连接 stockdb 数据库,直接查询股票数据。
核心数据采集与处理程序,位于服务器后台定时运行。
| 功能模块 | 说明 | 数据表 |
|---|---|---|
| 候选池筛选 | 按热度、换手率排名选取前40只股票 | stock_candidates |
| K线采集 | 从东方财富API获取日K线数据 | stock_kline_ta |
| 技术指标 | Pandas TA计算MA、RSI、MACD、布林带等 | stock_kline_ta |
| 新闻情感 | SnowNLP分析新闻情感得分 | stock_news_sentiment |
| 模型预测 | LightGBM回归预测次日涨跌幅 | stock_predictions |
| 模型训练 | 每日收盘后重训练模型 | lgb_model.txt |
daily_job,周日 20:00 执行 weekly_train_job
使用 ScraperAPI MCP 或 Tavily MCP 获取实时财经新闻。