StockValuation.io 本地估值工作流
把股票代码变成可审查的 Damodaran 式 DCF 估值:本地 MCP 计算确定性数学,智能体负责研究、证据与判断,假设全程透明可挑战。
技能自身权限克制:估值数学由本地 MCP 服务承担,明确禁止模型自造数字、禁止在聊天中索取密钥(sv check-env)、绕过门控需用户显式请求并记录 gate_records、无建议性金融话术政策。扣分项:README 推荐 curl|bash 远程安装脚本,报告默认自动打开浏览器(虽有 --no-open),数据流涉及 SEC/Yahoo 等外部服务且发布者身份未经验证,回滚路径仅部分说明。
仓库含真实 CI 工作流和已提交的测试(accounting 验证、锚点/门控/范围输出等关键路径),失败码体系(GATE_NOT_CLEARED、UNANCHORED_SCENARIO_VALUE、explain_failure)自洽且可诊断。扣分项:静态审查无法执行验证,测试对 SKILL.md 描述的完整八步工作流覆盖不完整, Docker/Java 服务与外部数据源的可用性未验证。
触发条件明确(提及 stockvaluation.io 或估值请求),覆盖边界、停止规则(金融公司、私营公司、数据不足)和非适用范围写得非常清楚。扣分项:核心功能完全依赖 SEC EDGAR、Yahoo 等中国大陆难以稳定访问的海外服务,且无中文支持声明,本地环境要求 Docker,对目标用户群构成实质门槛。
文档分层良好(SKILL.md + 7 个 references,渐进披露清晰),Apache-2.0 许可明确,作者署名并声明与 Damodaran 无关联。扣分项:SKILL.md 版本 3.0.0-workflow-consistency 与 pyproject 0.1.0 不一致,无变更日志,维护责任和更新路径仅隐含于个人项目 README,安装脚本细节未在技能文档内充分披露。
输出契约定义严密(报告 JSON 形状、确定性 prose linter、数值溯源标签、区间输出规则),边际价值主张(可审计的 Damodaran 式流程)清晰。扣分项:静态审查无法验证实际产出质量,价值完全依赖本地 Java 服务与外部数据链路,未执行无法确认代表性输出可直接使用。
有 CI 工作流和已提交测试套件作为可审计材料,锚点确定性有逐字节一致性测试。扣分项:覆盖率低于 SKILL.md 声称的全部关键路径,无第三方独立复现证据,演示视频无法静态核实,静态审查上限 5 分。
- 核心数据链路依赖 SEC EDGAR 与 Yahoo,中国大陆网络环境下可能无法稳定使用,且无中文支持。
- README 推荐的 curl|bash 远程安装脚本会在用户机器上执行未审查代码,建议改为克隆后本地审查再运行。
- 报告默认自动打开浏览器,自动化场景应使用 --no-open 或 STOCKVALUATION_OPEN_REPORT=0。
- 输出仅为教育性估值场景,不是投资建议;所有关键假设须人工复核。
- SKILL.md 与 pyproject 版本号不一致,静态审查未执行任何测试,实际运行质量未经验证。
这个 Skill 能做什么,适合哪些场景?
StockValuation.io 是一个开源、本地优先的估值工作流,配合 Codex 或 Claude 使用。它把职责分开:智能体做公司研究、文件阅读、证据收集和引导式提问;本地 MCP 服务执行 DCF 计算并返回可审计的数字;用户负责审阅假设和最终判断。工作流遵循 Damodaran 的"故事驱动数字"方法论,设有服务器强制的关卡——必须先做证据审查,再跑带情景的重算,并通过引导式问题确定关键驱动因素。报告为教育目的生成,明确声明不构成投资建议。适合想学习或检验 DCF 估值、且愿意自行部署本地服务的人。
从股票代码或 SEC EDGAR 招股书 URL 出发:调用本地 MCP 工具获取确定性基线估值(researched_baseline / value_ticker / extract_prospectus);智能体研究公司并按驱动因素整理证据;在证据审查关卡暂停等待用户确认;通过 plan_guided_questions 逐个提出引导式假设问题并应用答案;由本地服务(绝不手算)重算基线与高/中/低情景;最终用 build_report.py 生成带确定性文字校对器的 HTML 报告并自动打开。未通过数据支持的案例会返回明确的失败而非伪造估值。
- 投资学习者想看一家公司的增长故事如何逐项映射到收入增长、利润率、再投资和终值假设上
- 自行研究股票的个人投资者想检验某个 DCF 假设是否站得住脚,而不是接受黑箱公允价值
- 需要从 SEC 招股书(如 SpaceX 类申报文件)提取事实并构建早期公司估值视图的用户
- 想在 Codex 或 Claude 上搭建并测试智能体原生估值技术栈的开发者
- 教学场景中比较不同情景(悲观测算/基准/乐观)对估值的影响
这个 Skill 有哪些优点和局限?
- 估值数学完全本地、确定性且可审计,假设透明可挑战,避免黑箱数字
- 服务器强制关卡防止智能体跳过证据审查或自造情景数字(UNANCHORED_SCENARIO_VALUE 等保护)
- 遵循 Damodaran 故事-数字方法论,报告展示假设链条而非孤立结论
- 数据不足时返回明确失败,而非伪造估值
- 需要自行安装并运行本地 Docker MCP 服务,部署门槛不低
- 仅教育用途,明确禁止投资建议和买卖推荐;不支持金融行业公司
- 本地优先但非完全离线:市场数据、公司文件、汇率和模型提供商仍需外部访问
- 非美股、ADR、IFRS 及异常申报可能需要额外来源审查;历史数据覆盖有缺口
- 作者声明与 Aswath Damodaran 无关联、未获其认可;README 未展示测试套件或独立准确性验证
如何安装这个 Skill?
需要 Docker Desktop 或兼容的 Docker Engine(含 Compose)。两种方式:1) 本地检出仓库后运行 ./install.sh setup;2) 远程安装:curl -fsSL https://raw.githubusercontent.com/stockvaluation-io/stockvaluation_io/main/install.sh | bash -s -- setup。安装器会安装技能、配置本地工具、启动 Docker 服务并打印状态,默认面向 Codex 和 Claude。curl 安装默认克隆到 ~/.local/share/stockvaluation_io,可用 STOCKVALUATION_INSTALL_DIR 更改路径。其他命令:./install.sh status|start|stop|uninstall。技能文件位于仓库 valuation-agent/skills/stockvaluation-io/SKILL.md。
如何使用这个 Skill?
安装并确认服务运行后,在 Codex 或 Claude 中直接提问:例如 "Value MSFT using stockvaluation.io"。默认是完整研究流程:智能体先展示证据,暂停供你审查,再逐个提出引导式假设问题,回答后才生成报告。招股书估值:"Use stockvaluation.io to value a company from this SEC prospectus: <SEC EDGAR HTML URL>"。只有明确说 quick、no questions、one-shot report 等才会跳过证据与提问环节。
这个 Skill 与同类方案有什么区别?
与直接让大模型"手算"一个 DCF 相比,本项目明确禁止智能体自行计算估值数字,由本地 MCP 服务产出确定性结果;源材料未提及具体竞品名称。