mystocks_spec vs MPW-hermes vs daily-stock 定位对比

用户量化生态中存在三个容易混淆的系统:mystocks_spec(业务终端)、MPW-hermes(策略编排/回测)、daily-stock(每日工作流 skill)。它们分工明确但边界容易踩坑,本文给出清晰的对比与协同关系。

一、三系统一句话定位

系统 一句话定位 形态 代码位置
mystocks_spec A 股桌面端 Web 量化研究/监控/分析/交易辅助业务终端 Vue 3 + FastAPI 全栈应用 /opt/claude/mystocks_spec
MPW-hermes Multi-Project Workspace 跨项目策略编排与回测引擎 Python 库 + CLI + 测试套件 /opt/claude/MPW-hermes
daily-stock Hermes skill:每日持仓工作流自动化(持仓汇总→新闻→分析→飞书→备份) Hermes skill(脚本 + LLM 编排) ~/.hermes/skills/productivity/daily-stock

二、核心维度对比

维度 mystocks_spec MPW-hermes daily-stock
首要目标 用户日常使用的量化交易终端 UI 策略研发与回测的编排引擎 每日固定流程的自动化执行
交互方式 浏览器 Web UI(1280×720 桌面) Python API + CLI + 测试 Hermes 触发词 + cron 定时
运行时机 用户主动打开,持续运行(PM2 常驻) 研发时手动调用,或批量回测 工作日 09:00 cron 自动 + 触发词
数据源角色 消费者(直连 OpenStock) 消费者(OpenStock 主 + eltdx 备 + CH 补 + online 兜底) 消费者(TDX + 东方财富 + MySQL)
是否落库 TDengine 缓存 + PostgreSQL 业务数据 不主动落库,走 on-demand MySQL hermes 库(4 表)+ Obsidian MD
用户是谁 直接投资者(John) 策略研发者(John + AI 协作) 自动化流程(无交互)
AI 协作深度 间接(AI 按规范开发它) 深度(多 CLI worktree 协作 + function-tree 治理) 中等(skill 内 LLM 编排分析)
测试规模 Vitest + Playwright + Pytest(分层) 312 tests(14 文件) 无独立测试(流程验证即测试)

三、职责边界

mystocks_spec 负责

  • 行情展示、技术分析 UI、策略管理界面、风控监控、投资组合、交易辅助、系统管理
  • ArtDeco 金融终端视觉体验
  • 业务数据的本地持久化(PostgreSQL 业务表、TDengine 时序缓存)
  • 对前端用户的 API 契约(OpenAPI 单一事实来源)

MPW-hermes 负责

  • 跨项目编排:Pipeline / Cascade / Parallel 三种模式
  • 单项目 worktree 并行 + 写审分离(Codex 写 + Claude Code 审)
  • function-tree 主线治理(FT 节点深度 ≤ 2 硬约束)
  • A 股策略回测引擎(T+1 拦截 + 成本模型 + 涨跌停)
  • 因子 Alpha 策略 + 因子注册(对接 factor-pool)
  • Optuna 参数优化 + 过拟合防护 + Walk-Forward 滚动验证
  • QuantDinger 作为执行域成员(非平级 HEAD)

daily-stock 负责

  • 扫描 Obsidian Vault 持仓目录,合并多账户去重
  • 更新 mystocks/index.md(行业分布 + 概念分布 + 技术指标)
  • 按持仓股拉取东方财富新闻
  • 用 mystock-analysis skill 逐只技术分析 + 飞书推送
  • MySQL 备份(account_overview / holdings / news / analysis_reports 四表)
  • 触发盘中监控(market-monitor skill)

四、数据流与协同关系

                    OpenStock (NAS:8040, 数据提供者)
                       ↑          ↑
          HTTP REST    │          │  HTTP REST
                       │          │
    ┌──────────────────┘          └──────────────────┐
    │                                                 │
    ▼                                                 ▼
┌────────────────┐                          ┌──────────────────┐
│ mystocks_spec  │                          │   MPW-hermes     │
│ (业务终端)     │                          │ (策略编排/回测)  │
│                │                          │                  │
│ TDengine 缓存  │                          │ factor-pool 接入 │
│ PostgreSQL业务 │                          │ QuantDinger 执行 │
└────────────────┘                          └──────────────────┘
    ▲                                                 ▲
    │ 读 MySQL holdings                               │ 策略导入
    │                                                 │
    │     ┌──────────────────────────────┐            │
    │     │     daily-stock skill        │            │
    │     │  (每日工作流自动化)          │            │
    │     │                              │            │
    │     │  持仓 → 新闻 → 分析 → 飞书  │            │
    │     │  → MySQL 备份 → 盘中监控    │            │
    │     └──────────────────────────────┘            │
    │                                                 │
    │  写 MySQL hermes.holdings                       │
    │  (daily-stock 产出的持仓数据)                   │
    │                                                 │
    └───────────── 共享 MySQL hermes 库 ─────────────┘

关键协同点: - daily-stock 写 MySQL holdings → mystocks_spec 可读(理论上的协同,实际各自独立运行) - mystocks_spec 与 MPW-hermes 共享 OpenStock → 都是消费者,互不干扰 - trade-audit skill 读券商导出文件 → 独立于三者,做交易复盘审计

五、功能重叠与边界澄清

5.1 技术分析

  • mystocks_spec:内建技术分析 UI(domain-02,90% 完成),用户点击交互
  • MPW-hermes:回测引擎内的技术指标计算,批量程序化
  • daily-stock:调用 mystock-analysis skill,输出 MD 报告 + 飞书摘要

边界:mystocks_spec 是"交互式",MPW-hermes 是"批量回测式",daily-stock 是"定时报告式"。

5.2 策略管理

  • mystocks_spec:策略 UI 展示与参数配置(domain-03,85% 完成)
  • MPW-hermes:策略研发、适配、回测、优化(PluginRegistry 8 插件)
  • daily-stock:不涉及策略管理

边界:mystocks_spec 展示策略,MPW-hermes 研发策略。用户在 MPW-hermes 回测验证 → 通过的因子/策略 → 可在 mystocks_spec UI 中配置监控。

5.3 持仓与交易

  • mystocks_spec:投资组合与交易辅助 UI(domain-05,70%,开发中)
  • MPW-hermes:Paper Trading 模拟(10 只标的执行适配,成交率 98%)
  • daily-stock:持仓数据汇总与 MySQL 备份(只读分析,不下单)

边界:实盘交易执行归 QuantDinger(执行域成员),mystocks_spec 提供辅助 UI,MPW-hermes 做回测验证,daily-stock 做数据汇总。

六、技术栈对比

mystocks_spec MPW-hermes daily-stock
主语言 Python 3.12 + TypeScript Python Python(Hermes venv)
前端 Vue 3 + ArtDeco + ECharts 无 UI 无 UI(Obsidian MD 输出)
后端 FastAPI + Pydantic + SQLAlchemy 自定义 src/ 模块 脚本式
时序库 TDengine 3.3+ 无(on-demand)
关系库 PostgreSQL 17+ 无(回测结果按需) MySQL hermes 库
测试 Vitest + Playwright + Pytest pytest(312 tests) 流程验证
部署 PM2 一等公民 + Docker 直接 python 运行 Hermes cron
治理 STANDARDS + OpenSpec + GitNexus function-tree + 写审分离 skill SKILL.md

七、演进路线对比

mystocks_spec

  • 当前:B4.014 OpenStock routes 迁移(Phase 1 六批分域)
  • 中期:完成 OpenStock 消费者边界收口(Phase 2/3,退役 ~8,600 LOC akshare 代码)
  • 长期:投资组合与交易域完善(domain-05 至 ✅)

MPW-hermes

  • 当前:12/12 Phase 完成,312 tests 全绿,三步实战验证完成
  • 中期:导入 Obsidian vault 策略文件逐个测试;factor-pool draft→verified 推进
  • 长期:Hermes cron 每日自动跑因子选股 + 信号生成;QuantDinger 实盘对接

daily-stock

  • 当前:稳定运行,工作日 09:00 cron 自动执行
  • 持续优化:冷却期机制(3 小时)、多账户合并去重、V5 风控规则拦截
  • 与 trade-audit 解耦:审计功能独立子目录,不混入 daily-stock scripts

八、用户架构原则在三者中的体现

用户长期坚持的原则在三个系统中有不同体现:

原则 mystocks_spec MPW-hermes daily-stock
REST 直连优先,MCP 不做运行时主通道 OpenStockClient REST 消费 OpenStock REST 四级路由 TDX REST + 东方财富 API
数据消费者不经过中间存储层 TDengine 仅作降级缓存 on-demand fetch 不落库 MySQL 仅作备份与报表源
最小改动原则 STANDARDS 反碎片化熔断 function-tree 节点深度 ≤ 2 skill 独立,不混入 trade-audit
可配置参数放 YAML ecosystem.config.js + .env 策略参数 YAML signal_config.yaml
方案先行 OpenSpec proposal 必走 FT 主线 authorize 前置 SKILL.md 即规范

九、何时不该混淆

常见误用警示:

  1. 用 MPW-hermes 做日常持仓监控 → 应该用 daily-stock + mystocks_spec
  2. 用 mystocks_spec 做策略批量回测 → 应该用 MPW-hermes(它的回测引擎经过 312 tests 验证)
  3. 在 daily-stock 里混入交易审计 → 用户明确要求 trade-audit 完全独立
  4. 让 mystocks_spec 直接 import akshare → 违反 OpenStock 消费者边界 SOT
  5. 让 MPW-hermes 自建数据抓取层 → 违反"REST 直连优先,不自己实现数据抓取层"
  6. 把 daily-stock 的脚本当作 mystocks_spec 的数据源 → 两者独立,daily-stock 只写 MySQL/Obsidian,不向 mystocks_spec 提供数据

十、科学组织的建议

基于三者定位,推荐的协作模式:

  1. 策略研发阶段(MPW-hermes 主导) - 在 MPW-hermes 用 function-tree 治理研发策略 - 接入 factor-pool 真实因子,跑 Optuna 优化 + Walk-Forward 验证 - 通过的策略导出为可复用产出物(.h5 因子文件)

  2. 策略部署阶段(mystocks_spec 主导) - 在 mystocks_spec UI 配置已验证的策略参数 - 监控运行状态(domain-04 风险管理 + domain-06 监控告警) - 用户通过 Web 终端做日常决策

  3. 日常运营阶段(daily-stock 主导) - 工作日 09:00 自动汇总持仓 + 拉取新闻 + 技术分析 - 飞书推送摘要,用户在手机即可查看 - 盘中 market-monitor 每分钟刷新(30 分钟 cron 扫描风控)

  4. 复盘阶段(trade-audit 主导,独立于三者) - 工作日 18:30 自动复盘审计 - 读券商导出文件,FIFO 配对 + V5 风控规则检查 - 输出审计报告到 Obsidian + 飞书

四个阶段、四个系统,各司其职,通过 OpenStock(数据)、MySQL(持仓)、Obsidian(报告)三个共享层串联。

相关页面:mystocks-spec-项目全景openstock-消费者边界与数据源迁移mystocks-spec-治理体系A股策略体系全景:从分形到动量到趋势跟随