jingxuanc/quant-agent-skills/market-regime

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

Trust tier 2
  • community
LLM review pending
Source check pending

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

判断当前大盘处于牛市/熊市/震荡哪种状态,并给出对应的策略基调与仓位区间参考。当用户问「现在市场什么状态」「该进攻还是防守」「牛市还是熊市」「大盘怎么样」「现在能不能加仓」时使用。

Install

npx vskill@latest install jingxuanc/quant-agent-skills/market-regime

SKILL.md

市场状态判断

何时使用

  • 现在市场什么状态?
  • 该进攻还是防守?
  • 现在是牛市还是熊市?
  • 大盘怎么样了,能加仓吗?
  • 最近这波是不是要变盘了 / 风格是不是切换了?
  • 我的策略现在还能跑吗(趋势策略 or 震荡策略)?

轻问 vs 深问(成本控制)

轻问(默认,1 个工具):只想知道「现在是牛/熊/震荡」。

  • 只调 factor-miner-regime_detect,直接回 regime 分类 + 区间 + 一句仓位基调。
  • 成本:一次同步计算,秒级返回。

深问(2 个工具 + 结构化报告):用户问「是不是刚切换/要变盘」。

  • 先 factor-miner-regime_detect 定状态,再 factor-miner-change_point 看近期有没有断点,最后合并成一份带时间线的报告。
  • 最贵的一步:factor-miner-regime_detect。若环境装了 hmmlearn,它会走 GaussianHMM 拟合(对长历史序列迭代,明显比规则引擎慢);未装时走内置规则引擎,很快。序列越长越贵,建议只用近 1–2 年日线。
  • 第二贵:factor-miner-change_point 在 method="pelt"(需 ruptures)或长序列多次二分时的计算。只做「最近有没有切换」时,传近 120–250 根即可,不要传十年全历史。

批量/重任务:如果一次要对多个指数(沪深300 + 中证500 + 创业板 + 恒生 + 标普)或对长历史做 regime 回测,不要一个接一个傻等、也不要在一个同步调用里堆全部数据。

  • 正确做法:把批量任务提交为异步作业,先拿到 `job_id`,再用 factor-miner-job_status 轮询(job_id 传入),状态变为 done 后取 result;running 期间先干别的。轮询之间不要 sleep 空转。

工具链

第 0 步:确认数据(必须先解决)

两个工具都不接受「帮我查一下大盘」这种空参数,必须把 K 线/序列喂进去。数据来源二选一:

  1. 用户提供:让他给指数日线 K 线,格式 [{date:"2025-01-02", close:3300.5, volume:123456}, ...]。volume 可选,但给了更好(HMM 用收益+波动特征,量能只作辅助)。
  2. Agent 侧取数:从本地行情库或 qlib cn_data 取指数日线,取完把序列转成上述格式再调用(不要描述数据、要真的把数组传进去)。
  3. 没数据就不要硬算:明确回「需要指数日线,至少 120 根,最好 250 根」并说明需要哪个指数(默认沪深300 sh000300,或用户说的上证指数 sh000001)。

样本长度建议:≥120 根日线。低于 60 根,任何 regime 结论都不成立,直接告知样本不足。

第 1 步:判当前状态
  • 工具:factor-miner-regime_detect
  • 参数:
  • klines:指数日线数组(升序,见上)
  • n_regimes:3(默认值,对应 bull / bear / range);用户只想要「牛还是熊」时传 2
  • 返回(JSON 字符串):current_regime、regime_history、regime_stats(各状态占比/持续时长)、method(rule 或 hmm)。
  • 注意:method 是规则引擎时,结论对「20日动量 + 已实现波动」阈值敏感;是 HMM 时,状态标签是模型拟合出来的,不同窗口可能重编号,必须结合 regime_stats 解释,不要只念 current_regime。
第 2 步(仅深问):看是否刚切换
  • 工具:factor-miner-change_point
  • 参数:
  • series:注意字段名是 `value` 不是 `close` —— [{date:"2025-01-02", value:3300.5}, ...],用指数收盘价序列
  • method:auto(默认,推荐)/ cusum_binseg / pelt
  • max_bkps:默认 5;只想看最近一次切换就传 1–2,减少噪音
  • 返回:change_points(含 date、index、significance)、method。
  • 交叉验证:断点日期若落在 regime_history 的状态切换点附近 → 切换证据较强;两者不一致 → 明确写「状态与断点不同源,结论存疑」,不要强行圆回来。
第 3 步:合并输出(见下方契约)
重任务(回测/训练/批量)
  • 涉及多指数批量 regime、或把 regime 信号接回测/ML 训练时:提交异步作业 → 记下 job_id → 用 factor-miner-job_status 轮询(可能几分钟到几十分钟)→ 拿 result。不要同步死等,也不要同一任务重复提交。
  • 若中途要跑 Kronos/ML 做方向预测,那是模型输出,非承诺,只能作为「状态报告的附加参考」,且必须显式标注。

记忆回路(前查后记)

本技能的记忆维度是 regime 判断的历史准确率:对同一个指数、在相近样本长度与判定方法下,过去那些 bull / bear / range 的判定,事后有多少被后续真实走势验证。

时机动作工具
执行前先查同类情境下的历史 regime 判定及其事后验证结果(按指数、判定方法 rule/hmm、是否处于切换期归类),据此调整本次结论的语气与置信度报法causal-memory-search_causal(query="regime 判断 bull bear range 事后是否被走势验证正确",task_tag="market-regime")
执行后把本次判定作为一条待验证决策写入:索引出指数、样本根数、n_regimes、method 与 regime 结论,结果先留空causal-memory-record_decision(decision=<本次结论,如"sh000300 判定 regime=range,样本 250 根,n_regimes=3,method=rule">,outcome="待验证",context=<情境特征>)
复检时5–20 个交易日后、或下一次对同一指数判 regime 时,用同一条 decision 回填真实结果(后续区间是否真的按当时判定的状态演进),把准确率沉淀下来causal-memory-record_decision(同一条 decision,outcome=实际结果)

写入 context 时要带上本技能特有的情境特征:指数代码、样本根数、n_regimes、method(rule 还是 hmm)、当时是「已持续 ≥20 交易日的稳定状态」还是「刚出现断点/状态切换的切换期」、以及 regime_stats 里该状态的占比与持续时长——这些正是决定判断难度的变量,缺了它们历史准确率就没法分组归因。

为什么这个记忆对用户有价值:regime 判断属于"只能事后证伪"的结论,一次判对或判错都不说明问题;只有连同情境特征一起记住,才能知道本技能在哪类环境下容易看错(典型是切换期、以及规则引擎阈值临界时),进而在输出里更诚实地报置信度。用户下次问「现在什么状态」时,拿到的就不只是一个孤立读数,而是带「同类情境 N 次,其中 X 次判对」的历史参照。

输出格式

Agent 必须按下面小节输出,字段缺失就写「未取得」,不要编。

  1. 结论一句话:当前 market regime = bull / bear / range(中文:趋势上行 / 趋势下行 / 区间震荡),先给结论。
  2. 置信度描述:不用假概率。用三个可核对的依据描述强弱:
  • 判定方法(method = rule 还是 hmm)及其局限;
  • regime_stats 里该状态的历史持续时长/占比(持续越久、占比越高,当前读数越"典型");
  • 最近是否出现状态切换(有断点 → 置信度低/处于切换期;无断点且状态已持续 ≥ 20 交易日 → 置信度高)。
  • 输出格式:置信度:高 / 中 / 低(依据:…)。
  1. 切换判断(仅深问):断点日期 + significance + 是否与 regime 切换相互印证;写清「切换已发生 / 疑似切换 / 未见切换 / 证据冲突」。
  2. 策略基调:趋势策略 vs 均值回归/震荡策略 哪个更适配当前状态(这是统计适配性描述,不是买卖建议)。
  3. 仓位区间参考(不点名任何个股,只给区间与依据):
regime仓位区间参考依据
趋势上行 bull偏高区间(示例:60%–80%)动量向上、波动未失控
区间震荡 range中性区间(示例:30%–50%)无方向,趋势策略易被反复打脸
趋势下行 bear偏低区间(示例:0%–20%)动量向下,回撤风险主导
  • 必须同时写:该区间为统计映射的参考区间,须与自身风控参数(单票上限/最大回撤)叠加使用;不是投资建议。
  • 用户如已有账户风控参数,把用户的上限套进去取较严者,并说明是取严。
  1. 数据与口径声明:指数代码、样本区间、K 线根数、n_regimes、method、是否存在数据缺口。
  2. 不确定性与下一步:样本不足 / 状态处于切换期 / 方法为规则引擎 时,明确写出「结论可靠性下降」,并给出可验证的下一步(补更多 K 线、换 2 状态再跑、等断点确认)。
  3. 历史参照(必填小节):
历史参照(必填小节):若检索到同类历史,写明「类似情境 N 次,其中 X 次 <本技能的判断维度> 正确」;
无历史则写「首次记录此类情境,本次判断已存入记忆供将来对照」。

合规边界

  • 只输出统计计算结果:regime 分类、状态占比与持续时长、断点日期与显著性、方法说明。
  • 不输出:买入/卖出建议、个股推荐(本技能禁止点名任何股票)、目标价、涨跌幅或收益承诺、仓位"必须/应该"的指令式表述、杠杆或期货方向建议。
  • 仓位区间必须标注为「参考区间 / 统计映射」,并提示叠加用户自身风控;不得表述为「建议仓位 X%」。
  • 预测模型(Kronos / ML 打分)一律加注:模型输出,非承诺,不得作为结论依据。
  • 数据有缺口、样本不足、方法为规则引擎时,必须如实披露,不得用确定性语气包装。

常见问题

  1. `series` 的字段名是 `value`,`klines` 的字段名是 `close`:两个工具的入参结构不一样,change_point 传 close 会拿不到结果。严格照格式传。
  2. regime 标签在不同窗口下会"漂移":HMM 的 bull/bear 编号是拟合产物,短窗口和长窗口可能对不上。改窗口后必须重跑,并且不要跨窗口直接比较 current_regime 字符串,要结合 regime_stats 与 regime_history 一起读。
  3. 切换期不要当趋势期用:断点刚出现、或 regime_history 最近 5–10 个交易日刚翻状态时,属于"证据未坐实"阶段,置信度按「低」报,并把这一点写在结论最前面,避免用户按旧状态加仓。
  4. 别把日线 regime 套到分钟级交易上:日线判出来的状态对日内策略的解释力有限,用户若问日内,先说明口径不匹配,再问是否需要换周期数据重跑。

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

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/market-regime/badge)](https://verified-skill.com/skills/jingxuanc/quant-agent-skills/market-regime)

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