jingxuanc/quant-agent-skills/next-day-prediction

Claude Code and agent skill by jingxuanc/quant-agent-skills

Trust tier 2
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

当用户想知道明天或近期行情方向、涨跌概率、模型对个股/大盘的看法时使用(例如"明天大概怎么走""次日预测""模型怎么看""给个方向")。先校验 ML 模型是否在有效期内,再输出次日收益预测分与模型近期 IC 作为可靠性参考。

Install

npx vskill@latest install jingxuanc/quant-agent-skills/next-day-prediction

SKILL.md

次日预测

何时使用

命中以下任意一种说法,就走这个技能:

  • "明天大概怎么走?"
  • "次日预测一下"
  • "模型怎么看?"
  • "给个方向,别废话"
  • "这几只票明天谁更可能涨?"
  • "今天的模型分数出了吗 / 新鲜不新鲜?"

不适用:用户问的是长期逻辑、产业链、估值(那走研究员/知识图谱技能);用户要是问"该不该买",只给统计结果,不给买卖建议(见合规边界)。

轻问 vs 深问(成本控制)

模式用户意图工具调用耗时
轻问只想快速要个方向factor-miner-ml_metrics + 一次 factor-miner-ml_predict秒级~十几秒
深问要多标的横向比较 + 可靠性说明 + 报告metrics + 多次 predict(或一次批量 predict)+ 可选 kronos-forecast_signal 交叉验证每次 predict 都要算因子,标的越多越慢

哪一步最贵:factor-miner-ml_predict 最贵——它要为每只标的取因子快照,Redis 里没有快照时会现场重算 Alpha158 因子(IO + 计算密集)。ml_metrics 只读模型状态,几乎免费,但每次预测前都必须先调它,用极小成本换掉"拿过期模型忽悠用户"的风险。

批量场景(>5 只标的):不要串行一只一只打,优先把多只标的的 klines 一次性塞进 klines_list 数组一次调用。若换成 K 线大模型预测这类重任务,先提交拿 job_id,再用 job_status 轮询,不要傻等。

工具链

第 0 步:确认模型是否新鲜(强制,不可跳过)

调 factor-miner-ml_metrics(),不传参数。从返回里看:

  • 最后一次训练日期(last training date)
  • 该模型的 IC / rank_ic / sharpe 等当日指标
  • 模型文件是否存在
  • model_type 是 lgbm 还是 master

判断规则(必须明说,不能含糊):

  • 最后训练日 == 最近一个交易日 → 模型新鲜,预测可用。
  • 最后训练日晚于今日 1~2 个交易日 → 可用但标注"模型是 N 天前训练的"。
  • 最后训练日距今明显滞后(超过约 3 个交易日,或明显跨周跨假期)→ 判定模型过期,必须明确告诉用户"当前模型预测不可用/可靠性不足",不要拿旧分数当方向依据。
  • 模型文件不存在或 metrics 为空 → 直接说没训练过,请用户先跑训练,不要编预测。
第 1 步:拿 K 线数据

factor-miner-ml_predict 需要 klines_list,格式:

klines_list = [ { "symbol": "sh600519", "klines": [ {date, open, high, low, close, volume}, ... ] } ]

数据来源二选一,先问清楚再动手:

  1. 用户自己提供 K 线文件/数据(最常见)——让用户给股票代码列表和 K 线,至少覆盖因子回看需要的长度(Alpha158 系的均线类因子要求 ≥ 62 根,建议给 120 根以上更稳)。
  2. 用户没数据时,说明可以从工程端的数据集取(日频 K 线数据集/Redis 因子快照),或让用户先跑 factor-miner-update_data 更新行情再预测。不要凭空捏造 K 线。
第 2 步:出预测分

调 factor-miner-ml_predict(klines_list=<上一步数据>, model="lgbm")。

  • model="lgbm" 是默认后端,走 Redis 因子快照,没有快照时回退现场算因子。
  • 只有当用户明确要 MASTER 深度模型、且确实有足够长的特征序列时,才用 model="master"(需先跑过 master 训练,对序列长度有要求);普通次日预测不要默认切它。
  • 返回是预测分字典 {symbol: score}。分数高低是相对排序,不是百分比收益。
第 3 步(可选):交叉验证

用户要"更稳一点",或分数与直觉/新闻严重冲突时,可对同一标的额外跑 kronos-forecast_signal(传 klines + pred_len),用它的 direction / expected_return_pct / confidence 做交叉参考。注意它慢 N 倍(N=采样次数),只在少数标的上用。

第 4 步(可选):重任务轮询

若用户要求跑训练/批量回测:先提交拿 job_id,再用 job_status(job_id) 轮询,返回 running 就继续轮询,done 再读结果,error 就读 error 字段。不要原地等待、不要反复重投。

记忆回路(前查后记)

时机动作工具
执行前查同一 model_type(lgbm/master)在同一股票池、相近 IC 区间下历史的"模型预测方向 / 排序"实际兑现情况——即这套模型的历史预测准确率causal-memory-search_causal(query=次日预测 模型 准确率,task_tag=next-day-prediction)
执行后记下本次预测:模型类型与训练日、股票池、预测分排序、当时 IC/rank_ic,以及是否因过期降级causal-memory-record_decision(decision=<本次模型类型 + 预测分排序结论>,outcome="待验证",context=<model_type/训练日/IC/股票池/根数>)
复检时下一交易日收盘后拿到实际涨跌,用同一条 decision 回填真实兑现情况,判断当日模型预测准确率causal-memory-record_decision(同一条 decision,outcome=实际涨跌与预测排序的吻合度)

本技能的历史参照维度是模型历史预测准确率:不是"用户持仓赚没赚",而是"这个模型在相似状态下给出的次日排序,历史上有多少次真的对上了"。这个记忆对用户的价值在于——IC 只告诉你模型训练时有多好,而记忆记录的是它上线后真实兑现了多少次;当同一模型类型、相近 IC 区间的历史命中率长期偏低时,即便模型"新鲜",也应把可靠性参考下调并明说,避免用户把过期或漂移的信号当成方向依据。

输出格式

Agent 的输出契约,按此顺序:

  1. 模型状态(必出,一行结论)
  • 最后训练日、是否在有效期、model_type
  • 过期就写:"⚠️ 模型最后训练日为 X,已过期,本次预测仅供参考/不可用"
  1. 预测结果表(按分数降序)
  • 列:股票代码 | 次日预测分 | 模型近期 IC(rank_ic)| 备注
  1. 可靠性参考(必出)
  • 引用第 0 步读到的 IC / rank_ic / sharpe;IC 低(例如 |IC| < 0.03)要明说"信号偏弱,区分度有限"
  1. 方向解读
  • 只做相对排序描述:谁的分更高、分差是否明显、高分组 vs 低分组
  • 不给目标价、不给买卖点位
  1. 数据与口径说明
  • K 线来源、根数、预测时间点;是否用了 master/Kronos
  • 固定句:"以上为模型输出,非承诺;不构成投资建议。"

轻问可压缩成 3~5 行(模型状态 + 分数排序 + 可靠性 + 免责);深问补齐表格与逐条备注。

历史参照(必填小节):若检索到同类历史,写明「类似情境 N 次,其中 X 次 <本技能的判断维度> 正确」;
无历史则写「首次记录此类情境,本次判断已存入记忆供将来对照」。

合规边界

  • 只输出统计计算结果:预测分、排序、IC/rank_ic/sharpe 等模型指标。
  • 不输出买入/卖出/加仓/减仓建议,不输出目标价、止盈止损价位、仓位建议、收益承诺或"必涨/稳赚"这类表述。
  • 不把模型分数翻译成"能涨 X%";预测分是横截面相对排序,不是收益预期。
  • 涉及任何预测模型(LGBM / MASTER / Kronos),必须声明"模型输出,非承诺"。
  • 模型数据不足或已过期时,宁可说"不可用",也不要给方向。
  • 用户问到具体交易决策时,只提供计算依据,决策由用户自己做。

常见问题

  1. K 线太短导致预测失败或失真:Alpha158 因子里有 ma_60 这类长周期项,历史不足 62 根会大量 NaN。至少给 62 根,实用建议 120 根以上;不够就明确让用户补数据,不要自动缩窗口硬跑。
  2. 分数没有绝对值意义:预测分高低只说明"同期这批标的里模型更看好谁"。跨批次、跨日期、不同股票池之间的分数不可直接比较,报告里最好固定同一批标的出分。
  3. Redis 没快照会变慢:ml_predict 优先读 Redis 的因子快照,缺失时现场重算,会明显变慢甚至超时。标的数量多时先说明预计耗时,或改用批量一次提交;也可先跑每日因子计算任务把快照刷出来。
  4. 节假日/停牌:最近交易日不等于自然日,判断模型是否过期时按交易日算,别用自然日差几天就误判过期。

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/jingxuanc/quant-agent-skills/next-day-prediction/badge)](https://verified-skill.com/skills/jingxuanc/quant-agent-skills/next-day-prediction)

Something wrong with this skill or its page? Tell us.