以周报形式记录本周在 AI 工具及数据平台建设中的实践、踩坑与思考。
一、行业数据后端采集平台
✅ 本周完成
本周 V6 阶段收口,新增验收 9 家,新增数据约 1,000 条,全部测试通过。
1. PKUFI(北大方正人寿)
html_same_page_api 模式,Nuxt.js 三端点 API(listDivi/listYear/byCodeAndYear),interestRate 字段提取。首次插入 140 条,覆盖 2022-2025 年,37 产品。✅
2. ZHUJIANG(珠江人寿)
pdf_directory 模式,技术难点是 PDF URL 中文编码(urllib.parse.quote)和 JSONP 响应解析。首次插入 43 条,覆盖 2022-2025 年,19 产品。✅
3. ZHONGHUA(中华人寿)
pdf_directory 模式,POST /api/news/10/1 获取 PDF 列表,/api/attachFile/{id} 下载。亮点是 5 年合表 PDF 的年份头检测(20\d{2} 正则)。首次插入 28 条,覆盖 2021-2025 年,11 产品。✅
4. HAIBAO(海保人寿)
html_same_page_api 模式,静态 JSON 文件 /config/bonusNotice.txt,policy_eff_date_str 从起止日期拼接。首次插入 18 条,覆盖 2022-2024 年,7 产品。✅
5. HUAHUI(华汇人寿)
pdf_directory 模式,技术难点是双格式 PDF(2025 零红利公告 vs 2023-2024 表格),PDF URL 相对路径拼接。首次插入 19 条,覆盖 2023-2025 年,12 产品。✅
6. JUNLONG(君龙人寿)
html_same_page_api 模式,Struts2 AJAX POST info!getBonus.action,28 产品逐产品查询,bonusRate+lateRate 双字段。首次插入 231 条,覆盖 2015-2024 年(10 年跨度),双分红方法(现金红利 + 终了红利)。✅
7. XINTAI(信泰人寿)
html_static 模式,首次插入 47 条,覆盖 2023-2025 年,44 产品。✅
8. DINGCHENG(鼎诚人寿)
html_static 模式,ZCMS 新闻列表页,HTML 表格 rowspan 处理。首次插入 91 条,覆盖 2022-2025 年,29 产品。✅
9. HSBCLIFE(汇丰人寿)
pdf_directory 模式,AEM 站点,每产品单 PDF(约 164 个 PDF),pdfplumber 表格解析,双账户(现金红利 + 增额红利)。首次插入 154 条,覆盖 2022-2025 年,53 产品。✅
10. 批量补充侦察(17 家)
对 B-list 和更新 URL 的 17 家公司进行 ≤3 请求/家侦察。判定结果:A(可行)2 家,B(需补充)7 家,C(放弃)8 家。其中合众人寿判定 C(数据在客户门户需登录),富德生命判定 B(数据加密,待逆向)。
11. V6 阶段收口
Verified count:37 → 48 更新文档:AGENTS.md、README.md、RELEASE_NOTE.md、TODO.md Excel《国内寿险公司清单》补标 17 家遗漏公司
12. 增量数据查验机制
设定每隔一天 9:00 AM 自动触发 48 家 verified 公司增量查验。7/3 手动触发首轮:47/48 家 unchanged,TAIKANGSHOU 1 家 FAILED,待排查。
13. 故障修复
📊 本周数据
📊 当前全景
| 总计 | 78 家 |
📋 下周计划
排查 TAIKANGSHOU FAILED 原因 富德生命加密数据逆向(B-list 唯一高价值目标) 48 家公司数据质量巡检 V7 浏览器自动化可行性评估 结算利率公司扩展评估
二、自动化交易监控系统(my-bot)
项目:my-bot | 框架:MetaHarness | 宿主:Claude Code本周完成从脚手架到可运行系统的完整搭建。
✅ 本周成果
1. 5-Agent 管线投产
market-watcher → signal-gen → risk-checker → executor → postmortem (Haiku) (Sonnet) (Codemod) (Codemod) (Sonnet)
market-watcher | |
signal-gen | |
risk-checker | |
executor | |
postmortem |
2. market-watcher v2.0:行情 + 新闻双源
从单一价格数据升级为双源分析,引入 6 态综合 regime:
bull_confirmed | ||
rally_under_pressure | ||
accumulation | ||
distribution | ||
potential_reversal | ||
bear_confirmed |
3. 风控体系
4. 万得 Wind 金融数据全线接入
stock_data | |
index_data | |
financial_docs | |
economic_data |
5. 持仓状态管理
设计 portfolio.json 作为单一数据源:持仓、历史平仓、观察列表、可用资金、已实现盈亏。定时任务读取此文件自适应持仓变化,无需硬编码标的。
6. 日报体系
标准化 8 段式日报(大盘基准 → 双源分析 → 持仓行情 → 盈亏 → 信号 → 风控 → 观察列表 → 复盘),本周产出 4 份日报覆盖 4 个交易日。
7. 交易日历
基于 trading-calendar-2026.json 提供统一交易日判断(周末 + 法定节假日 + 调休补班),2026 年预估 248 个交易日。支持 is_trading_day()、next_trading_day()、countTradingDays() 等 API。
🛠️ 权限体系排障实录
本周耗时最长的非功能需求:让 Wind MCP 的 Bash 调用不再每次弹窗确认。经过 6 轮排查定位根因。
问题现象: 即使 settings.json 已配置 Bash(*) 白名单,每次调用 Wind CLI 仍弹窗。
排查链路:
项目级 settings.json不在工作目录作用域内工作目录 D:\FM_trade缺少settings.json基座,只有settings.local.json覆盖层创建基座后仍弹窗——配置本身正确,问题不在权限文件 - 定位根因:
cd "..." && node scripts/cli.mjs ...是复合命令,Claude Code 判定为"非安全指令",即使 Bash(*)在 allow 列表也不自动放行
最终方案: 将 cd && node 复合命令改为 node "完整路径" 简单命令,匹配 Bash(node *) 规则,自动放行。
经验教训:
settings.local.json需要 settings.json基座,覆盖层不能独立存在复合命令( cd && node)不触发 safe 判定,只有简单命令自动放行工作目录决定权限作用域,子目录配置不会自动继承到父目录 权限变更需重启 Claude Code,settings.json 非热加载
📋 下周计划
交易日历集成到 Cron 定时任务,休市日自动跳过 风控规则迭代,根据运行数据调整熔断阈值 观察列表建仓触发条件自动化 接入宏观 EDB 数据,增强 market-watcher 判断 回测脚本集成到 Agent 管线
三、沉淀
🔑 Claude Code 权限体系:三层合并 + 复合命令陷阱
本周 my-bot 项目的 6 轮权限排障,总结出一套 Claude Code 权限配置的实操规则:
三层合并架构:
用户级 ~/.claude/settings.json→ 全局配置(model 选择等)项目级 项目根/.claude/settings.json→ 基座(权限白名单、defaultMode)本地覆盖 项目根/.claude/settings.local.json→ 合并到基座(env 变量、敏感配置)
关键规则:
settings.local.json是覆盖层,不能独立存在——没有基座时合并行为不确定 工作目录决定作用域—— D:\parent和D:\parent\child是两个独立作用域复合命令(含 &&、|、;)不触发runSafeCommands——只有node、ls等简单命令自动放行权限变更后需重启 VS Code 窗口——settings.json 非热加载
实操建议: MCP CLI 脚本如果通过 import.meta.url 计算自身路径,支持从任意目录调用——把 cd && node 改为 node "绝对路径" 即可绕过复合命令限制。
📊 增量查验机制:从手动到自动的关键一步
48 家公司全部 verified 后,"一次性采集"转向"持续监控"。设定每隔一天 9:00 自动触发增量查验,首轮 47/48 家 unchanged——这意味着采集器的幂等性设计经受住了检验。
剩余 1 家 FAILED(TAIKANGSHOU)反而有价值:它说明页面结构可能已变更,需要 collector 适配。增量查验不仅是数据保鲜手段,也是采集器健康度监控。
*— 记录于 2026.07.03*
夜雨聆风