feat: add scoped alpha sync and local self-correlation

This commit is contained in:
yuxuanhui
2026-09-08 10:40:49 +08:00
parent 404a4d8a04
commit d2ccd94721
28 changed files with 1656 additions and 69 deletions
@@ -0,0 +1,18 @@
# 实现 Alpha 分组同步与本地自相关
Status: ready-for-agent
## 工作项
- [x] 分组查询、按日/已提交全量同步契约与持久化进度。
- [x] 本地自相关算法、缓存补取、结果存储与数据不足处理。
- [x] 双 Tab、同步日期表单、检测入口与详情、任务进度。
- [x] 后端、迁移、前端构建及浏览器验证,更新当前项目使用文档。
## Comments
2026-09-08:开始实现;用户已明确授权上述范围内的本地修改。
2026-09-08:本地实现完成。`uv run ruff check app tests` 与后端 87 项测试通过;`pnpm build`、修改文件 Prettier 检查和浏览器全套 6 项通过。截图核验后修正检测结果与缓存时间的 UTC 标记,后端全套及 Alpha 管理浏览器流程再次通过。已检查 1440px / 390px 布局。构建仅有已有 lottie-web 依赖的 eval 提示。
在隔离 SQLite 与 PostgreSQL 17 中验证 0002 → 0003、Alembic schema check、回退再升级,旧研究记录内容保留;临时 PostgreSQL 容器及卷已清理。独立后端核验未发现实质问题。`git diff --check` 通过。未提交、未部署、未调用真实平台;新增平台日期筛选参数仍需真实账户只读联调。
+25
View File
@@ -0,0 +1,25 @@
# Alpha 管理迭代
用户于 2026-09-08 要求实现本地自相关检测、待提交/已提交双 Tab,以及按日同步。
## 范围与行为
- Alpha 仍存于统一结果库,按平台 `status == UNSUBMITTED` 与已知的其他状态分成两个 Tab;筛选、导出、选择及 AI 页面上下文携带所属分组。
- 待提交先选日期范围,按 UTC 创建日期逐天同步;已提交按 UTC 提交日期逐天同步,另可全量同步。相同起止日期即单日。覆盖可见及隐藏数据,半开日边界防止午夜遗漏;保留分页检查点、取消、重试与本地研究记录。
- 新建全量任务只允许已提交。升级前已有的无分组全量任务按原始任务范围恢复,不改写其检查点含义。
- 本地 self-correlation:同地区已提交 Alpha 作基准,排除自身;使用 PnL 缓存并在缺失时按需补取,只计算本地 Pearson,不调用平台 check。
- 累计 PnL 先按 UTC 日期排序并作日变化,缺失值不补零、不跨缺口差分;以目标最新日期为四年共同回看窗口;至少 30 个共同有效变化样本,常量或无效数据跳过。
- 保留带符号最大相关系数和 0.7 告警线(本地规则,不宣称平台等价)。展示比较数量、跳过原因、最高相关对象、计算时间和缓存时间;缺失数据不得显示通过。
- 检测结果单独持久化,不覆盖平台 checks 或本地研究状态。缓存和基准集改变时标为待重算。单条详情和选中最多 100 条均可发起任务。
## 界面约定
scope_sketch: 现有 Alpha 管理中增加两个 Tab、同步日期对话框及本地自相关详情;不增加其他研究模块。
lark_style_recipe: 保留白色工作区、紧凑表格、4px 间距和克制蓝色主操作;不改变页面外壳。
ud_control_coverage: 复用 Semi Design Tabs、Input、Modal、Button、Table、Tag 的语义与状态。
media_decision: 数据管理任务不需要新增插图或图标。
verification: 单元/接口验证数值、日期边界、任务恢复和状态隔离;浏览器验证双 Tab、同步范围、检测、导出、窄屏和现有 AI 流程。
## 验证边界
只在隔离测试数据库和模拟平台上验证;不调用真实平台检查,不启动回测,不回写平台。