Commit Graph

154 Commits

Author SHA1 Message Date
zlt 79b3616162 快照新鲜度守卫:旧快照不许当今天的计划下发
实测两条路比对:代码序列一模一样,但候选卡名次、判决、依据有实质差异。根子在节奏——
出计划是前一晚 23:10 跑的,数据基座凌晨才更新证据线,快照天生比实时装配旧半天。

两条判据:代码版本要与当前一致、生成时刻要晚于今天早六点。都不满足就退回实时装配,
也就是今天的行为。守卫要松开靠的是把出计划挪到数据基座之后,不是把界调低。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-10 09:30:44 +08:00
zlt 8770fbb683 缓存自检的替身挂到「算一份计划」的统一入口,不再挂在现算那条路上
接口 2026-09-10 改成优先读快照后,挂在 plan.collect 上的替身再也不会被调到,
测试会假通过。缓存与单飞管的是「同一个键算几次」,与底下走哪条路无关。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-10 09:25:50 +08:00
zlt 15a02d520b 测试断言按原实现的边界改正:要零条时也先给一条 2026-09-10 09:24:22 +08:00
zlt abd7fec110 计划接口改读当日全量快照,不再每次现场装配(台账 057)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-10 09:23:41 +08:00
zlt d631a31ebb 台账 056:计划接口超时复发的根因与修法,并写明这仍是补丁
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-10 09:15:58 +08:00
zlt 47369d3e58 选股计划缓存:存活时间盖住整个交易日,同键只算一次(09-10 页面超时修复)
09-10 开盘前页面报「上游的选股计划读不到 · timeout of 60000ms exceeded」。根因两半:

一、缓存只活 10 分钟。PMS 在 08:40 预热了一次(那次花 39 秒),08:50 就过期;用户
    09:02 打开页面正好撞上冷启动。改成 12 小时——缓存键里带的是真实数据日,上游换日
    后旧那份立刻失效,本来就不靠时间保新鲜;12 小时是为了让 08:40 那次预热管到收盘。

二、装配在锁外面,几路并发各跑一遍。页面一次加载拉多路,全部判未命中、各自跑一趟
    三十多秒的装配、还互相抢同一批库连接,实际耗时远超单跑一次——这才是破 60 秒的
    那一半。改成同键单飞:第一个去算,后到的等它算完直接吃缓存;不同参数组合互不阻塞。

新增 test_plan_cache.py 钉住四件事:换日立刻失效、同键只算一次、不同参数不互相阻塞、
存活时间盖得住交易日。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-10 09:09:40 +08:00
zlt f4f9b4ac80 台账 054:实时计划接口加当日缓存,修 PMS 页面读不到上游计划
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-09 13:47:17 +08:00
zlt 12a2ab159d 实时计划接口加当日缓存:装配要三四十秒,PMS 页面一次加载拉几路就超时;键带真实数据日,默认十分钟,nocache=1 强制重算,重新生成计划时清空
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-09 13:43:22 +08:00
zlt 85b025a9c5 台账 053:接入方案全四段上线;交接与方案副本更新
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 12:33:16 +08:00
zlt 3a94f5b4b7 公司深度取数:空列 NaN 收成 None,运行日晚于数据日算零天
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 12:30:02 +08:00
zlt a31e434240 旧测试改为五路(二)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 12:11:04 +08:00
zlt 52581f1437 旧测试改为五路
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 12:09:07 +08:00
zlt 296fc96909 公司质地接入:公司深度取数、逻辑状态第五路、判决收敛只降不升、卡与计划两键、候选单表列、复盘分组、逐票接口回两键、单测(台账 053)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 12:05:03 +08:00
zlt 7965b2084b 台账 052 补目标集合落法;方案副本附录
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 10:32:40 +08:00
zlt cbb526afdc 评析目标名单:主榜前一百加观察档前二十
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 10:31:49 +08:00
zlt 89eb5135e7 评析目标名单取展示给人的候选单,不取全部主榜
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 10:30:53 +08:00
zlt 0c4129738d 个股深度评析目标名单:出计划时写 t_akg_review_targets,手工补写子命令,单测
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 10:29:56 +08:00
zlt ad8d7c84a2 台账 052:个股深度评析第一批上线;交接与方案副本更新
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 10:27:42 +08:00
zlt fa10183200 台账 051 试跑读数;交接更新到行业催化上线
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 15:38:40 +08:00
zlt 81a50734d2 行业催化:按票所在环节读基座 segment_catalysts,卡上整句与复盘分组,只展示不进判决(台账 051)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 15:21:10 +08:00
zlt 4e5cd525a1 台账 050:财联社电报定性与用法;交接更新到相关快讯上线
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 14:38:24 +08:00
zlt 69b25b629a 相关快讯:财联社电报点名条目进候选卡与实时计划,只当上下文不进判决(台账 050)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 14:07:05 +08:00
zlt b69b57ff00 台账 049 与交接:三处启用已做,周五任务待平台建
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 13:51:18 +08:00
zlt 29fef46609 台账 049:三件代码活落地;交接 09-08 版本表与主线进度更新
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 13:39:43 +08:00
zlt 338558e03a 复盘周报固定动作入口:run.py plan-review 滚动窗口、调度步骤 plan-review、单测
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 13:24:20 +08:00
zlt 216aede701 台账 048:整链核对与开发完成判定;交接_2026-09-08 当前进度总汇 2026-09-08 12:58:17 +08:00
zlt 1d76b902d6 台账 047 补记启用与两只票读数;交接与方案同步 2026-09-08 12:43:36 +08:00
zlt 20af8bf195 台账 047:量价研判链 3.3 与 3.5 编码完成,待启用 2026-09-08 12:31:09 +08:00
zlt 2c0ad41963 方案进度:量价研判链 3.4 上线读数 2026-09-08 11:45:56 +08:00
zlt 1f7d0d8f22 台账 046:量价研判链 3.4 上线;方案进度 2026-09-08 11:43:50 +08:00
zlt 1fc874b313 量价研判链 3.4:催化事件、事件日字段与定价状态、周报分组(只展示不进判决)
sources:analyst_reports / analyst_events 从券商研报明细表算四类正向事件(深度覆盖前 365 天无覆盖且买入类、
同机构同预测期 180 天内上调五成、标题含超预期、同日合并为复合),窗口 60 天;price_history 分两段读前复权
行情(无事件 35 天、有事件 100 天);event_day_fields 算事件前 5/20 日涨幅、跳空、日内、收盘位置、量比、涨停。
card:pricing_state 按四情形归类(价格发现、趋势延续、高位兑现、震荡消化),阈值一次定死;两类整句与短写法。
plan:候选卡带 events / pricing_state 与整句,候选单表格加两列并附口径说明。
plan_review:分组读数加"定价状态"与"催化事件"两类,另出定价状态多空差一段。
测试:新建 test_events_pricing.py;09-04 实机:档位表 1,210 只里 102 只有事件,定价状态分布
震荡消化 1,146、高位兑现 33、价格发现 16、趋势延续 15;计划装配 30 秒。

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 11:40:51 +08:00
zlt 7cf47d050a 台账 045:批准量价研判链吸收方案 2026-09-08 11:26:13 +08:00
zlt dbe5c92231 量价研判链吸收方案(2026-09-08,已批准) 2026-09-08 11:24:42 +08:00
zlt 1918cf7e82 台账 044 补记接口第三次重启与整链实测;交接同步 2026-09-07 16:42:42 +08:00
zlt 7dedda0567 台账 044:两条拍板;方案四处自动止损定性改写;交接同步 2026-09-07 16:38:21 +08:00
zlt ab09154594 接口 /logic_state 随状态回安全边际三情景(持仓页参考目标价用;算失败不拖垮状态查询) 2026-09-07 16:35:29 +08:00
zlt f913b84446 台账 043:一致性检查表十三行核完;交接 5.2 改为结论表;方案第五件进度 2026-09-07 16:15:22 +08:00
zlt a6bbd6d17d 台账 042 补记两处尾巴已收;交接同步 2026-09-07 15:57:57 +08:00
zlt 8e23395858 台账 042:第四件上线;方案与交接同步 2026-09-07 15:50:18 +08:00
zlt e00b38e36b 第四件:安全边际三情景,只展示不进判决
sources:券商研报原始行取一次(broker_reports,带市盈率列),券商行动改用共用分箱
(行为不变,单测钉住);新增 scenarios(悲观=最低每股收益×最低市盈率、中性=两项中位数、
乐观=两项最高,隐含市盈率、赔率、机构分歧标注)、valuation_scenarios(优先年度预测期、
同机构只留最近)、close_prices(与预期空间同源的前复权收盘价,左闭右开区间)。
card:valuation_view 整句与 valuation_short 短写法,四种不适用与两种赔率不成立各一句人话。
plan:候选卡带 valuation 原值与整句,候选单表格加一列并附口径说明。
测试:新建 test_valuation.py,恩捷手算对表(悲观 42.64、中性 56.75、乐观 84.96、隐含 21.4、赔率 0.87)。

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-07 15:48:27 +08:00
zlt 54607015f9 台账 041 补记接口容器重启与整链接通实测 2026-09-07 14:48:13 +08:00
zlt a7c7a62c73 台账 040、041:第三件桥侧与 PMS 侧上线;方案与交接同步进度 2026-09-07 14:44:49 +08:00
zlt faede9ab68 第三件桥侧前置:逐票日频逻辑状态表(抗抖动)与按代码查询接口
新模块 logic_state_daily.py:每个数据日为档位表里的每只票记一行原始态与落定态,
落定走 logic_state.settle(进入存疑即刻成立、退出要连续三天、其余迁移要连续两天),
只在 plan.generate 里写、/plan 实时重算只读;同日重跑幂等。
plan.py:四路取数抽成 _logic_inputs(计划装配与接口现算共用一处);卡上的 state 改为
落定态,另发 raw_state、settle_note、prev_state;新增 logic_states_for 给接口现算。
api.py:GET /logic_state?codes=…,优先回当日表行(source=daily),不在表里的按此刻
现算并按历史落定(source=computed)。config 加表名与三个天数。
单测:新建 test_logic_state_daily.py(落定口径、读不到不断产、幂等落库、往返形状),
test_plan_logic_state.py 加落定态发出两例;十个测试文件在 155 容器隔离副本全绿。

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-07 14:21:42 +08:00
zlt b2ebf6d368 台账 039:第二件上线
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-07 12:05:18 +08:00
zlt 857e642c19 第二件选股侧:启动线关着时理由行不再写当日涨幅
09-04 关闭启动线后理由行写成"当日涨幅 x%(启动线已关闭,不作门槛)"。理由行在 PMS 送
研判的白名单里,择时决策系统的模型能直接读到这句选股层的政策旁白——它回答"启动线关闭、
价格处高位滞涨区"就是被牵着走的结果,等于选股层在替择时层判时点。

现在启动线关着时理由行不提当日涨幅,涨幅只留在候选卡的信息子字典里给人看,不当理由、
也不送研判。守卫用例改为钉住"理由行里没有启动线与当日字样"。

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-07 11:59:42 +08:00
zlt a568f001cb 台账 038:第零件丙组上线,第零件收官
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-07 11:44:22 +08:00
zlt 33d8292c0a 第零件丙组:四态的三处输入缺陷
独立审查(09-07)第 8、9、10 条,不修的话第三件一接入就是分流错。

一,甲路只喂了展示用的三条论断。跨期翻转与同期分歧都在三条上算,"之前的论断"最多
两条,翻转两头都会判错:历史八空两好加最新一空,全量判无法判断、三条判逻辑存疑;
历史五好近三空则反过来。现在全量取一次(上限由新配置项 LOGIC_CLAIMS_FULL 定,
默认 200,与覆盖率读数脚本同口径),展示从里面切前三条。

二,乙路的硬触发只维持一个计划日。迁移只在指纹变化那天记 migrated=1,次日归零,
而采信倾向仍偏空并未回稳,存疑却自动解除。加一份每簇近几个计划日的历史(一次查询
取全部簇,不逐簇查),规则是近 N 日内出现过偏多到偏空的迁移且此后一直偏空,硬触发
就仍成立;倾向一离开偏空立刻作废。N 取 5(新配置项 JUDGEMENT_HOLD_DAYS)。

三,落在法定假日的快照会吞掉硬触发。快照按工作日投递、plan_date 取当天,假日那行
夹在两个数据日之间,节后计划读到的是与假日行比对得到的 migrated=0。加交易日守卫:
今天不是交易日就不落行。日历读不到时不拦,不让守卫本身成为断产点。

测试:四态模块加五例,快照模块加八例,计划装配加三例。

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-07 11:42:40 +08:00
zlt d0dc6cdcf2 台账 037:第零件乙组上线
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-07 11:31:08 +08:00
zlt 46aaa94060 台账 036:第零件甲组上线
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-07 11:24:06 +08:00
zlt e68103823f 下一阶段工作方案落档;台账 035 记批准、拍板与审查结论
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-07 11:06:13 +08:00