Skip to content

v0.5.14 — 静默失败清剿 + 分角色模型 + 决策绩效统计

Choose a tag to compare

@simonlin1212 simonlin1212 released this 09 Aug 03:32
· 2 commits to main since this release

从 v0.4.0 到 v0.5.14 的一次集中修复与增强,全部经过九轮独立代码审计(33 条发现、32 条实测为真)。

修复的静默失败(用户看不出来、但结论已被污染的那类)

  • #90 mootdx 反复降级、永不恢复 —— 选服务器只做 TCP 探测是假阳性:实测大量服务器「TCP 握手成功、通达信协议立刻被 RST」,程序挑中后钉进单例,之后每次取数都失败降级且永不重选。现改为必须真取到一根 K 线才采用,失败即弃用重选;候选表从 10 台扩到 38 台、TCP 预筛并发化,全表不可用时报错耗时从 170s 降到 27s;探测不再覆写用户的 mootdx 配置。
  • #91 报告输出到一半结束 —— 撞的是输出上限而非上下文。新增 max_tokens 配置项,截断时明确告警(覆盖 Anthropic / OpenAI Chat / OpenAI Responses / Gemini 四种形状——openai 是默认 provider 且走 Responses API,漏掉它等于告警永不触发)。
  • #89 接 Kimi 报 401 —— README 教用户设 ANTHROPIC_AUTH_TOKEN,而本项目从不读该变量。已改正文档,并在缺端点时启动即报错。
  • 未来函数 —— AST 扫描 15 个数据接口,发现 3 个收了 curr_date 却完全没用:历史日期分析会拿到今天的数据,而报告里完全看不出来。已做时点截断或明确告警;日期判定改用 A 股市场时区(主机在海外时会误判)。
  • 非 A 股代码防护 —— 港股 00700 / 美股 AAPL 曾被当 A 股查询,返回「近30日未上龙虎榜」这类看起来完全正常的空报告。现全部 vendor 方法统一拦截。
  • 计费护栏失效 —— ClaudeSDKError 在可选依赖缺失时被占位成 Exception,让「订阅凭据失效不得降级到计费 provider」这条护栏彻底失效。
  • 裸跑 CLI 被打断 —— 加子命令让 Typer 切换成命令组模式,tradingagents 直接报 Missing command,而文档全是裸跑写法。

新增

  • 分角色模型 role_llms#39,可选) —— 给单个角色指定另一家模型,典型用法是让多空辩手用不同厂商:同一个模型分饰两角容易自我附和。默认空表 = 行为完全不变。
  • 决策绩效统计 tradingagents performance#61 —— 读已结算的决策算方向正确率 / alpha / 评级区分度,零 LLM 调用。含「样本 <20 条自动标注为噪音」「明确写明这不是回测」等防误读设计。
  • 情绪分析师改为数据驱动 —— 从只有 get_news 补上资金流 / 量价 / 强势股榜,并强制报出「资金面与消息面是否背离」。

测试

干净 clone 跑 pytest11 red 变为 369 passed / 13 skipped / 0 failed

完整清单见 CHANGELOG.md