> ⚠️ 运行环境硬要求(2026-10-20 实测更正 🔴):本 skill 的脚本依赖 requests / pandas / numpy / akshare。
> ✅ 本机唯一实测通过的解释器:C:/Users/Administrator/.workbuddy/binaries/python/envs/default/Scripts/python.exe(Python 3.13.14,四包齐全,2026-10-20 复核)。
> ❌ 不要用 binaries/python/versions/3.13.12/python.exe(裸解释器,无 requests)——用它跑框架脚本会直接 ModuleNotFoundError。
> ❌ 原文档给出的 AppData/Local/Programs/Python/Python312/python.exe 在本机不存在(已核,勿再引用);版本号不是门槛,关键是有没有 requests,用错解释器≠缺包。
> 另外 _scan_std_k.py 是 market_scan_std.py 的兼容 shim(2026-10-19 重建),勿删,否则 audit_pool_gate.py / backtest_pool_2026.py 会启动即崩。
> 🆕 [3.0.42 · 2026-10-22] 5 处本地修正回填(3.0.41 漏带,本次补齐):以线上 3.0.41 包为基底,仅换入已双向合并的 SKILL.md,未回退任何上游改动。
> ① 插件策略纠错(最关键):3.0.41 原文「当前仅半导体(008888)有效」与实测相反 —— mainline_register.json 实测 008888 status=暂停/tradable=false/WF 四窗口全否;改为「三主线全排除,021528 财通成长优选混合C 唯一双检全过」。
> ② 2026-09-30 双检表补回(3.0.34~3.0.40 只在 agents 文档修、SKILL.md 未同步,造成双处矛盾)。
> ③ trade_log v2.13.34 台账多候选自愈说明补回(trade_log.py 已实现)。
> ④ 知识库路径 _kb_candidates() 三级候选 + kb_health() 补回(kb_integration.py 已实现)。
> ⑤ 止损线补 AI算力硬件 −12% 档(该档只在上游有)。
> ⑥ event_driven 说明按代码实测改写:原两份文档说法均不准;真实修复 = 模板删 event_driven + interval_days:1(task_state() 的 skip 判断仍在 mode 分发之前,--force 也触不到)。
> ⑦ 保留 3.0.41 的 ⓪.5 月线周期层(monthly_regime_check.py,只标注不交易)。
财富指挥官 · 统一指挥中心
战术决策在趋势猎手 v2.11.0 专家。本 Skill 是执行层与调度层——拉真实持仓、跑诊断、出操作清单、调度定时任务。
框架版本映射:SKILL v2.13.33 ↔ 趋势猎手专家 v2.11.0 ↔ 脚本层 wc_common.py(公共库)+ live_diagnosis.py(每日诊断入口,日期化输出)+ kb_integration.py(知识库可选蒸馏层)+ live_verify.py(实战验证月度对照)+ intraday_etf.py(场内ETF右侧信号引擎)。
> v3.0.42 · 2026-10-22 · ⓪.5 月线周期层(3.0.41 首发)+ 5 处本地双向合并回填(3.0.42 补发):见文末「⓪.5 月线周期层」与心跳表 monthly_regime。
>
> ⏳ 功能状态总览(v2.13.30)——未实现/受限功能集中醒目标记,避免误以为可用:
> - ✅ 指数 PE/PB 分位已落地:valuation_dj 蛋卷63指数估值快照(2026-08-16 补上,此前仅 NAV 分位代理)——🟢<20%低估/🔴>80%高估提示层,不改右侧信号
> - ⚠️ 停用:宽基先行(007339/011861 暂无过闸标的)
> - ⚠️ 仅观察不建仓:021528 完整版方案C 不过闸(降级版过闸被完整版推翻)
> - ⚠️ 可持有不可买:006075 标普500C(暂停申购)
> - ⚠️ 降级可用:mx-ds-mcp 未连接时板块资金流用 push2 兜底(TMT拥挤度可用/半导体精确流向缺失)
> - 📚 知识库可选层:诊断前自动回顾 + 诊断后蒸馏写回本地 KB(路径自愈 _kb_candidates():WEALTH_KB_PATH 环境变量 → 已知盘符 F:/E:/D:/C: → 全盘扫描;kb_health() 可显式体检);脉搏任务产出自动蒸馏进 KB;脚本诊断与专家诊断同日来源并存(## 日期·agent)。KB 缺失时跳过且每进程告警一次(stderr),不影响诊断。
> - 📊 实战验证:live_verify 每月自动对照实盘 vs 回测(胜率63.6%/+5.70%基准,偏差>10pp触发复议)
> - 📈 场内ETF右侧引擎:intraday_etf.py 每日盘后自动跑(18只池 std+方案C + 状态闸 + IOPV溢价闸 + 6条买点质量守卫〔动量R²/突破站稳/卖出冷却/低相关/量能过滤/盈利保护〕);桌面持仓登记表(xlsx)自动读取;组合级回测 backtest_intraday_portfolio.py(含分批止盈/熔断实验参数)
> - ✅ 其余核心功能均已落地(诊断/止损/分层/心跳/回测/验证闭环)
> [v2.13.24 · 2026-08-11 深度自审] ①池内核心标的缓存陈旧修复:刷新范围从"仅持仓"扩到 POOL 全部+监测池≥7天旧(实测交易池 9 只缓存 8 天旧,未持仓时信号用旧NAV)②10Y国债收益率用 akshare 真实值替代硬编码 2.75%(实测 1.7074%,ERP 4.16%→5.20%)③高波动判定规则化 is_high_vol()(方案C/高波动行业关键词,替代硬编码代码清单,新方案C标的 008087/008286/020733/010524/019254 不再漏判)④新增 live_verify.py 实战验证月度对照 + 心跳 EXEC 自动化 ⑤kb_integration 同日按来源去重(脚本/专家并存)+ 回顾正则兼容来源后缀 ⑥专家 agent 诊断后蒸馏写回 KB(终审第7步)。
> [v2.13.27 · 2026-08-14 三线全量自审] ①P0 场内 state_gate D 状态误判禁买:旧版"D追高过滤"残留 return False 与 v2.13.26"std 仅 D 放行"冲突,盘中 std 信号一直是死的 → 修复 B/C/D 放行 ②P1 组合回测出场规则补全:std 缺 60 日/-12% 止损、方案C 缺峰值回撤 8% → 补全重跑年化 18.93→17.40%(更真实,含幸存者偏差折扣实盘预期 10-15%)③P1 edge_gate 当日缓存净值滞后:同一天多次诊断(早盘/盘后)第二次起复用早盘旧值,净值大跌黑天鹅风险 → 缓存加 nav_date 对比,净值日期变化强制重算 ④P2 低相关守卫浮点 bug:常数序列 dx==0 判等永不触发算出伪相关 → 加 1e-6 容差跳过 ⑤P2 方案C 突破位语义 bug:hh 含突破窗口自身高点导致站稳永远过不了 → 改为排除最近 3 日 ⑥P2 卖出后清仓回退 JSON 复活持仓:表格存在就要以它为准,数量≤0 直接跳过 ⑦场内持仓段补方案C止盈提示(峰值回撤 8% 线)。发版 v3.0.22。
> [v2.13.28 · 2026-08-16 吸收增强·回测验证] 吸收 etf-rotation-strategist 技能+雪球ETF博主策略,新增 4 项增强(均 A/B 回测验证):①量能过滤 volume_guard():量比(当日量/前5日均量)>2 且 60日年化>100% → 买点剔除(防放量见顶) ②盈利保护 profit_guard():当日(最高价-收盘价)/最高价>5% → 买点剔除(防追冲高回落) ③阴跌防御升级:E/F/A/黑灯禁买时提示"空仓者可转货币ETF(511880)避险" ④分批止盈:方案C +12%卖1/3→+16%再卖1/3→+20%清剩余(A/B: 年化17.47→18.61%、胜率55.3→62.4%、回撤持平,纯正优化)。回测引擎加 stagger_tp/circuit_pct/index_circuit_pct/pre_data/new_guards 参数(全默认关不影响原逻辑)+ bt_guard_compare/bt_stagger_compare/bt_grid_sim/bt_circuit_compare 对比脚本。❌已验证不采纳: 单日熔断(年化-4pp/回撤+3-5pp)、网格副仓(胜率74%但累计-7.73%)。发版 v3.0.23。
> [v2.13.29 · 2026-08-16 补编外体检估值短板] 指数 PE/PB 分位数据源落地:新增 valuation_snapshot_dj.py 拉蛋卷基金指数估值表(danjuanfunds.com/djapi/index_eva/dj,免费无需Key,63 只指数 PE/PB/历史分位/ROE/股息率)→ 关键词过滤框架相关 34 只 → 分级提示(🟢<20%低估/🟡中位/🔴>80%高估) → 落盘 valuation_snapshot_dj_YYYY-MM-DD.json。心跳新增 valuation_dj 任务(15:30 盘后自动,间隔 1 天,心跳 19→20 任务)。实测:证券公司 PE 分位 4% 低估 / 恒生科技 32% / 沪深300 85% 高估 / 科创50 97% 高估。⚠️ 边界:仅体检提示层,不改 std/方案C 右侧信号;细分行业指数不在蛋卷 63 只内。发版 v3.0.24。
> [v2.13.36 · 2026-08-27 共振验证工具链(MACD×KDJ / MACD×MA20 / Regime研判)] 针对博主教学文案"MACD+KDJ共振""MACD+MA20共振战法"用真实数据实测(16只场内池,160根日K,2026-02~08),新增 5 脚本 + 3 报告(docs/):①macd_kdj_resonance_pool.py 共振可用性地图:A级(10日胜率≥60%)=光伏80%/军工71%/半导体62%/恒生科技60%;C级(<40%)=软件25%/芯片38%/科创50 38%——共振有效性因标的天差地别,且5日胜率普遍<10日(共振=迟到的信号,追进吃浮亏)②macd_kdj_resonance_triple.py 三重共振回测(共振+ADX≥25+放量):A级胜率小幅抬升(半导体71→75%/恒生60→67%)但信号骤减至半年3~4次;C级叠满闸也救不了(软件10日仍33%)——标的质地第一位,过滤器第二位 ③macd_ma20_resonance_pool.py MACD+MA20战法实测:5条件叠加在震荡市几乎不触发(16只里11只半年0~1次信号),发出样本胜率不优于KDJ共振——MA20当闸过滤过严,单条均线不如ADX+量能 ④regime_probe_5.py 5标的Regime量化研判:5只全部震荡市(ADX全<20/量能比全<1/MACD全零轴下)→下周整体不做多;触发"预备扣扳机"三条件=ADX≥25+量能比>1.2+MACD上零轴 ⑤结论:当前市场状态不在趋势频道,任何趋势型战法错配;框架三闸(MACD翻色×ADX×资金流)为震荡市正解。⚠️边界:全部为工具/验证/知识层,不改 std/方案C/状态闸/止损线任何信号逻辑。发版 v3.0.34。
> [v3.0.37 · 2026-09-09 验证期观察/对账三件套] ①诊断建议快照留痕:每次诊断输出的建议方向(entry_signals 与 sell_ops)以快照形式存档到 trade_log.json 的 snapshots 区,与手动交易记录(trades 区)隔离不污染战绩统计;快照去重 code+date+op 字段;新增 python trade_log.py snapshot-summary 查看快照分布——便于验证期结束做建议→结果归因复盘 ②建议落地跟踪观察(新增 suggestion_reconciler.py):回看近 7 日诊断的历史建议 vs 当日持仓快照 → 历史建议尚未落地/超期未跟进的差异点进入【📋 历史建议对账观察】段,写入 JSON suggestion_track 字段供人肉复盘,不触发任何账户动作 ③多渠道状态一致性观察表(新增 consistency_observer.py + live_report 顶部"📊 多渠道一致性观察"):场外诊断 × 场内 ETF 扫描的合并观察卡——市场状态一致性检测、各源高风险状态标记、多渠道同日命中同方向的标记提示("同板块同日双源观察"),intraday_etf 落盘补 market_state 字段 ④tools 补齐:SKILL.md 引用的 macd_/bt_param_matrix_full/regime_probe_5 等 8 脚本进入内嵌副本。⚠️边界:全部为观察/对账/展示层,不修改 std/方案C/状态闸/任何诊断阈值(验证期冻结)。发版 v3.0.37。
> [v3.0.40 · 2026-10-20 上游合并回灌 + 3.0.39 修复不彻底补正] ① 上游 3.0.38/3.0.39 全量合并:以 3.0.39 为基底,用 AST 把本地独有的 4 个 P0 防线(mainline_gate / load_mainline_register / fetch_sh_pe_10y_pctile / _resolve_hb_file)回填,16/16 验收通过——上游版本此 4 项均无,直接覆盖会丢主线闸与心跳文件定位能力。② _resolve_hb_file P1 修复:由「多候选取 mtime 最新」改为「按优先级取第一个存在」—— mtime 法会让本进程写过的文件永远抢占 SSOT,心跳自检整段失效。③ 心跳接线:load_hb() / load_heartbeat() 原为零调用点(写了对不对没人调),已接线。④ 知识库路径:DEFAULT_KB_PATH 硬编码 D:\个人知识库 → F:\个人知识库(本机已无 D 盘)。⑤ kb_health() 误报:原调用 resolve_kb_path(force=True) 而新版不接受该参数 → TypeError 被 except 吞掉后误报,已修。⑥ 心跳模板 backtest_audit 补正:3.0.39 的「自愈」只补 interval_days、未删 event_driven,而框架逻辑 if task.get('event_driven'): return 'skip' 优先于间隔判断 ⇒ 仍会被永久 skip;改为 interval_days: 1(与真实 SSOT 一致)。⑦ Agent MD 双向合并:以新版为基底回填插件版更新的两块——2026-09-30 双检表(半导体/通信/计算机全排除、021528 唯一双检全过,替换掉「截至07-29 有效插件=半导体单主线」的陈旧结论)与 P0-2 读取侧 fail-closed 说明。⑧ 内嵌副本对齐:skills/wealth-commander/ 与根目录逐文件 md5 对齐,消除 SKILL.md 引用脚本而副本缺失的断链。⑨ 文档纠错:运行环境由「必须 Python 3.12 + 不存在的 Python312\python.exe」改为实测可用的 binaries\python\envs\default(3.13.14,requests/pandas/numpy/akshare 全齐),并明确「版本号不是门槛,有没有 requests 才是」。⚠️边界:全部为路径/接线/模板/文档层修复与上游合并,不修改 std/方案C/状态闸/止损线任何信号阈值。发版 v3.0.40。
> [v3.0.39 · 2026-10-19 系统性自审·六项改进全部落地] ① 断链修复(P0):_scan_std_k.py 兼容 shim 重建(8/13 脚本改名 market_scan_std.py 时未留 shim)→ audit_pool_gate.py / backtest_pool_2026.py 此前启动即崩近 2 个月、池子错配无人发现;已实测跑通(21 标的审计 / 316 只 1484 笔回测)。② 解释器约束入框架:Python 3.12 + requests 硬要求写入 SKILL/INSTALL/README 共 6 份文档(managed 3.13.12 无 requests,用错即 ModuleNotFoundError)。③ 心跳产出新鲜度校验:framework_heartbeat.py 新增 FRESHNESS 表——原只查「跑没跑」不查「跑得对不对」→ 现校验产出文件更新时间;实测 20 任务 0 逾期、7 项产出全新鲜。④ 八条核心判读铁律进框架:含「年线分水岭」「零轴位置」「财报环比考核」「利好不涨」「破线直接走」等,六份 SKILL.md + 三份 Agent MD 双处同步。⑤ 三主线资金面闸复活:新增 sector_fundflow_check.py(ETF 成交额代理,confidence=medium)+ mainline_register.json,③判据由 N/A 恢复为「资金面正常(双源): 中性」。⑥ 五场景规则双处写入(SKILL + Agent)。🔴 自审中另扫出三个比原计划更严重的问题并已修:ⓐ wc_common.py 白话字典 5 处致命错误——A 状态写成「牛市/上涨市(进攻窗口)」(真实=熊市/下跌中继、仓位 0-10%)方向完全相反、F 状态写成「熊市」(实为牛市顶部)、方案C 写成「回踩买点」(实为突破追涨)、底/顶背离写成「可能见底/见顶」(实证:底背离胜率 41.4% 已排除、顶背离≈趋势中继不可当卖出信号);ⓑ pool_config.json 剥离 008286 方案C 标记——008286 实为易方达研究精选股票(主动权益)、非 AI 联接C(真=012734),原拿主动基金业绩给指数策略槽位背书;ⓒ live_diagnosis.py 补 BASE/skills/yangjibao-funds/scripts 查找分支——原漏此项致整条诊断链启动即 SystemExit,已打通并首次产出真实持仓诊断。⚠️边界:全部为判读规则 / 展示层 / 既有缺陷修复,不修改 std/方案C/状态闸/止损线任何信号阈值。发版 v3.0.39。
> [v3.0.38 · 2026-10-19 财报「环比考核」铁律 + 累积代码修复] ① 财报「环比考核」铁律(核心):科技股三季报只看同比会亏钱,必须算单季环比。实证:长鑫科技前三季度归母净利 1,310~1,325 亿(同比扭亏、增 8 倍),但 Q3 单季环比仅 +1%~3.9%(Q1/Q2 为 +246%/+113%)→ 当日 −7.77%、拖累科创50 −2.17%、中证半导(561980) −4.54% 全场最差。判定规则:全球资金对 AI 硬件评判已从「同比增长」切到「环比动能」,环比下滑即视为「不及预期」,不论同比多好看;适用存储/光模块/PCB/算力芯片。执行三条:ⓐ季报必须「同比+单季环比」双列,只列同比=无效分析、不得据此给买入建议 ⓑ环比失速(单季环比<上季 50% 或 <5%)→信号质量降一级、不得作加仓依据 ⓒ「同比爆炸+环比失速」=卖出/不买信号。配套:周期股静态低PE≠便宜,须对照海外同业(长鑫PE<20 vs 三星/SK海力士 5~7、美光<12,景气顶点 10 倍才是中枢)。联动:Agent ⑥新闻层 L2 板块信号表新增「同比爆炸+单季环比失速 → 同样当日禁买」(原表只有「财报 miss>10% 才禁买」,覆盖不到此情形)。
>
> ② 累积代码修复(9/15~10/10 本地已修未发版,本次一并带上):ⓐframework_heartbeat.py P1 修复——_default_interval() 原漏 live_verify/market_rescan/intraday_etf → interval_days=null → 一旦有 last 即永久 skip(永不自动跑且无告警);已补默认间隔 30/30/1 + 读取时自愈回填。ⓑmonthly_stats.py——缺月度日志时由 return 1 改为 rc=0「本月无交易」,避免误报失败。ⓒintraday_confirm.py 重写——从「tdx JSON 输入版」改为直连 wc_common 的硬校验版,新增 TRADABLE 清单、14:30 组合级黑天鹅预警(combo_black_swan,vgszzl 市值加权)、std/planC 双信号输出。ⓓmainline_switch_check.py——失效开关③由「申赎流 N/A」升级为「板块资金面双源」(westock+akshare 共识,v2.15.1)。ⓔwc_common.py——补 DUAL_JSON 常量(修 AttributeError 致三主线资金面闸报 ERR 降级);DEFENSE 补 008701/021151/022875;GOLD_CODES 补 008701。⚠️边界:①②全部为财报判读规则与既有缺陷修复,不修改 std/方案C/状态闸/止损线任何信号逻辑。发版 v3.0.38。
> [v3.0.35 · 2026-09-09 P0 修复·SkillHub 评论区反馈] 操作信号持仓阈值闸(OP_HOLD_THRESHOLD = 100 元,live_diagnosis.py / live_report.py):
> - 触发场景:用户已不持有某池内基金但养基宝仍返回 cost>0(已清仓但留零头 / 冻结份额 / 7 天内刚赎回)→ 框架误报"🔴 止损卖出"操作信号。
> - 闸门规则:仅当 money ≥ 100 元 且 非 empty 时,才把该持仓视为有效持仓进操作信号;不满足则 cost_anchor.real_hold=False、sell_ops 全部不出,仅输出"信号锚(观察)"。
> - 三重防线:(1) live_diagnosis.py line 752-762 入参校验 (2) line 849 sell_ops 二次闸 real_hold=True (3) live_report.py line 319-329 兜底,旧 JSON 渗透也拦截。
> - 用户可调*:常量在两个脚本顶部,改 0=关闭、改大=更严格。⚠️边界:仅操作信号闸门层,不改任何 std/方案C/状态闸/止损线/资金分配信号逻辑。发版 v3.0.35。
> [v2.13.35 · 2026-08-25 安全整改:移除内置明文签名密钥] 腾讯云安全报告(70分可疑)检出 skills/yangjibao-funds/scripts/yjb_fetch.py/yjb_login.py 内置明文签名密钥 SECRET 随包分发(第26行硬编码)→ ①移除明文兜底:密钥仅从 环境变量 YJB_SECRET / ~/.yjb_secret 文件 读取,未配置时签名函数显式报错(不再静默用明文 key);②BASE 升级 https://browser-plug-api.yangjibao.com(实测 TLS 正常、拉持仓正常);③本机已写入 ~/.yjb_secret 保持功能,安装方需自行配置该密钥(公共签名 key 非个人凭证);④建议养基宝服务端评估密钥轮换。⚠️边界:仅密钥加载与请求协议层,不改任何信号/仓位逻辑。发版 v3.0.30。
> [v2.13.34 · 2026-08-24 场内MACD验证与翻色探测工具链] ①MACD/KDJ 全参数矩阵统一验证(bt_param_matrix_full.py:10组参数×3标的,2020-2026 真实日K):MACD (12,26,9) 唯一最优(半导体+343.9%);新增 (8,17,6) 负优化;KDJ 全组跑输基准且交易 125-158 笔被场外 7 天锁卡死。②半导体材料/设备类验证:场内无纯"材料"ETF,4 只半导体设备 ETF(159558/159516/562590/159327)全部单边长牛负超额 -37~-113pp → 不适合 MACD 波段,持仓 159558 走趋势止盈。③改参救援测试(bt_macd_rescue_test.py:9只筛掉标的×5参数=45回测):换参数救不回被筛基金;震荡向下(食品饮料/创新药)长参 (24,52,18) 只能"躲跌"(+47~+72pp 超额但绝对收益平庸)=防守非进攻。④新增 macd_color_probe.py 盘中翻色探测:池内16只输出"今日估算柱色+翻红/翻绿临界价+距临界%",EMA 一步递推数学精确(bt_macd_probe_accuracy.py 验证 12808 样本命中率 100%);规则:|距临界|≥3% 可提前决策,<3% 危险区等 14:30 复核。⑤知识库 concept-场内基金技能借鉴.md 追加第十九节+半导体设备补证+外部交叉验证(雪球 450 组参数全网格支持默认参数)。⚠️边界:全部为工具/验证/知识层,不改 std/方案C/状态闸/止损线任何信号逻辑。发版 v3.0.29。
> [v2.13.33 · 2026-08-21 场内折价提示层(Cocoloop LOFMonitor 思路借鉴)] ①Cocoloop 技能市场评估"基金"20 个:唯一增量 = LOFMonitor 双向价差监控(溢价/折价都盯,框架原只有溢价>2% 单向拦截);数据接口/新闻/持仓穿透类 9 个已覆盖不装;港股/个股/多智能体/无关/骗子项目 10 个不适用。②intraday_etf ⑨ 行后新增 ⑩ 场内折价提示(复用 fetch_premium() 腾讯 IOPV,五件套任一只溢价率 ≤-1% 提示"场内比净值便宜, 场外有联接仓可考虑场外赎回转场内"),与溢价闸互补成双向价差监控。实测:当前五件套 ±0.15% 内无折价不显示;模拟 -1.5% 触发正常。⚠️边界:纯可视化参考层,不改任何信号/仓位决策。发版 v3.0.28。
> [v2.13.32 · 2026-08-21 评测整改:README补全 + SECRET可配置 + 反模式FAQ补齐] ①README.md 补全(SkillHub 评测 4 维度点名"README 全 TODO 占位"):功能说明/使用示例/3步安装/FAQ 七问/技术说明/打包注意事项。②签名密钥可配置(安全报告 65 分点名硬编码 SECRET):yjb_fetch.py/yjb_login.py 密钥改为 环境变量 YJB_SECRET → ~/.yjb_secret 文件 → 兜底默认值(养基宝公共签名 key,非个人凭证;个人凭证为扫码 token 仅存本机),开箱即用不受影响(实测拉持仓正常)。③反模式 FAQ 补齐:避坑 FAQ 增 Q15(token 失效 401 拒绝静默回退/网络降级快照标"非实时"/净值日期防滞后)、Q16(bootstrap 必须固定 seed=42 否则结论翻转/方案C 参数尖峰 008888 4%/回测收盘 vs 实盘盘中估值乐观偏差)。⚠️边界:全部为文档/配置层,不改任何信号逻辑。发版 v3.0.27。
> [v2.13.31 · 2026-08-21 一键路由 + 全链路术语白话注释层] ①一键路由:大白话触发词→专家自动编排全功能(全量体检=三合一 / 盘后一条龙=诊断+场内+复盘+组合风险 / 早上看看=新闻+估值+黄金+博主+灯号),每步打勾合并白话结论;智能增量省时:先读心跳文件按 last 跳过已跑任务、重任务按心跳间隔判断(pool_scan 180天/WF 90天/月统 30天未到期只提示不执行),全量体检 15 分钟→约 4-6 分钟(实测 3 分钟)。②专家卡片触发词:quickPrompts=「帮我做全量体检(默认开场)/盘后一条龙/早上帮我看看今天能不能买」+ defaultInitPrompt 同步。③术语白话注释层全覆盖:wc_common TERM_GLOSSARY 词典扩至 40+ 词(灯号/黄灯/E/F/A状态/红绿柱/波段多头/空仓区/禁买/持仓提示/防御/货币ETF/周线/PE/分位/ERP 等)+ gloss()/gloss_line();live_diagnosis 21 处、intraday_etf 7 处、news_briefing ①②行、valuation_snapshot_dj 评级说明、黄金评分📡行、博主多空比📣行 全部「术语原文+└白话」双行。⚠️边界:全部为输出/注释/路由层,不改 std/方案C/状态闸/止损线/4守卫任何信号逻辑。发版 v3.0.26。
> [v2.13.30 · 2026-08-20 场内红绿柱波段参考层] ①wc_common 新增 macd_bar_status()(多标 MACD(12,26,9) 红绿柱状态:hist/bar/flip/trend)+ 抽通用 _macd_hist() ②intraday_etf 新增 ⑨红绿柱波段参考行(场内高波动五件套:半导体设备159558/科创50 588000/创业板 159915/机器人 562500/光伏 515790,≥60%红柱=多头,翻绿⚠️提醒)③修复腾讯K线 501 坑:web.ifzq.gtimg.cn→ifzq.gtimg.cn(8/19 实测 web 前缀被限流)④理论回测验证("只做高波动+MACD波段"):高波动组 V1 红绿柱 +203.9%/回撤-29.1% vs 低波动组 +16.9%("波动才有空间"成立);多标的等权组合 +116.4%/回撤-25.9%(vs 单持最优半导体 +173.9%/-29.0% —— 降回撤不增收益、不用赌对单一板块);硬止损 A/B:翻绿离场自带止盈止损,-8%/-5% 硬止损均为负优化无需额外设。⚠️边界:纯可视化参考层,不改 std/方案C/状态闸/止损线/4守卫。发版 v3.0.25。
首次使用(新用户必须走完的 3 步)
> ⚠️ 首次使用本 Skill 时,必须提示用户完成以下 3 步,未完成不开始诊断:
> 🔄 升级/覆盖安装(v2.13.10 补充):新版本 = 覆盖 scripts/ + SKILL.md(SkillHub install 或 zip 解压选"全部替换")。所有数据(复盘 review/、交易 trade_log、诊断 JSON、心跳 framework_heartbeat.json、估值快照/信号日历/博主多空比/资金仓、月统计 .stats/)都在项目 data/ 目录,不在发布包内——覆盖安装自动保留。⚠️ 严禁"删掉旧文件夹再装新版"(data/ 会随之丢失且不会回来);跨机器迁移须连同项目目录(data/ + framework_heartbeat.json + .stats/ + .workbuddy/memory/)一起搬。
- 安装养基宝 skill:
skillhub install yangjibao-funds(缺它脚本直接 SystemExit,无法拉持仓) - 扫码登录养基宝:运行
yjb_login.py --user 你的名字→ 微信扫码 → token 存入~/.yjb_token_{名字}.json(主/副账户各扫一次;多账户自动发现) - 安装每日 14:30 自动巡航(定时任务):创建 WorkBuddy automation「财富指挥官·每日14:30诊断巡航」——rrule
FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR;BYHOUR=14;BYMINUTE=30,prompt 见「⏰ 14:30 自动巡航」节,cwds=本项目目录。未安装则框架只被动响应、不会自动盯盘(用户喊"14:30"才跑一次)。
首次诊断前提示用户:token 有效期约 7 天(实测 37 天仍有效,属保守值),失效 401 时脚本红字提示重扫;定时任务与 token 失效互不影响(巡航遇 401 会提示扫码,不静默退回快照)。
触发词(集中汇总表 · v2.13.17)
🎯 一键路由(大白话触发词 · 专家自动编排全功能)[v2.13.30]
> 普通人版:不用记术语,说这三句大白话,专家(Agent)自动按表编排跑对应全部任务,跑完合并成一句白话结论(每步打勾,不刷屏)。映射如下:
| 你说(大白话) | 专家自动跑(全功能路由) | 产出(白话结论) | 时机 |
|---|---|---|---|
| 「收盘了,帮我复盘今天的操作」 /「盘后一条龙」 | ①持仓完整诊断(live_diagnosis) ②场内引擎(intraday_etf: 信号+红绿柱五件套) ③盘后复盘(after_close) ④人话复盘(plain_review) ⑤组合风险(portfolio_risk) ⑥量价状态+术语白话层 | "今天该买/该持/该卖"操作清单 + 明日关注 | 15:30 后 |
| 「早上帮我看看今天能不能买」 /「盘前一条龙」 | ①盘前新闻(news_briefing) ②蛋卷估值快照(valuation_dj) ③黄金数据中心评分 ④博主多空比(blogger_sentiment) ⑤状态闸灯号+量价状态 | "今天该不该出手"方向预判 | 10:00 前 |
| 「周末帮我全面体检一遍」 /「周度大检」 | ①池子扫描(pool_scan) ②月度统计(monthly_stats) ③WF复核(walkforward) ④主线开关(mainline_switch) ⑤框架自检(selftest) ⑥实战验证(live_verify) | 池子健康度 + 策略状态 + 自检报告 | 周末 |
| 「全量体检」 | 智能增量全跑(见下方路由规则) | 最全体检报告 | 任意(约 3-5 分钟) |
> 🧠 专家路由规则(智能增量·省时):
> 1. 用户说大白话 → 匹配上表 → 先读 framework_heartbeat.json 看每个任务 last 执行时间
> 2. 今天已跑过的任务自动跳过(打 ✅ 今日已跑,不重跑)——大部分心跳任务每日自动跑,体检只需补跑"当天没跑 + 时间窗口合适"的
> 3. 重任务(pool_scan 600s / walkforward 300s / monthly_stats / market_rescan)只在逾期时才跑:按心跳间隔判断(池扫 180 天/WF 90 天/月统 30 天),未逾期只提示"上次 X 月 X 日,未到周期"不执行
> 4. 核心必跑:live_diagnosis(持仓诊断)+ intraday_etf(场内)+ 量价状态 + 术语白话层 ≈ 3-5 分钟
> 5. 每个任务产出打勾 ✅ → 最后用一句话白话总结。无法匹配时退回按需路由(见文末💡)。
日常操作类(自动)
| 触发词 | 动作 | 类型 |
|---|---|---|
| 「持仓诊断」「今天操作」「操作卡片」「14:30」 | 运行完整持仓诊断 → 输出操作清单 | 自动·14:30 巡航(工作日自动) |
| 「止损检查」「距离止损」 | 仅检查所有持仓止损状态 | 自动 |
| 「调仓」「加减仓」 | 先诊断,再给操作方案 | 自动 |
| 「只看持仓」「持仓概览」 | 轻量版,拉数据不跑诊断 | 自动 |
| 「估值体检」「编外持仓」「贵不贵」 | 运行编外持仓估值体检卡 | 自动 |
| 「盘后复盘」 | after_close 预测vs实际校验 | 自动·15:30 后 |
| 「人话复盘」 | plain_review 规则模板5段式 | 自动·15:30 后 |
| 「组合风险」 | portfolio_risk 假分散/敞口/减仓优先级 | 自动·15:00 后 |
> ⏰ 时间窗口说明(v2.13.20 评测优化#1):盘后任务(复盘/人话复盘/组合风险)须 15:00/15:30 后执行才有当日收盘数据;盘前任务(盘前新闻)须 10:00 前;晚上回家跑诊断完全正常——诊断本身无时间限制,收盘净值结算随时可跑。
心跳任务类(有脚本自动执行)
| 触发词 | 心跳任务 | 产出 |
|---|---|---|
| 「检查主线开关」 | mainline_switch(1天) | mainline_switch_status.json |
| 「跑WF复核」 | walkforward(90天) | planC_walkforward_status.json |
| 「跑月度统计」 | monthly_stats(30天) | .stats/YYYY-MM.md |
| 「池子扫描」 | pool_scan(180天·重任务) | pool_scan_*.json |
| 「盘前新闻」 | news_briefing(交易日) | L1宏观+L3持仓简报 |
| 「估值快照」 | valuation_snapshot(7天周末) | PE分位+ERP缓存 |
Agent 任务类(无脚本 · 👤需对话执行)
| 触发词 | 心跳任务 | 说明 |
|---|---|---|
| 「年度重审」 | annual_review(365天) | 👤 框架年度结构重审 |
| 「博主追踪」 | blogger_tracker(30天) | 👤 博主预测准确率回顾 |
| 「费率审计」 | fee_audit(30天) | 👤 持仓费率一致性检查 |
> 💡 找不到触发词?直接说需求(如"止盈了钱怎么安排""帮我算下赎回到账"),Agent 按需路由。
工作流
核心流程 (完整诊断)
0. 【强制前置】心跳自检 —— 未跑不得进入后续步骤
→ 运行 `python framework_heartbeat.py --on-diagnose`
→ 逾期任务必须在诊断正文披露,相关闸门结论降级为"参考"
→ [2026-10-22 P1-3] 此前该步仅为"建议",实测 2026-10-20~22 连续 6 轮诊断零触发:
news_briefing 逾期 12 天、mainline_switch 逾期 2 天 —— 上游没跑,下游闸门都在拿旧数据判
1. 拉取持仓 (yangjibao-funds skill)
→ 运行 yjb_fetch.py 获取最新持仓 + 实时估值 (vgszzl/vgsz)
→ 自动发现已登录养基宝账户(扫描 ~/.yjb_token_*.json), 首次使用需扫码登录
→ 输出 data/processed/YYYY-MM/diagnose_live_YYYY-MM-DD.json
2. 框架脉搏状态(已并入第 0 步:`--on-diagnose` 会打印逾期清单与产出文件新鲜度;
需要只看不跑时用 `--check`)
3. 市场状态引擎 + 宏观灯号(脚本规则引擎,非LLM)
→ 拉上证指数日K → 算 MA20/MA60/MA250/ADX(14)/量能 → 判定 A-F 状态 + 仓位上限
→ ①宏观灯号:`macro_light(state, vol_ratio, zt, dt, index_breach=index_breach_check())`
→ 绿/黄/红/**黑**(黑灯=三指数两破年线且年线向下,上限10%,最高优先)
→ 输出诊断报告头部(须含:状态闸 / 灯号闸 / 决策分 / 目标仓位 四行)
4. 趋势猎手诊断 (trend-sector-hunter-v2106 专家 v2.12.x)
→ 在池进攻标的走趋势诊断;编外走边缘闸流水线
→ ②博主多空比(v2.13.6 自动化)**混合方案**:`blogger_sentiment.py` 每日自动尽力抓取(--fetch 心跳 blogger_tracker) + 手动录入(--record 博主名 --view 观点 [--bias] [--type]),四类型加权(技术30%/政策25%/资金25%/情绪20%)算多空比落盘 → live_diagnosis 读入 blog 参数进决策(w_used 0.75→0.85);抓不到标 N/A 不假装。
→ ⑥L2板块深扫 / L3持仓新闻 = **Agent 手动层(不自动跑)**:仅在建仓前(强制 L2 深扫)、重大事件、每日盘前简报(news_briefing.py)时由 Agent 执行,结果以 news 参数注入 decision_score;未提供则 0 占位并归一化(情绪温度计自动兜底)。
5. hardguard 硬校验 (framework_hardguard_check.py)
→ 硬查 6 项: 黑灯/硬止损/仓位上限/单只上限/QDII上限/7天约束
→ 输出 HARDGUARD_PASS 或 VIOLATION 列表,终审前必须过
6. 生成操作卡片
→ 持仓状态表 + 止损距离 + 费率状态 + 操作建议
→ 输出 HTML 文件,present_files 交付
轻量流程 (只看持仓)
1. 拉取持仓 (yangjibao-funds skill)
2. 输出持仓概览表 (不跑框架诊断)
止损检查(独立)
1. 拉取持仓
2. 逐只计算实时盈亏 vs 止损线
3. 列出触发止损的 + 临近止损的
4. 对触发止损的,输出「是否已过7天」、「赎回费多少」
🛡️ 操作信号持仓阈值闸 [v3.0.35 评论区反馈修复]
> 问题:用户已不实持某池内基金(如已清仓 / 留零头 / 7 天内刚赎回),养基宝返回 cost > 0 但 money < 100 元(冻结尾仓)——框架原本会按"持仓"计算止损价、误报「🔴 止损卖出」操作信号。
> 闸门规则(OP_HOLD_THRESHOLD = 100 元,用户可改 0 关闭):
| 状态 | 判定 | 操作信号 | 观察信号 |
|---|---|---|---|
| 有效持仓 | money ≥ 阈值 且 非 empty |
正常输出(止损/止盈/加减仓) | 同操作 |
| 冻结尾仓/零头 | money < 阈值 或 empty=True |
不发 | 输出信号锚(距 30日高点 %) |
| 已清仓 | yjb 持仓中不存在该 code | 不发 | 输出信号锚 |
> 三重防线:
> 1. live_diagnosis.py line 752-762 入参校验:把尾仓的 entry_cost 强制置 None → tr_cost.mode 不会变成「持仓」
> 2. live_diagnosis.py line 849 sell_ops 二次闸:再加 real_hold=True 校验
> 3. live_report.py line 319-329 兜底:旧 JSON 渗透也拦截(real_hold=False 或 hold_money<阈值 直接输出"✅ 无卖点(尾仓观察)")
> 改动文件:live_diagnosis.py / live_report.py 两个脚本顶部 OP_HOLD_THRESHOLD 常量;不改任何 std/方案C/状态闸/止损线/资金分配信号逻辑。
编外持仓处理流水线 (独立)
针对养基宝持仓中「不在框架基金池」的基金(编外持仓),先测边缘闸,再决定去向:
> [v2.13.7] 编外硬离场线(严格派·用户拍板):编外只体检不止损是风控盲区。三档规则(live_diagnosis 落「今日行动」):
> - 浮亏 ≤-15% → 关注提示
> - 浮亏 ≤-20% → 硬离场警示:触发决策评审(给"上涨逻辑仍在"依据 → 设条件止损继续持有;否则离场)
> - 浮亏 ≤-25% → 决策评审(不是强制离场):并列两条路径供客户选 —— ①设条件止损后持有 ②分批离场。禁止写「强制处理/必须离场」([2026-10-22 P1-5] 与本节"禁止对编外输出强制赎回指令"冲突,已消歧)
> 评审输出:data/processed/编外深亏解套方案-YYYY-MM-DD.md(Agent 查基本面 → 等反弹/硬止损建议 + 条件止损线)
> 腾出资金 → 资金闲置仓 cash_pool.py(set 录闲置资金 → plan 算买点可买金额 = min(总可用, 资产×上限−已持进攻),信号中=50%基础仓)
1. 拉取持仓 (yangjibao-funds skill)
2. 编外判定:持仓代码 − 框架基金池(⑨) = 编外列表
3. 对编外列表「逐只拉历史NAV跑边缘闸」:
- 数据源:pingzhongdata/{code}.js 真实NAV
- 边缘闸:bootstrap 1000次 CI下界 E≥+0.2%/笔 且 W≥45%
- 过闸 → 标记「建议纳入QDII基金池」,下次诊断起走正常趋势诊断(给买卖建议)
- 不过闸 → **追加「方案C第二闸」**(仅高波动/QDII 编外适用,给 std 判死的高波动标的一次机会):
- 入场: nav≥30日滚动高点(不含当日) 且 nav>MA20 且 ADX>20
- 出场: +12%止盈 / 峰值回撤≥8%止盈 / 硬止损-10% / 20日时间(优先级序),出场后5日冷却
- 闸: bootstrap 1000次 CI下界 E≥+0.2%/笔 且 W≥45%
- 过闸 → 标记「方案C候选纳池」(挂失效开关+季度WF,见方案C插件小节)
- 双闸都不过 → 进入步骤4(估值体检卡兜底)
4. 估值体检卡(仅不过闸的编外):
- NAV历史分位:当前净值在近3年(或全区间)NAV序列的百分位
→ 低(<30%) / 中(30-70%) / 高(>70%)
- 跟踪指数分位(若是指数联接):拉对应指数PE/PB历史分位,双重印证
- 债基/黄金:不适用分位,改看利率环境/金价分位
附状态:浮盈亏(当前净值vs成本)、持有天数(是否过7天锁定期)
5. 输出:
- 过闸项 → 纳池提示 + 后续正常诊断
- 不过闸项 → 体检卡:估值水位 + 浮盈亏 + 持有天数 + 风险提示
→ 卡面标注「仅信息参考·非交易建议」
→ 不出现「清仓/买入」等交易指令字眼
> 关键顺序:编外 ≠ 直接体检。编外先过边缘闸,过闸即升格为合规标的;只有过不了闸的才沦为「沉默资产」,只给估值温度计。
关键规则 (与趋势猎手v2.11.0对齐)
仓位上限
| 市场状态 | 仓位上限 | 科技/进攻仓 | 备注 |
|---|---|---|---|
| A/B/F (熊市/底部/顶部) | 0-10% | 0% | 转债基+货币+黄金5-10% |
| C (牛市启动) | 70% | 70% | 宽基先行+加速加仓 |
| D (强趋势) | 80% | ≤80% | 禁满仓 |
| E (震荡) | 科技0%;非科技均值回归≤10% | 0% | 科技/进攻仓清零转债基+货币;黄金5-10%保留;非科技仅 RSI<30+距MA20>5%+跌幅收窄 三条件全满足才试仓 |
⓪.5 月线周期层(2026-10-22 新增 · 只收紧不放宽)
- 工具:
monthly_regime_check.py --code 399006 --state {⓪态}(创业板月线 MACD) - 有效范围:只认创业板月线(方向命中 5/5)。上证 53.6%、创业板周线 46.0% → 不可用
- 不能当买卖点:金叉时底部已涨 +34.7%、死叉时顶部已跌 −32.8%(2016-01 先跌 43.7% 才确认熊市)
- 冲突处理(单向):⓪ 判 C/D 而月线死叉 → 降级按 B/E 给仓位;反向不自动放宽上限
- 阶段看回撤:死叉时距本周期高点 <20% → 熊市初期(后续空间最大);>35% → 中后段(空间有限,不按「还要腰斩」外推)
- 领先信号:顶部动能衰减连续 ≥3 个月 ≈ 比死叉早约 3 个月(按代数值算,不用绝对值)
- 月末定稿:月内数值标
provisional;不足 40 个月的指数(如中证A500)降级为「参考」 - 标注义务:
[月线周期·方向性参考·非统计显著](样本 6 次、多重比较 p≈32%),禁止宣称准确率 - 执行顺序(硬性):每日/每次诊断判出 ⓪ 态后立刻跑本层,
--state必须传实际 ⓪ 态;脚本输出consistency字段(consistent/tension/n/a)直接照抄,不得由 LLM 自行推断月线金叉死叉
止损线
| 类型 | 止损线 | 代表 |
|---|---|---|
| 高波动 (σ>25%) | -10% | 科创50/创业板/半导体 |
| 中波动 (σ15-25%) | -8% | 中证500/沪深300 |
| QDII | -12% | 已纳入(050025/006075标普500),总仓≤20%,到账T+5-7天;⚠️暂停申购不可建仓 |
单标的上限 (硬约束)
| 类型 | 单只上限 |
|---|---|
| 高波动 (科创50/创业板/半导体/方案C插件) | ≤15% |
| 中波动 (中证500/沪深300/医药/白酒) | ≤10% |
| QDII 总仓 | ≤20% |
| 黄金 risk-off 底仓 | 5-10% |
| 进攻仓总上限 | D≤80% / C≤70% (禁满仓) |
板块敞口上限 (P1-1 · 2026-10-22 新增)
> 为什么加:此前只有单只上限,没有板块合计上限 —— 5 只半导体各 15% = 75% 单一赛道敞口,完全合规。
> 而"同板块双通道不同时下注"那条只管场内+场外双通道,管不住池内多只同赛道。
| 层级 | 上限 | 触发动作 |
|---|---|---|
| 板块软上限 | 35% | 预警,加仓需额外理由 |
| 板块硬上限 | 45% | 禁止加仓,出超标减仓清单(按浮亏优先) |
| 半导体 | 30% | 同上(重点赛道单独收紧) |
| AI硬件链(半导体+计算机+通信 聚合口径) | 35% | 同上 |
| QDII 总仓 | 20% | 保留原约束 |
| 债券/货币 | 不计入 | 防御资产,不受板块上限约束 |
实现:wc_common.sector_exposure(holdings, total_asset) → 返回各板块占比 + violations 列表(含软/硬级别)。
参数:framework_config.json → sector_caps。
构造验证(2026-10-22 实测):5 只半导体各 15%(总 100 万)→ 半导体 75% → 同时触发「半导体硬上限 30%」与「AI硬件链聚合 75% > 35%」两条禁止加仓。
状态机仲裁(P1-5 · 2026-10-22 新增)
> 为什么加:⓪ 状态与 ① 灯号是两套并行分类,冲突时此前只有"取 min"一句带过;
> 编外规则还内部打架("禁止强制赎回" vs "≤−25% 强制处理")。
全序优先级(高→低):黑天鹅豁免 → 个股级处置(硬止损/编外评审)→ 黑灯 → 状态清零 → 加仓
| 冲突场景 | 裁决 |
|---|---|
| ⓪=C/D 且 ①=黑灯 | 按黑灯,上限 10%,加速加仓失效 |
| ⓪=E 且 ①=绿 | 按 E,科技仓 0%,绿灯只对非科技生效 |
| ⓪=A 且 ①=绿 | 按 A,上限 10%,只减不加 |
| 月线死叉 且 ⓪=C/D | 仅标注,不降级(p≈32% 不显著,无否决权) |
| 编外 ≤−25% 且 处于黑灯 | 个股动作=决策评审;同时披露组合约束"黑灯不加仓",两者并列不互相吞并 |
实现:wc_common.resolve_conflict(state, light, daily_drop, combo_drawdown, single_pnl, is_bianwai, month_cross) → 返回唯一 (action, reason, detail),detail['combo'] 携带组合级约束。
初始购买金额(建仓金额规范)
- 起购额:框架内全部标的 10 元起(2026-08-03 实测,fundmobapi MINSG)
- 首次建仓金额 = 目标仓位 × 50%(std 右侧:留补仓/加仓空间,信号质量"高"才可加到目标仓位)
- 方案C(突破追涨)例外:快进快出不摊平 → 可一次到位 ≤ 单只上限,但受状态仓位上限约束
- 目标仓位 = min(单只上限 × 总资产, 状态进攻仓上限 × 总资产)
- 例:总资产 ¥100万,021528 单只上限 15% → 目标 ¥15万 → std 首仓 ¥7.5万 / 方案C 可至 ¥15万
- 限购标的:即使信号成立也禁止建仓(见申购状态前置铁律)
⚠️ 申购状态前置检查(买点铁律,2026-08-03 新增)
- 任何买入推荐前必须查申购状态:
wc_common.fund_buyable(code)(天天基金 SGZT/BUY/MINSG) - 暂停申购 / 限大额 的标的:信号成立也不得推荐建仓,仅提示"限购·不可买"
- 每日诊断自动输出「全池标的申购状态检查」表(不只 QDII——热门基金也会限购,2026-08-03 实测:006075/050025 博时标普500 暂停申购;006331 中银债C/008702 黄金C/005698 全球科技QDII 限大额)
- 代码纠错记录(2026-08-03 全池审查):
050025=标普500A(非C),C类=006075004743=上证中盘(非创业板),创业板C=004744004193=招商中证500增强C(非中证1000),中证1000C=011861(框架池原有两个中证500敞口已消除)004512=海富通沪深300增强C(非被动),被动沪深300C=007339(宽基先行用被动)011611=华泰柏瑞上证科创板50成份ETF联接C(科创50全称,代码正确)
📊 判读铁律(实证驱动 · 2026-10-19 从实战结论固化)
> 这八条是「判读层」的硬规则,不是可选参考。每条都带样本量和胜率,违反即判定该次分析无效。
> 完整版在 agents/trend-sector-hunter-v2106.md 的「铁律」节;此处为速查摘要。
| # | 铁律 | 核心数字 | 一句话执行 |
|---|---|---|---|
| 1 | 年线分水岭 | 年线上行+深跌 T+20 74.5% vs 年线下行 46.6%(n=740) | 判「跌得多是不是机会」前先判年线方向 |
| 2 | 长下影年线相反 | 年线上方见顶(T+20 −3.05%)/下方偏正(T+10 +1.19%/68.3%,n=127) | 深 V 先看年在线上还是下,上方当卖出信号 |
| 3 | 缩量止跌非买点 | 年线下方 n=18:T+1 41.2%/T+3 23.5%/T+10 25.0% | 缩量止跌=跌势喘息,T+3 是最危险窗口 |
| 4 | 真突破三铁律 | 年线向下首次站上:60日 +20.68%/80%;年线向上站上:0% | ①站上年线②60日涨>15%③黑灯解除,缺一即假突破 |
| 5 | 市场广度 | 盘中 4099 涨 → 收盘 3111 涨(10/16 实证) | 广度必取收盘口径;指数红≠市场好 |
| 6 | 回测三铁律 | n<100 时 95%CI 约 ±13.7pp | 单一窗口不可采信;缺 T+1/涨跌停→胜率虚高 |
| 7 | 指数化妆术 | 四件套:家数/涨跌停/成交额/主力净流向 | 单指数独强 ≠ 行情启动 |
| 8 | 外盘传导 | 费半+2.78% → A股半导体净流出 49.78 亿 | 走板块不走指数;先查国内政策对冲 |
与既有规则的关系
- 第 1~3 条属「形态判读」,优先级高于 ⑤筛选层的技术确认(形态对了但环境错,仍不买)。
- 第 4 条是「真突破」的定义,与方案C 的「突破30日高点」不是一回事:方案C 是快进快出的动量,第 4 条判的是「趋势是否真的转折」。
- 第 5、7 条属「读数纪律」——所有基于涨跌家数/指数涨跌的结论,必须按此复核。
- 第 8 条约束外盘→A 股的因果推断,禁止跳过「板块」和「国内对冲」两关直接下结论。
五个补充场景(2026-10-19 补齐)
| 场景 | 规则 | 为什么 |
|---|---|---|
| 分红/除权 | 止损用复权净值,或分红日不判止损 | 净值下调会被误算成亏损→假止损 |
| 基金清盘 | 规模 <5000 万 → 一票提示;连续 60 工作日低于→清盘程序 | 不等到净值归零 |
| 巨额赎回 | 单日异动>3% 且与指数背离 → 标「疑似赎回异动」,不计入信号 | 赎回费/摊薄不是趋势 |
| 长假前后 | 节前最后 2 日不新建仓;节后首日只观察 | 10/8 复市已实证:首日形态失真 |
| 指数成分调整 | 季度调仓窗口(6/12 月第二个周五后)净值异动不作信号 | 跟踪误差放大 |
📊 财报「环比考核」铁律(2026-10-19 新增 · 长鑫科技实证)
> 一句话:科技股三季报只看同比会亏钱,必须算单季环比。
- 实证(2026-10-19 当日):长鑫科技前三季度归母净利 1,310~1,325 亿(去年同期亏损,同比扭亏、营收同比增超 8 倍),但 Q3 单季归母净利环比仅 +1%~3.9%(Q1/Q2 环比为 +246%/+113%)→ 当日 −7.77%(早盘一度跌近 9%),拖累 科创50 −2.17%、半导体设备 −3.95%、中证半导(561980) −4.54% 全场最差、半导体板块 39 涨 148 跌。
- 判定规则:全球资金对 AI 硬件的评判标准已从「同比增长」切到「环比动能」。环比增速下滑即视为「不及预期」,不论同比多好看。
- 适用范围:存储、光模块、PCB、算力芯片(AI 硬件全链)。
- 执行要求(硬性):
1. 诊断池内标的季报/年报时,必须同列「单季环比」与「同比」两列;只列同比视为无效分析,不得据此给买入建议。
2. 环比失速判定:单季环比 < 上季环比的 50%,或单季环比 <5% → 信号质量直接降一级,不得作为加仓依据。
3. 「同比爆炸 + 环比失速」= 卖出/不买信号,绝非买入信号(长鑫当日即因此杀跌)。 - 配套估值校验:周期股(存储/面板/资源)静态低 PE ≠ 便宜。海外同业是硬标尺——长鑫静态 PE<20 倍看似不高,但三星/SK海力士 5~7 倍、美光 <12 倍,景气顶点 10 倍左右才是历史中枢。
- ⚠️ 两条常见误读要排除:①「同比扭亏」不等于拐点延续(要环比确认)②「新增产能放量」如果是控股非全资项目,少数股东权益会分流归母利润,须单列评估。
- 一句话结论:「同比讲故事,环比见真相」。三季报季(10 月中下旬)凡不披露环比测算的推荐,一律视为不合格。
7天锁定期
- 买入后 7 个自然日内赎回触发 1.5% 罚金
- 唯一豁免:黑天鹅条款 (单日跌 ≥7% / 组合回撤 ≥5%)
操作窗口
- 14:30 运行 intraday_confirm.py 硬校验
- 14:50 前必须完成全部场外基金操作 (15:00 截单)
- OTC 未知价时滞:方案C 建仓前必须 14:30 硬校验通过
每日诊断自动输出(脚本内置,无需人工)
- 🚨 黑天鹅检测:单日盘中跌≥7%(逐只 vgszzl)或 组合单日估值回撤≥5%(市值加权)→ 红字警示 + 触发强制赎回豁免条款(认1.5%罚金)
- ⏳ 7天锁定期解锁倒计时:持有<7天的持仓输出 剩余天数 + 解锁日期,解锁前提示勿动
- 🏦 债基/黄金体检:重仓防御盘(债基/黄金)近3月 NAV 坡度,正=持有环境 OK(金价大跌时黄金坡度转负须留意)
- 🎯 在池进攻标的入场信号:std 标的输出 nav>MA20+MA5>MA10+周线>30周MA 是否满足,v2.13.11 起叠加 F组合双确认(上证ADX>25 + 当日涨>0.8%放量代理 + 20日涨幅>沪深300 相对强弱,回测驱动:2026弱市 std 从-51,659改善57%、2025-26全周期胜率51%→67%);方案C 标的输出 nav≥30日高点+>MA20(有指数映射的加 ADX>20 完整校验)——补齐"在池诊断空转"
- ① 宏观灯号(🔴 唯一实现 =
wc_common.macro_light(),参数 =framework_config.json → lights;本节不再手写阈值,避免与代码漂移): - ⚫黑灯(最高优先):上证/创业板/科创50 至少两个 收盘<MA250 且 MA250 5日斜率<0 → 上限 10%。
[2026-10-22 补实现] 此前全代码 grep「黑灯」仅 1 处注释、零实现,A 状态直接返回「红灯 30%」,与实际应判的 10% 相差 3 倍仓位上限。现由index_breach_check()+macro_light(index_breach=...)落地。 - 🟢绿:C/D 且 涨停≥80 且 量比≥1.2 → 100%;🟡黄:其余 → 70%;🔴红:state∈[A,F] 或 (C/D 且 跌停>20 且 量比<0.7) → 30%
- 最终仓位 = min(状态闸, 灯号闸),黑灯压过一切;分数只能下调,不能上调
- ③ 估值水位:蛋卷指数估值接口(沪深300 PE 代理上证,PE 分位 + ERP,10Y国债用近似2.75%标注)→ PE分位系数 × ERP系数 → 估值水位系数(≤1.0 封顶)
- 审计A 覆盖范围:养基宝 dwjz vs 天天基金最新净值,含在池进攻标的(编外+在池进攻都核对),偏差>0.5% 警告
- 方案C INDEX_MAP:指数基金映射跟踪指数(012979→恒生科技 124.HSTECH),方案C回测用指数日K含 high/low 算完整 ADX;主动基金无映射 → ADX 降级跳过,靠边缘闸惩罚假突破,报告标注「方案C变体」
- 回测统一入口:
wc_common.run_backtest(daily, 'std'|'planC')统一调度,内部复用经验证实现,保证结果一致 - 方案C 季度WF 复核:
planC_walkforward_check.py已落地(训练70%/OOS30% + 近2年/近3年窗口,n<8 诚实维持现状不假关门),产出planC_walkforward_status.json;2026-08-03 首跑:021528 仍过闸✅、001630 临时关门❌、008087 仍过闸✅(与专家结论冲突,因 NAV 降级版 vs 指数完整版,待人工复核) - 交易记录闭环(v2.13.6 落地):
trade_log.py— ⑩回溯审计数据源(此前全框架无记录入口,⑩层空转)。①add --code X --op buy/sell --nav Y --amount Z [--reason] [--strategy]记录交易;②verify每日自动 T+5/T+10 验证(买入后第5/10交易日盈亏+评级⭐⭐⭐>+2%/⭐⭐±2%/⭐<-2%,T+10 含最大浮盈/最大回撤/超额vs沪深300);③stats统计胜率/止损率/止盈率;④export导出 markdown 复盘表;⑤audit台账副本体检(列出各副本条数,检出「数据分裂」)。数据data/processed/trade_log.json;已接入心跳backtest_audit(每日自动 verify,force 拉最新 NAV 防缓存滞后)。
⚠️ v2.13.34 两处修复:①台账路径原固定BASE/data/processed/,而真实 3 笔交易落在 cache 副本的skills/wealth-commander/data/processed/下 ⇒ 脚本读到空台账并据此回写(历史静默丢失风险)。现改为多候选自愈 + 条数最多者优先,并支持WEALTH_HOME固定数据根。②backtest_audit因被标 event_driven 而永久不可达 ⇒last恒为 null(详见「条件过滤」节) - 📊 组合风险:
portfolio_risk.py— ①同基金A/C多份额合并识别(如 021528 与 001480 为同一基金 A/C 份额 → 合并为一个敞口);②主题聚类→真实敞口汇总(假分散识别);③减仓优先级打分(浮亏深度/同基金重复/净值偏差/锁定期/方案C保留价值,输出决策参考非强制);④方案C 信号日历(距30日高点%,≤5%标🔴近在咫尺) - 🔬 方案C 参数敏感性:
planC_sensitivity.py— 止盈±20%/回撤±20%/时间16-24日 网格扰动 → 过闸率判定 参数高原(≥70%稳健)/尖峰(<40%过拟合);近12月滚动胜率趋势。2026-08-03 首跑:021528 过闸率59%🟡中等(可保留);008888 4%🔴尖峰、008087 7%🔴尖峰、001630 0%🔴尖峰且滚动衰减(近月25%) —— 三主线插件皆为拟合产物,印证方案C"有有效期" - ⏰ 14:30 自动巡航:WorkBuddy automation「财富指挥官·每日14:30诊断巡航」(工作日14:30,automation-1785760781059)自动跑 live_diagnosis+live_report+portfolio_risk 并输出操作卡片摘要;token失效会提示重扫,不静默退回快照(全部失效 exit(2) 中止)。巡航含 3 项 MCP 精确校验(连接器数据比脚本爬虫更稳):①板块资金流 mx_index_block_finance_data(半导体申万精确值→008888 资金面警示);②指数复核 tdx_kline(状态引擎结果与 tdx 不符则以 tdx 为准重判);③基金净值三方审计 mx_fund_finance_data(养基宝 vs 天天 vs 妙想,偏差>2% 标数据风险)。新用户首次使用须提示安装此定时任务(见「首次使用」节)
- 📈 回测系统(交易明细级):
backtest_ledger.py(全量跑)+backtest_report.py(7类分析HTML)。数据=天天基金累计净值(复权) + 真实摩擦(C类0申购/A类+0.15%,赎回<7天1.5%/7-30天0.5%/>30天0) + 成交假设(信号日15:00前按当日净值) + 基准沪深300。每笔输出 entry_date/exit_date/hold_days/ret_pct(含摩擦)/exit_reason/T+5/T+10/bench_ret。2026-08-03 首跑:16标的1142笔,std 578笔(胜率44%/均持23天),方案C 564笔(胜率55%/均持16天);021528 方案C 出场=止盈9/回撤止盈3/时间2,硬止损-10% 从不触发(与专家结论一致) - 已知记账口径:止盈笔记触发日实际收益(可能>12%,如924行情跳过),非止盈笔记实际价——比旧引擎记目标价更真实
- ⑨ 量化综合层(收官):
decision_score()输出 0-100 决策分与档位(≥80加仓 / 60-79持有 / 40-59减仓 / <40止盈止损)。 - 权重唯一源 =
framework_config.json → weights.factors(2026-10-22 统一):灯号20 / 估值15 / 趋势10 / 风险10 / 持仓10 / 博主10 / 新闻10,按"实际可用项"动态求分母。本节不再列举权重数字,改配置即生效。 - 此前三套并存(代码 85 分母、SKILL 28.6/21.4 那套 70 分母、Agent MD 11 项 105%),已全部废弃。
- 分数如何影响仓位:由
target_position(state, light, score)计算 ——目标仓位 = min(状态闸, 灯号闸) × 分数系数(1.0/0.67/0.33/0) × 风险预算。分数只能下调不能上调,闸门是硬上限。
[2026-10-22] 此前分数只在 ⑨ 内部循环、不影响下单比例,等于 13 层算完空转;现闭环。 - 黄金底仓合规自检:黄金市值占比 <5% → ⚠️建议补底仓;>10% → 超上限。2026-08-03 实跑:黄金仅 1.8%,低于 5% 下限(近3月 -14.8% 跌出来的)
- 组合超额归因:
portfolio_alpha()组合近21日市值加权收益 vs 沪深300 → 超额。2026-08-03:组合 -7.94% vs 基准 -5.79%,跑输 2.15%(不只是市场不好,选基也弱于基准) - 科技拥挤度(代理TMT):科创50+创业板成交占比,阈值 >35% 降仓50%/>40% 只减不加;⚠️当前指数K线成交量口径不一致失真(100%),标 N/A 待接入东财板块接口(限流不稳)
- token 到期预警:token mtime >6天 → 预警建议重扫(不展示账户昵称, 仅提示"已登录账户 X 临近过期")
- 信号日历存档:021528 每日"距30日高点%"追加
signal_calendar_history.json,积累预测质量数据 - ② 方案C 持仓出场跟踪:
planC_position_track()已持仓 → 止盈价/距止盈%/止损价/距止损%/持有天数/20日时间剩余;未持仓 → 入场信号距离。每日自动输出(021528:止盈4.097/+14.7%,止损3.292/+8.5%,持6天剩14天) - ③ 框架脉搏:
framework_heartbeat.json已落地(10 任务+pool_updates 纠错记录),live_diagnosis 每日输出心跳仪表盘(逾期🔴/待初始化🟡/正常✅) - ④ 组合整改·资金去向推演:portfolio_risk 按减仓优先级 TOP3 推演腾出资金去向(E状态→留现金等021528信号),仅推演不喊操作
- ⑤ 008087 归因结论:名称修正=华夏中证5G通信主题ETF联接C;三重证据(WF训练段❌ + 参数敏感性7%尖峰 + std/planC双不过闸)→ 建议关门(待用户拍板从主线插件剔除)
- ① 方案C 候选池扩展结论(2026-08-03):6 主题 C 类(光伏012723/新能源增强012329/券商012363/医疗012635/稀土011036/军工A005609)std+方案C 全不过闸——方案C 在 A 股主题基金过闸率极低,008888/021528 为小概率特例,候选池维持现状不再盲扩
- 008087 已关门剔除(2026-08-03 用户采纳):三重证据(WF训练❌ + 参数敏感性7%尖峰 + std/planC双不过闸),从主线插件与回测目标移除
- ① 仓位分配器:
position_allocator()多信号同时触发时按 CI下界E 降序贪心分配(状态总上限+单只上限双约束),输出各标的分配%与金额 - [v2.13.17 决策7 → v2.13.18 P1修复] 成功率分层调度(核心纪律):
audit_pool_gate.py全历史窗口双方法复核(std K组合 + 方案C)→pool_gate_cache.json→ 按标的实际交易方法的 Wlo CI下界分三档:王牌(Wlo≥65%)×1.0 / 主力(50-65%)×1.0 / 观察(<50%或样本n<8)禁买。分配器自动过滤观察档,诊断标注 w_tier。[v2.13.18 P1] 边缘闸双条件前置:Elo<0.2% 即使 Wlo 达标也降观察(021528 Elo+0.17%/018647 -0.09% 曾漏网标主力档——胜率高但期望≈0,禁买)。2026-08-07 实测定档:王牌=019254深证成长40(planC 90.9%/Wlo72.7%/Elo+2.29%)、008286人工智能(84.6%/69.2%/+3.14%);主力=008087通信(52.9%/+1.71%)、010524 5G(52.9%/+1.27%)、020733创业板200(55.6%/+0.56%);021528/018647 降观察(Elo不过闸);std 全线 Wlo<45% 观察——框架高成功率交易子集=方案C 5只。007911 B试仓(41.9%)被分层否决 - [v2.13.17 决策8] 止盈资金循环:trade_log sell 自动把回笼资金写入
cash_cycle.json循环队列 → 诊断 notes 展示"回笼待循环¥X → 下次王牌/主力档信号优先建仓";闲置超20交易日提示转债基吃息 - ② 今日行动清单:诊断末尾三行式(1.操作/2.盯/3.注意),14:30 巡航扫一眼即知动不动手
- ③ 方案C vs 买入持有(回测报告新增):关键结论——方案C 只在震荡高波标的上胜出(计算机+72% vs -21%),长牛标的上完败(标普+16% vs +162%/银华+138% vs +566%)——方案C 是"波动收割机"非"牛市放大器",长牛标的应长期持有
- ④ 盘中估值校准日志:
estimate_calibration_history.json每日记录 vgszzl,次日回填披露净值,积累"回测乐观偏差"实测数据 - 📋 盘后复盘(自证预言):
after_close.py收盘后对比 盘中诊断 vs 实际——市场状态重判/行动预测校验/信号日历校验/估值校准回填,每次持久化data/processed/review/YYYY-MM-DD.json,历史命中率自动统计(2026-08-03 首跑 3/3 命中)。心跳已注册(1天) - 📰 盘前新闻简报:
news_briefing.pyL1 宏观快讯(东财 7x24 接口)+ 市场/灯号/估值快照,输出data/processed/briefing/YYYY-MM-DD.md;L3 持仓新闻由 Agent 按需补充。心跳已注册(交易日) - 资金流向说明:北向资金净买入 2024-08 起停止披露(沪深港通只公布成交额)——经典"北向"指标已失效。板块资金流双通道:
- MCP 通道(Agent/14:30巡航 调用):
mx_index_block_finance_data(东方财富妙想)自然语言查板块资金流——精确到申万板块(半导体(申万) 主力净流入直接可查,push2 爬虫拿不到),2026-08-04 实测:半导体 -201.7亿 🔴 / 通信设备 +12.3亿 / 软件开发 -15.2亿 / 电子元件 -21.5亿。半导体净流出>50亿 → 008888 资金面警示;科技流出+防御流入 → 高低切信号 - 脚本通道(兜底):
sector_fund_flow()东财 push2 行业板块(多域名重试,半导体板块名缺失用科技合计代理),TMT 真实拥挤度(2026-08-04 实跑 28.5% 正常,>35% 降仓/>40% 只减不加) - MCP 只能由 Agent 调用,脚本无法调——架构为"脚本 push2 兜底 + Agent MCP 精确补充",14:30 巡航 prompt 已含 MCP 步骤
账户映射与持仓数据来源
- 账户发现:脚本自动扫描
~/.yjb_token_*.json发现已登录账户(不硬编码任何账户名)。 - 首次使用:无 token → 运行
yjb_login.py微信扫码登录养基宝(主/副账户各扫一次),登录后自动识别。 - 持仓数据以养基宝当日实时拉取为准,不在本文件硬编码具体持仓。每次诊断拉取当日实时持仓,再按「在池/防御/编外」分类与估值体检。
- token 有效期约 7 天,过期须重新微信扫码登录(见「数据时效强制」纪律)。
编外持仓判定与估值体检规则
- 编外定义:养基宝持仓中,不在框架基金池(⑨) 的基金(含 QDII/科技/其他)。编外先过边缘闸再分类,不是直接定为沉默资产。
- 处理原则:编外持仓先拉历史NAV跑 std右侧边缘闸(bootstrap 1000次 CI下界 E≥+0.2%/笔 且 W≥45%);过闸即纳入 QDII 基金池(走正常趋势诊断、可给买卖建议),不过闸才走估值体检卡(仅披露状态、不喊买卖)。体检卡也绝不产生买入信号,买卖决策权完全留给用户。
- 估值水位算法(仅不过闸的编外适用):
- 主指标:基金自身 NAV 近3年历史分位(首次下载存
bianwai_cache.json,后续读缓存;用当日净值在缓存序列中定位水位,标注[真实NAV·含摩擦]) - 辅指标:跟踪指数 PE/PB 分位(若可得)—— ⚠️待落地:当前实现仅 NAV 分位,指数PE分位接口未接,勿承诺未实现功能
- 水位档:低(<30%) / 中(30-70%) / 高(>70%)
- 输出字段:估值水位 · 浮盈亏 · 持有天数(是否过7天锁) · 风险提示
- 铁律:体检卡不含任何买卖指令;估值高≠该卖,估值低≠该买。
- QDII 基金池(已纳,走正常信号):
006075博时标普500ETF联接C — ⚠️2026-08-03 实测暂停申购(限购),不可建仓。std右侧过闸结论基于 050025(A类) 回测(CI_E+1.20% / CI_W51.4%),代码已纠正:050025 是 A 类,C 类是 006075。单只≤QDII上限20%,止损-12%,恢复申购前仅可持有不可加仓- std 自动纳池(方案B v2.16.0,2026-08-04 全市场扫描首启用):
- 规则:pool_scan 三关(实名核对→边缘闸→申购状态)过闸且开放申购 → 自动纳入池,按
confidence_tier(n_笔数, 历史年限, 收益率集中度)分级:高置信(≥15笔且≥4年且无集中度风险)正常仓位 / 中置信(≥10笔或≥3年)首仓减半 / 低置信(<10笔且<3年)观察仓≤单只上限50% - 2026-08-04 首扫描纳入:
012620嘉实中证软件服务ETF联接C(std 9笔/78%/CI_E≥+3.89% → 中置信);018647易方达中证家电龙头ETF联接发起式C(std 8笔/88%/CI_E≥+1.68% → 低置信) - ⚠️bootstrap 可复现性修复(P0):
bootstrap_ci固定 seed=42——无种子时 CI 下界抖动导致边界标的结论翻转(实测 018647 planC Elo +0.06% vs +0.29%),已修复 - ✅置信度接入仓位分配器(P0-1 闭环):
position_allocator读 tier(中/低置信 ×0.5 封顶单只分配),live_diagnosis从 pool_scan 落盘读 tier 注入信号——分级从"标签"变"纪律"(实测 012620 10%→5%) - ✅黑天鹅收盘确认进复盘(P0-3 闭环):after_close 新增 check——收盘 ACW 净值复核盘中 vgszzl 预警,确认/撤销豁免(防估值误报触发强制赎回)
- 方案C 候选池(编外升格通道):
021528财通成长优选混合C — 2026-08-03 经「编外方案C第二闸」升格(降级版 N=14,CI_E≥+3.62% / CI_W≥71.4%)。⚠️2026-08-04 完整版复核(885001 偏股混合基准 ADX):N=13 胜率62% CI_E≥-2.95% CI_W≥38% ❌不过闸 —— 降级版结论被完整版推翻(008087 同型案例),纳池资格降级:仅观察不建仓,待参数重拟合或 WF 复过(完整版)才恢复;单只≤15%;挂失效开关+季度WF双检;建仓前 14:30 硬校验;审计A 净值偏差持续监控- std 回测口径说明:执行层 std 出场为简化版(周线破MA20/60日/-12%),未含专家层"ADX翻转/状态A/F"出场——std 边缘闸结论可能偏保守,以方案C 通道为主力
- 编外典型(历史结论·仅供参考):恒生科技全系(012979/013402/012805/016953/014674/013183 等)std右侧与方案C 双闸均未过闸(2026-08-03 实跑);实际状态以当日边缘闸实跑为准,不依赖此历史结论。
编外 NAV 历史序列缓存(防重复拉取)
- 目的:编外基金首次诊断时从天天基金下载全量真实 NAV 序列(数百~上千行)并落盘;之后每日诊断优先读缓存,不再重复下载网络数据。
- 缓存文件:
bianwai_cache.json(与脚本同目录)。结构:{code: {name, tag, nav_series[[ts,nav]...], nav_n, edge_gate{pass,E,W,Elo,Wlo,n_trades}, cached_date}}。 - 命中规则:缓存未超过
CACHE_REFRESH_DAYS=30天则直接复用;超过 30 天自动重新下载刷新。 - 估值水位:用当日净值(养基宝实时
dwjz)在缓存历史序列(近3年窗口)中定位百分位,无需重新下载即可刷新贵贱判定。 - 效果:次日诊断编外基金全部命中缓存(输出标
📦缓存),仅新出现的编外基金才标🌐下载。
方案C 插件(突破追涨·主线专属,有有效期)
- 三主线:半导体(008888) / 通信(008087) / 计算机(001630),A股ETF联接C,单只≤15%
- 入场:nav≥30日滚动高点(不含当日) AND nav>MA20 AND ADX>20
- 出场:+12%止盈 / 峰值回撤≥8%止盈 / 硬止损-10% / 20日时间(优先级序),出场后5日冷却
- 14:30 硬校验:建仓前必须
intraday_confirm.py输出planC.pass=True才允许下单(OTC未知价时滞闭环,禁止LLM主观判断突破) - 失效开关(三块独立判定,任一触发即暂停该块新建仓):① 60日超额收益 vs 沪深300 ≤-15%;② 周线破30周MA 且 ADX<20;③ 赛道ETF连续3日净赎回+主力净流出(本地无数据标 N/A 不计入)
- 季度 WF 双检:
planC_walkforward_check.py每90天复核,与失效开关做 AND——任一排除即不分配 - 与 std 仲裁:同板块方案C优先级>std,不双开;插件暂停退回 std 判定(std本身未过闸则该板块不交易)
- 当前状态:仅半导体(008888)有效(实盘截至2026-07-29,通信/计算机 WF 未过闸暂排除)
📡 全池买点扫描(v2.13.14 扩池 2026-08-06)
- 总池 = POOL(22只交易池) + MONITOR_POOL(19) + monitor_pool_full(313只全市场监测·v2.13.17清理后) ≈ 354 只,每日诊断对全部池内标的(不只持仓)检测入场信号
- [v2.13.17 全池清理]
scan_pool_cleanup.py:重建全量池(ETF联接C全量372+QDII指数精选) → 去A类(2) → 去低波(31, 黄金保留=防御资产层) → 指数级去重(同指数留1只, 198) → 313 只。交易池标的豁免保留。残留池内重复(黄金008702+014662/中证500/5G通信/光伏)为策略性共存(防御底仓 vs 交易仓) - 交易池:过闸标的(可交易,信号满足可建仓);监测池:主流板块代表/近过闸候选(信号满足只提示"🟡监测观察",不构成建仓建议——边缘闸未过,纪律不放宽)
- 目的:买点覆盖面从"仅持仓"扩到"全池38只"——未持有的候选出信号也提示,增加买点发现
- 监测池 20 只:5G(010524)/医药(000376)/消费/券商/军工/新能源车/汽车/农业/游戏/红利(004815近过闸)/煤炭/机器人/电子(001618近过闸)/数据/恒生科技/碳中和/医疗/光伏/地产(013273)/黄金
- 实测(2026-08-06):38 只扫描当日抓到 3 个新买点——🟢007911 有色(可交易) + 🟡医药/医疗(监测);扩容 304 只后当日 11 个买点信号 + 板块信号雷达(医药 5 只同步触发=板块走强)
- 预热机制:
monitor_pool_warmup.py批量拉 264 只监测池 NAV 落缓存(心跳 monitor_warmup 每 7 天),全池扫描只测有缓存的标的(无缓存标"待预热"避免诊断卡死)
框架池边缘闸总表(2026-08-03 全池实测 · 可交易清单)
| 标的 | std | 方案C | 状态 |
|---|---|---|---|
| 021528 财通成长C | ❌ | 降级版✅ / 完整版❌(CI_E≥-2.95%/W≥38%) | 🟡 仅观察不建仓(2026-08-04完整版复核推翻) |
| 008888 半导体C | ❌ | ✅ CI_E≥+0.40%/W≥46%/28笔 | 🟢 可交易 |
| 008286 人工智能C | ❌ | ✅ CI_E≥+3.14%/W≥69%/13笔·ADX完整 | 🟢 可交易(参数高原100%·2026-08-06纳入) |
| 008087 通信C | ❌ | ✅ CI_E≥+1.71%/W≥53%/17笔·ADX完整 | 🟡 可交易(参数尖峰30%·新建仓减半) |
| 006075 标普500C | ✅ CI_E≥+1.50%/W≥56% | ❌ | 🟡 过闸但暂停申购 |
| 004348/004744/001630/011611/007339/011861 | ❌ | ❌ | ⚪ 不过闸(实仓=0) |
> 可交易清单 = 008888 + 008286 + 008087(均走方案C,后两只 2026-08-06 供给端扩充);021528 完整版不过闸→仅观察不建仓(回测历史收益来自降级版信号,实盘谨慎);006075 过闸但限购不可买;其余 std 与方案C 双不过闸。std 过闸 5 只(2026-08-06 全市场 476 只 ETF 联接C 全量筛选):013602 光伏 / 001595 银行(44笔) / 007911 有色 / 014662 黄金(15笔 CI_E+3.17% W60%) / 019254 深证成长40(8笔 CI_E+4.50% W62%)——2026 回测加入后进攻仓 +6.50%→+7.08%(019254 04-10 B状态买入持55天 +22.72% 大肉)。宽基先行机制(007339/011861)暂无过闸标的,暂不可用,C 状态宽基先行需换候选或接受停用。进攻主力仍依赖方案C。
宽基先行重设计结论(2026-08-03 实测 8 个宽基候选全不过闸)
| 候选宽基 | std CI_E≥ | std CI_W≥ | 结论 |
|---|---|---|---|
| 007339 沪深300 | +0.00% | 37% | ❌ |
| 011861 中证1000 | +0.12% | 29% | ❌ |
| 004348 中证500 | -0.01% | 21% | ❌ |
| 004742 深证100 | -0.01% | 23% | ❌ |
| 009052 中证红利 | -1.03% | 18% | ❌ |
| 012709 红利低波 | +1.05% | 42% | ❌ (差3点) |
| 019506 中证1000增强 | +1.42% | 23% | ❌ (样本13笔) |
| 008764 越南QDII / 019450 欧洲QDII | — | — | ❌ |
> 结论:A 股宽基右侧 std 在历史样本中普遍不过闸(A股牛短熊长,右侧追宽基易买顶)——宽基先行机制数据不支持启用,正式暂停。可交易进攻通道仅剩方案C(008888/021528)。海外扩展候选(越南/欧洲)同样不过闸,不纳池。这不是代码问题,是市场结构决定的。
💓 心跳任务清单(框架脉搏)
| 任务 | 间隔 | 触发词 | 产出 |
|---|---|---|---|
| mainline_switch 主线失效开关 | 1天 | 检查主线开关 | mainline_switch_status.json |
| walkforward 季度WF复核 | 90天 | 跑WF复核 | planC_walkforward_status.json |
| monthly_stats 月度统计 | 30天 | 跑月度统计 | .stats/YYYY-MM.md(v2.13.8 读 trade_log.json 真实战绩) |
| pool_scan 池子扫描 | 180天 | pool_scan.py --dynamic 双池扫描(静态池+全市场ETF联接C动态池), 三关筛选; [方案B] 过闸自动纳入池+置信度分级(高/中/低) |
|
| annual_review 年度重审 | 365天 | 年度重审 | 框架重审报告 |
| news_briefing 盘前简报 | 交易日 | 盘前新闻 | L3持仓+L1宏观快报 |
| blogger_tracker 博主追踪 | 30天 | 博主追踪 | 预测准确率回顾 |
| valuation_snapshot 估值快照 | 7天周末 | 估值快照 | PE分位+ERP缓存 |
| fee_audit 费率审计 | 30天 | 费率审计 | 费率一致性检查 |
| backtest_audit 交易审计 | 1天 | — | trade_log.py verify 自动 T+5/T+10 验证 |
| skill_version_check 版本自检 | 1天 | — | [v2.13.13] 商店新发布→提示升级(伪推送: SkillHub无服务端推送, 每次启用对比商店版本, 有新版提示 skillhub upgrade wealth-commander) |
| after_close 盘后复盘 | 1天(15:30后) | 盘后复盘 | review/YYYY-MM-DD.json |
| plain_review 人话复盘 | 1天(15:30后) | 人话复盘 | plain_review_YYYY-MM-DD.md |
| portfolio_risk 组合风险 | 1天(15:00后) | 组合风险 | portfolio_risk_YYYY-MM-DD.json |
| valuation_dj 蛋卷指数估值 | 1天(15:30后) | — | [v3.0.23] 蛋卷63指数PE/PB历史分位快照(补编外体检估值短板,🟢<20%低估/🔴>80%高估提示) |
| monthly_regime 月线周期层 | 30天(15:30后) | 月线周期 | [2026-10-22] ⓪.5层:创业板月线MACD牛熊定位(只标注不交易),落盘 data/processed/monthly_regime_399006_YYYY-MM.json |
每次诊断头部读 framework_heartbeat.json 做逾期自检,报告尾部输出「💓框架脉搏」仪表盘。
🔄 脉搏自动执行器(v2.13.5 · 全自动,不依赖人工触发)
> 背景:原框架脉搏"只检测不执行"——标逾期但不自动跑,全靠用户说一句才动(用户 2026-08-05 指出)。已补 framework_heartbeat.py 心跳自动执行器。
> v2.13.5 自测修复:①P0 daily 任务隔天跑(days>=interval,interval=1 应每天跑);②时间窗口(盘后任务 15:30 后 / 盘前简报 10:00 前,窗口外不补跑);③失败防抖(当日已尝试不重复重试,记 last_attempt);④注册 plain_review/portfolio_risk;⑤JSON 损坏备份重建;⑥--task 未知任务名提示。
python scripts/framework_heartbeat.py # 每次启用跑:待初始化+逾期任务自动补跑
python scripts/framework_heartbeat.py --init # 首次启用:强制跑所有待初始化任务
python scripts/framework_heartbeat.py --check # 只检查不执行(输出仪表盘)
python scripts/framework_heartbeat.py --force # 忽略间隔强制跑全部可执行任务
python scripts/framework_heartbeat.py --task X # 只跑指定任务
- 自动执行映射:mainline_switch→mainline_switch_check.py / walkforward→planC_walkforward_check.py / monthly_stats→monthly_stats.py / pool_scan→pool_scan.py / news_briefing→news_briefing.py / after_close→after_close.py / plain_review→plain_review.py(盘后15:30后) / portfolio_risk→portfolio_risk.py(盘后15:00后) / valuation_snapshot→内联 fetch_valuation(落盘 valuation_snapshot.json) / valuation_dj→valuation_snapshot_dj.py(蛋卷63指数PE/PB分位,落盘 valuation_snapshot_dj_YYYY-MM-DD.json)
- 时间窗口:盘后任务(after_close/plain_review/portfolio_risk)15:00/15:30 后才执行,防盘前用旧数据污染 last;news_briefing 盘前 10:00 前执行;
--force忽略窗口 - 条件过滤:trading_days_only 非交易日跳过;weekends_only 仅周末跑;event_driven 永不按间隔。
⚠️ v2.13.34 / v3.0.40 修正:task_state()中if task.get('event_driven'): return 'skip'优先于间隔判断,且执行在 mode 分发之前 ⇒ 被标 event_driven 的任务--force/ 显式--task也触不到。3.0.39 只补interval_days未删event_driven,等于没修;真实修复 = 模板里删掉event_driven并把backtest_audit设为interval_days: 1(与 SSOT 一致,已实测生效)。凡 EXEC 有注册的任务,模板中不得标 event_driven。 - 失败防抖:执行失败记 last_attempt,当日不再重试(次日自动补);pool_scan 超时 600s(全市场扫描)
- 需 Agent 的任务(无脚本,人工对话式执行):annual_review / blogger_tracker / fee_audit —— 仪表盘标「👤需Agent」
- 接入时机(v2.13.16 全自动):
live_diagnosis.py启动时自动调用framework_heartbeat.py --light(诊断第一件事)——新机器首次启用自动初始化全部轻任务、日常自动补逾期任务,无需手动;--light跳过重任务(pool_scan/walkforward/monitor_warmup 留完整 auto/手动,避免诊断阻塞)。完整初始化/重任务:python scripts/framework_heartbeat.py --init(首次强制全量)或默认 auto
⑧ 费率层
| 类型 | 申购 | 赎回<7天 | 7-30天 | >30天 |
|---|---|---|---|---|
| A类 | 0.12-0.15% | 1.5% | 0.5% | 0% |
| C类 | 0% | 1.5% | 0.5% | 0% |
| 纯债C | 0% | 1.5% | 0.1% | 0% |
| QDII | 0-0.16% | 1.5% | 0.5% | 0% |
- C类优先:建仓优先C类(0申购费);A类仅持有>1年且赎回费归零才考虑,止损时预留0.5%赎回费缓冲(如-8%止损→实际-8.5%触发)
- 同公司转换优先:同基金公司C类产品用基金转换(省赎回费+缩短到账)
- 7天锁定期:罚金1.5%,唯一豁免黑天鹅条款
- 14:50截止:场外基金15:00截单,全部操作须在14:50前完成
- 操作卡片必须含费率状态:每只持仓标注 锁定期/赎回费/年持有成本
QDII 操作 SOP
- 净值时差:美股QDII「今日涨跌」= 昨夜美股收盘,A股收盘后才披露;14:30 硬校验用盘中代理价并标
is_proxy=True,次日收盘复核 - 申购状态自动检测:
wc_common.fund_buyable(code)查天天基金 SGZT/BUY —— 暂停申购/限购的标的禁止建仓(2026-08-03 实测 050025 与 006075 均暂停申购);诊断时对 QDII 池标的输出申购状态 - 额度检查:QDII 常限购/暂停申购,建仓前必须查额度,暂停则不可买
- 汇率纪律:人民币单日贬值>0.5% 禁开 QDII 新仓(L1宏观联动)
- 到账:赎回到账 T+5-7 天,资金空窗不计债息;清仓 QDII 优先于清仓 A股(到账快先腾资金)
- 总仓硬上限:QDII 总仓≤20%
- 代码纠错:050025=博时标普500ETF联接A(非C);C类=006075。历史回测中 050025 按 C 类摩擦计费有误(A类应+0.15%申购费),已修正目标列表
当前有效策略
- 主策略: 纯右侧趋势(std) — 五层入场过滤
- 插件策略: 方案C (突破追涨+快止盈) — 🔴 2026-09-30 双检后三主线全部排除(半导体/通信/计算机),仅 021528(主动混合·编外升格)双检全过;但 021528 完整版方案C 不过闸 ⇒ 实际仅观察不建仓。唯一权威=
mainline_register.json - 当前状态(🔴 2026-09-30 双检实测,以
mainline_register.json为准):半导体(008888) 排除(开关=暂停 且 WF=❌临时关门,四窗口全否);通信(008087) 排除(开关=暂停);计算机(001630) 排除(开关=暂停 且 WF=❌);021528 财通成长优选混合C 唯一双检全过(开关=正常 + WF=✅仍过闸)。(原写「仅半导体(008888)有效」,系 2026-07-29 旧结论,已被实测推翻。) - 防御: 债基(006331) + 黄金5-10%
- QDII 基金池(已纳): 006075 博时标普500ETF联接C(std右侧过闸,走正常买卖信号,止损-12%,总仓≤20%;⚠️2026-08-03 实测暂停申购不可建仓;050025 是 A 类非 C)
- 编外持仓: 先过边缘闸→过闸纳池;不过闸才走估值体检卡(仅信息,不交易)— 只给估值温度计,不喊买卖
依赖
- Skill: yangjibao-funds(已内嵌专家包)· trend-sector-hunter-v2106(专家 v2.12.x,已内嵌执行层为内置技能)· westock-data(可选,需外部连接器 westock-mcp)
- 脚本:
wc_common.py(公共库: NAV拉取/回测/边缘闸/方案C/市场状态/审计A/估值水位/黑天鹅/解锁/板块资金流存档),live_diagnosis.py(每日诊断入口),framework_hardguard_check.py(硬校验),planC_walkforward_check.py(季度WF复核),monthly_stats.py(月度统计),after_close.py(盘后复盘),news_briefing.py(盘前简报),framework_heartbeat.py(脉搏自动执行器: 逾期/待初始化任务自动补跑,--init首次/默认每次启用,--light诊断内轻跑),framework_selftest.py(框架自检套件: 缓存新鲜/审计偏差/POOL映射一致性/SKILL引用/心跳完整性/信号链 6项断言, 每日心跳自动跑),framework_heartbeat.json(脉搏状态),intraday_confirm.py(14:30校验),mainline_switch_check.py/position_allocator.py(方案C工具链),trade_log.py(交易记录闭环: add/verify T+5/T+10/stats/export),blogger_sentiment.py(②博主层多空比: --record/--fetch),cash_pool.py(资金闲置仓: set/plan买点可买金额) - 数据源: 养基宝 API, 天天基金
pingzhongdata/{code}.js, 东方财富指数K线 (市场状态引擎), 东方财富板块行情 (push2兜底), 蛋卷指数估值 (PE分位), 东财涨停池, fundmobapi (申购状态)
🔌 连接器依赖与安装提示(2026-08-04 新增)
| 连接器 | 用途 | 缺失时处理 |
|---|---|---|
| mx-ds-mcp(东方财富妙想) | 板块资金流精确数据(半导体(申万) 主力净流入等,push2 拿不到)——14:30 巡航必须 | ⚠️ 提示"请连接 mx-ds-mcp 连接器",降级用 push2 兜底(TMT拥挤度可用、半导体精确流向缺失) |
| tdx-connector(通达信) | 个股/板块 F10 深度资料(资金流向/龙虎榜/北向持股),研报级辅助 | 可选,缺失不影响每日诊断 |
| westock-mcp(腾讯自选股) | 个股资金流向/板块排行/指数成分,辅助验证 | 可选,缺失不影响每日诊断 |
| yangjibao-funds skill | 持仓拉取(必需) | ⚠️ 提示"请安装 yangjibao-funds skill"(skillhub install yangjibao-funds) |
- 缺失检测规则:Agent 诊断/巡航时检查连接器状态(connector-status),mx-ds-mcp 未连接 → 输出「⚠️ 未连接 mx-ds-mcp,板块资金流降级为 push2 兜底」;yangjibao 缺失 → 提示安装且脚本 SystemExit
- 板块资金流存档:每日摘要持久化
data/processed/sector_flow_history.json(source: push2/mcp,同日去重 MCP 优先)——积累后用于验证"资金面纪律"(如半导体流出 N 亿后 008888 后续表现)
文件输出
| 输出 | 路径 |
|---|---|
| 诊断明细 | data/processed/YYYY-MM/diagnose_live_YYYY-MM-DD.json |
| 操作卡片 | 操作卡片-YYYY-MM-DD-1430.html |
| 诊断报告 | 持仓诊断报告-实时-YYYY-MM-DD.html(静态完整版) |
| 交互报告 | 持仓交互报告-YYYY-MM-DD.html(ECharts交互版:买点信息+市值加权净值曲线+决策雷达+浮盈分布,live_report 自动同出) |
| 编外NAV缓存 | data/processed/bianwai_cache.json |
| 月度统计 | .stats/YYYY-MM.md |
核心 JSON 数据结构(v2.13.20 评测优化#3)
| 文件 | 关键字段 | 说明 |
|---|---|---|
diagnose_live_*.json |
market_state{state,adx} / macro_light{light,zt_count} / entry_signals[{code,mode,ok,Elo,Wlo,w_tier}] / hardguard{pass,violations,warns,alerts[{level,msg,deadline}]} / action_today{ops,sell_ops,notes} |
每日诊断全量 |
portfolio_risk_*.json |
exposure[{theme,count,money,pct,weighted_p}] / scored[{code,score,cur_p,hold_days}] / signal_calendar[{code,close,hh30,gap_hh_pct,reachable}] / health_score{total,grade,dims} |
组合风险+健康分 |
pool_gate_cache.json |
items[code]{std{n,W,Wlo,E,Elo,pass,small}, planC{...}} |
决策7 分层数据源 |
pool_config.json |
version / POOL{} / MONITOR_POOL{} / removed_from_code[] |
基金池外置配置 |
trade_log.json |
trades[{date,code,op,nav,amount,strategy,t5{pnl_pct,grade},t10}] |
交易记录+T+5/T+10 |
cash_cycle.json |
[{date,code,name,amount,reason,used}] |
止盈资金循环队列 |
estimate_calibration_history.json |
[{date,code,vgszzl,actual_pct}] |
盘中估值偏差校准 |
bianwai_cache.json |
code → {nav_series, acw_series, name, edge_gate, planC_gate} |
NAV 缓存(30天刷新) |
framework_heartbeat.json |
tasks{name → {last, interval_days}} |
心跳任务状态 |
注意事项
- 所有收益/胜率标注
[真实NAV·含摩擦]或[指数代理·未含摩擦],禁止混用 - 盘中实时估值仅供参考,最终净值以晚间披露为准
⚠️ 数据时效强制(一票否决级纪律)
- 交易日(非节假日)必须拉取当日实时数据做诊断与决策,禁止使用历史快照/N天前的净值判断买卖。
- 养基宝 token 有效期约 7 天,过期会 401;检测到 token 失效须立即重新发起微信扫码登录,不得静默退回到快照兜底。
- token 失效执行化(v2.15.0 落地,脚本强制):
live_diagnosis.py① 有 token 失效 → 红字横幅「⚠️ 请重新扫码: python yjb_login.py --user X」;② 全部账户失效且未加--snapshot→ exit(2) 中止,不落盘空报告;③ 部分失效 → 继续跑但realtime=False,报告头部红字「⚠️部分账户数据失效(非完全实时)」;④--snapshot仅表示"知情同意继续(数据不完整)",框架无自动快照回退功能(防静默回退)。 - 仅两种情形允许用快照/历史数据:① 法定节假日或非交易日(无当日数据可拉);② 实时拉取连续失败且用户明确同意临时用快照。除此之外一律当日实时。
- OTC 净值以当晚 19:00–22:00 披露为准;当日操作(14:30/14:50 窗口)必须用当日盘中估值+当日市值,净值晚披露不阻碍当日决策,次日收盘复盘用真实披露净值校正。
-
数据新鲜度自检:诊断报告头部必须标注「数据日期 + 是否当日实时」,让用户一眼看到用的是哪天的数据。
-
编外持仓(不在基金池/未过闸)只做估值体检,不产生任何买卖建议
- 审计A(数据交叉核对):每次诊断校验 养基宝
dwjzvs 天天基金pingzhongdata最新净值,偏差>0.5% 标注警告(防单源数据错误) - 不构成投资建议。所有操作由用户自行决策和承担。
🚨 避坑 FAQ(常见问题集中解答 · 2026-08-04 评测优化)
> 评测指出"反模式散落各层、无集中 FAQ"——以下为高频问题集中解答。
Q1 为什么有的基金不能买?
- 三类原因:① 未过边缘闸(bootstrap CI 下界 E≥+0.2% 且 W≥45%);② 暂停申购/限购(
fund_buyable自动检测,006075 当前暂停);③ 不在框架池(编外只给估值体检,不给买卖建议)。 - 代码错配教训:凭记忆填代码必踩坑(004743=上证中盘非创业板、050025=标普500A非C)——池内代码一律实名核对。
Q2 方案C 和 std 哪个好?
- std 右侧 = 标准趋势(日线>MA20 + MA5>MA10 + 周线>30周MA),适合慢牛/宽基。v2.13.11 H组合升级:
- 入场双确认:上证ADX>25 + 当日涨>0.5%(放量代理,基金NAV无成交量;0.8%过严拦截109信号已放宽)+ 20日涨幅>沪深300(相对强弱)
- 出场改趋势跟随:破MA20减半50%(让利润奔跑),破50日线/减半后10日未回MA20/30日无盈利才清仓(原"破MA20清仓"盈亏比1:1不到、17笔15亏)
- 状态闸:B 状态 std 放行试仓(全历史 T+10 +1.39%/胜率64%——底部右侧初升才是最优段,原"B禁std"方向反了);D 状态过热过滤(上证ADX>40 禁买,ADX>40 仅+0.26%≈抛硬币,ADX30-40 有+6.25%/71%)+ std 需 RS>2%(弱市D高位std是亏损源,牛市RS>2%仍可做——全禁会踏空2025牛市,RS>2%折中最优)
- 回测:2026弱市 +4.84%(不含债基+2.91%)vs 基线+0.25%;2025-26全周期 +34.35%/胜率62%/超额+13.02% vs 基线+27.35%/51%
- 方案C = 突破追涨(30日高点+快止盈),只对当前市场主线开放(半导体/通信/计算机),且有有效期——参数是历史拟合,季度 WF 复核,敏感性<40% 过闸率即"尖峰"降级观察。
- 实测结论:A 股宽基 std 普遍不过闸,进攻主力是方案C(当前 008888/021528 观察中)。
- ⚠️ 位置闸教训(2026-08-05 延长验证):曾测试"C/D贴顶禁买+B底部放行"位置闸——2026弱市有效(+1.54%),但 2025牛市严重踏空(全周期仅+9.42% vs 基线+27.35%,-17%),已废弃不启用;位置过滤仅保留 D 状态距30日高点>5% 追高过滤。
Q3 为什么市场状态变了但我不该动?
- 市场 B/E 状态 → 进攻仓上限 10%/0%,只减不加。这是框架纪律不是行情判断——"不动"本身是正确动作(今日 B 状态+红灯,无买点)。
Q4 估值水位系数为什么是 1.0 而不是 0.5?
- v2.12.0 修订:估值层只在极端分位干预(PE 分位 <5% 或 >95%),5-95% 常态区间一律 ×1.0——防止"高 PE 长期压制趋势仓"(PE 82% 不再误伤)。
Q5 回测数字为什么和实盘对不上?
- 回测按收盘净值成交([真实NAV·含摩擦·累计净值复权]),实盘 14:30 用盘中估值——存在乐观偏差,
estimate_calibration_history.json积累偏差统计,≥20 条后自动量化。 - 黑天鹅用盘中估值预警 + 收盘 ACW 复核双源,收盘确认才算触发。
Q6 编外持仓什么时候给建议?
- 永远不给买卖建议(编外=未过闸),只给估值水位(低/中/高)。过闸才升级为在池标的。
Q7 为什么恒生科技永不纳入?
- 恒生科技全系(012979 等)std 与方案C 双闸均不过(同源指数/净值同源),任何代码都过不了边缘闸——数据说的,不是偏好。
Q8 止损触发了,我具体该干什么?(v2.13.17 实操补充)
- ① 先看是否在 7 天锁定期内(是 → 等第 8 天,除非单日跌≥7% 触发黑天鹅豁免);② 确认触发的是哪条线(硬止损 -10% / 技术止损 MA20+MA5下穿MA10 / 时间止损 5日未盈利减50%、10日未新高清仓);③ 执行赎回(场外基金 15:00 前操作,14:50 前完成);④ 赎回到账后记
trade_log(Agent 帮你记)→ 自动入止盈/止损资金循环队列等下一个信号。 - 例外:方案C 持仓触发的是「峰值回撤8%止盈」不是止损——那是止盈保护,正常落袋。
Q9 编外基金亏 20% 了,割不割?
- 框架不给买卖建议(编外只体检),但有三档硬离场线提醒:≤-15% 关注、≤-20% 触硬离场线 → 决策评审(问自己:逻辑还在吗?)→ 逻辑在 → 设条件止损扛;逻辑不在(业绩暴雷/行业逻辑破坏)→ 离场。≤-25% → 决策评审(并列两条路径,客户拍板),不写「强制处理」。
- 判断要点:区分「资金面错杀」与「基本面反转」——错杀可扛(等反弹带条件止损),反转必须走(180031 银华中小盘 -23% 已触评审线)。
Q10 7 天锁定期怎么算?赎回费多少?
- 买入日起 7 个自然日内赎回罚 1.5%,7-30 天 0.5%,30 天以上 0%(C类无申购费)。诊断报告有「解锁倒计时」表。
- 豁免:黑天鹅(单日跌≥7% / 组合回撤≥5% / 黑灯+回撤超止损线)→ 认 1.5% 罚金强制赎回,锁定期不拦。
Q11 买入后第二天就大跌,怎么办?
- 先判断性质:单日跌 ≥7% → 黑天鹅豁免通道(强制赎回认罚);否则 → 看是否触止损线(-8%/-10% 按波动档)→ 没触线就不动,5 日未盈利再减 50%、10 日未新高清仓(时间止损)。
- 最忌「跌了就摊平」——框架禁止浮亏摊平,只允许盈利 >5% 后加速加仓。
Q12 方案C 止盈后钱去哪?
- 自动进止盈资金循环队列(cash_cycle.json):下次王牌/主力档信号触发时优先建仓;闲置超 20 交易日提示转债基吃息。赎回资金 T+1 到账,A股 QDII T+5-7。
Q13 一天只想花 10 秒看盘,看哪里?
- 看诊断报告末尾「今日行动」三行:1.操作(有 🟢买入/🔴止盈止损 才动手)→ 2.盯(临近信号)→ 3.注意(风险提示)。三行全空 = 今天不用动。
- 14:30 自动巡航已装的话,每天自动给你这 10 秒结论。
Q14 为什么我买的基金不在操作清单里?
- 只有框架池内标的(决策7 王牌/主力档)才进操作清单。你持有但不在池内的(编外)只显示估值体检;在池但「观察档」(Wlo<50%)禁买不建仓——不是漏了,是纪律(全池乱买 2026 胜率 39%≈抛硬币,纪律版 66.7%)。
Q15 token 过期/数据失效了会怎样?(2026-08-21 汇总)
- token 失效(401):诊断打出 22 个 ⚠️ 醒目横幅 + 具体重扫命令;拒绝静默退回旧数据(全部失效 exit(2) 中止)——宁可不出结果,不拿过期数据骗你。
- 网络抖动:3 次指数退避重试 → 仍失败降级到最近诊断快照兜底,并标注「非实时」。
- 数据时效强制纪律:净值日期对比(nav_date),发现滞后自动标风险;估值快照/黄金评分失败标 N/A 不阻塞主流程。
Q16 回测/边缘闸结论为什么不能直接抄?(2026-08-21 汇总)
- bootstrap 必须固定 seed=42:无种子时 CI 下界抖动会翻转边界标的结论(实测 018647 planC Elo +0.06% vs +0.29%)——复现结果前先确认 seed 固定。
- 方案C 参数有有效期:季度 WF 复核 + 参数敏感性网格(过闸率 <40% = 尖峰过拟合,降级观察)。008888(4%)/008087(7%)/001630(0%) 均为尖峰,021528(59%) 中等可保留。
- 回测按收盘净值、实盘按盘中估值:存在乐观偏差,
estimate_calibration_history.json累积 ≥20 条后自动量化修正。
Q17 三季报业绩很好,为什么股价反而大跌?(2026-10-19 长鑫科技实证)
- 市场看的是环比,不是同比。长鑫科技前三季归母净利 1,310~1,325 亿、同比扭亏增 8 倍,但 Q3 单季环比只 +1%~3.9%(Q1/Q2 是 +246%/+113%)→ 当日 −7.77%。
- 全球资金评判 AI 硬件已从「同比增长」切到「环比动能」:环比失速即按「不及预期」定价,同比再爆炸也没用。
- 另两层叠加:①新增产能是控股非全资项目,少数股东权益分流利润 ②周期股低 PE 陷阱——海外同业 5~12 倍,景气顶点 10 倍才是历史中枢,20 倍并不便宜。
- ➜ 执行细则见上文「📊 财报「环比考核」铁律」。给买入建议前必须做环比测算,只报同比的推荐不合格。
💬 对话示例(完整交互演示 · 2026-08-04 评测优化)
> 评测指出"缺完整操作示例"——以下为真实使用流程演示。
示例1:日常「持仓诊断」
用户: 持仓诊断
Agent: ① 拉取双账户持仓(自动发现 token)→ ② 市场状态引擎(B, 上限10%)
→ ③ 宏观灯号(红灯, 上限30%)→ ④ 估值水位(1.0)
→ ⑤ 板块资金流(TMT 52.5% 超40% 只减不加)→ ⑥ 在池入场信号(全未满足)
→ ⑦ 黑天鹅双源(020640 -8.6% 确认)→ ⑧ 决策分 52 减仓
→ 📋 今日行动: 1.操作:无信号 2.盯:021528 距高点+65.8% 3.注意:黄金1.6%<5%
输出: 持仓诊断报告-YYYY-MM-DD.html
示例2:建仓前 14:30 硬校验(方案C)
用户: 14:30 检查
Agent: ① 跑 intraday_confirm.py → ② 读 planC.pass
→ planC.pass=True 才允许下单; False → 输出"未满足突破, 不建仓"
→ ③ 若触发 → 仓位分配器按置信度分配(中/低置信 ×0.5)
→ 14:50 前完成操作(15:00 截单)
示例3:盘后复盘(预测 vs 实际验证)
用户: 复盘
Agent: ① 市场状态重判(盘中B→收盘B 一致?)→ ② 行动预测校验("无信号"→收盘确认)
→ ③ 信号日历(距高点方向一致?)→ ④ 黑天鹅收盘确认
→ 存档 review/YYYY-MM-DD.json, 历史命中率累积(当前 6/6=100%)
🗂️ 脚本导航表(v2.13.17 · 评估优化#6:33 脚本功能分组定位)
> 想找"某功能的代码在哪"?按组查,不用翻文件列表。
| 功能组 | 脚本 | 说明 |
|---|---|---|
| 核心入口 | live_diagnosis.py |
每日诊断入口(拉持仓→市场状态→信号→操作清单) |
live_report.py |
HTML 报告生成(交互版+实时版) | |
| 公共库 | wc_common.py |
全部公共函数(NAV拉取/边缘闸/回测/决策/心跳/池配置)· 1351行,内部有分区注释 |
| 信号/回测 | backtest_pool_2026.py |
全池任意年份回测(--year 2025 / --start/--end) |
backtest_2026.py |
2026 组合级回测(状态闸+债基吃息) | |
audit_pool_gate.py |
池内双方法边缘闸复核(决策7 数据源) | |
planC_sensitivity.py |
方案C 参数敏感性(高原/尖峰判定) | |
planC_walkforward_check.py |
方案C 季度 walk-forward 复核 | |
_scan_std_k.py |
std K组合回测内核(被多个脚本依赖,勿删) | |
backtest_ledger.py / backtest_report.py |
回测账本/报告 | |
| 风险/校验 | framework_hardguard_check.py |
硬校验6项(黑灯/止损/仓位/单只/QDII/7天) |
framework_selftest.py |
自检套件6断言(缓存/审计/映射/引用/心跳/信号链) | |
portfolio_risk.py |
组合风险(假分散/敞口/减仓优先级/信号日历) | |
intraday_confirm.py |
14:30 盘中强度硬评(OTC 时滞闭环) | |
after_close.py |
盘后复盘(预测vs实际+历史命中率) | |
| 交易闭环 | trade_log.py |
交易记录+T+5/T+10 自动验证 |
position_allocator.py |
仓位分配器(决策7 分层禁买) | |
cash_pool.py |
现金池管理(可用资金/可买金额) | |
pool_config.py |
基金池动态管理(add/remove/status,池外置化) | |
scan_pool_cleanup.py |
全池清理(去A类/去低波/指数去重→313只) | |
| 心跳任务 | framework_heartbeat.py |
心跳执行器(--light/--init/--force/--task) |
mainline_switch_check.py |
主线失效开关 | |
monthly_stats.py |
月度统计 | |
pool_scan.py |
池子扫描(候选纳池) | |
news_briefing.py |
盘前新闻简报 | |
blogger_sentiment.py |
博主多空比 | |
monitor_pool_warmup.py |
监测池 NAV 预热 | |
plain_review.py |
人话复盘 | |
| 辅助 | _test_*.py |
内部测试脚本(不参与诊断) |
> ⚠️ 依赖提醒:_scan_std_k.py 被 audit_pool_gate.py/backtest_pool_2026.py 依赖,删除会崩;wc_common.py 是全框架基石。
⚡ 快速上手指南(5分钟版 · 2026-08-04 评测优化)
> 评测指出"缺快速上手摘要"——三步启动 + 每日节奏。
第一步:安装(约3分钟)
skillhub install wealth-commander(或解压专家包 zip 到 my-experts/plugins)python yjb_login.py --user 你的昵称→ 微信扫码登录养基宝(token 存本机,实测 37 天仍有效)- 说"装定时任务" → Agent 创建 14:30 自动巡航
第二步:验证(约1分钟)
说"持仓诊断" → 应看到市场状态/持仓/决策分完整输出 + HTML 报告。
第三步:每日节奏(无需操作)
8:30 盘前简报(L1 宏观快讯)— 心跳自动
14:30 诊断巡航 + 今日行动(1.操作/2.盯/3.注意)— 自动化
15:10 盘后复盘(预测vs实际, 命中率累积)— 心跳自动
想随时看 → 说"持仓诊断"/"止损检查"/"复盘" 即可。
核心速查(记住这 5 个数)
| 参数 | 值 |
|---|---|
| 进攻仓上限 | D≤80% / C≤70% / B≤10% / E=0% |
| 单只上限 | 高波动≤15% / 中波动≤10% / QDII总≤20% |
| 止损线 | 高波动-10% / AI算力硬件-12% / 中波动-8% / QDII-12% |
| 边缘闸 | CI下界 E≥+0.2%/笔 且 W≥45% |
| 操作窗口 | 14:50 前完成(15:00 截单) |
> 更多细节见上方各章节;遇到问题查「🚨 避坑 FAQ」。