InvestorClaw — 确定性优先的投资组合分析引擎
InvestorClaw 是一款面向个人投资者的本地优先型投资组合分析工具,采用"确定性优先"架构:所有核心计算(持仓估值、绩效指标、夏普/索提诺比率、久期、行业配置等)均由 ic-engine 在隔离的 OCI 容器中执行,输出经 HMAC 签名的结构化数据包,再通过配置的语言模型(默认 Together AI Gemma-4-31B)合成为自然语言回答。该设计从根本上杜绝了 LLM 幻觉对数值的污染。
核心用法
通过 MCP-HTTP 或纯 REST 接口调用 14 个工具。主入口 portfolio_ask 接受自然语言问题,自动路由至持仓、绩效、债券、再平衡、新闻、分析师评级等模块。容器启动时自动初始化(IC_INITIALIZE_ON_BOOT=1),首次冷启动约 60–200 秒(200+ 持仓可能达 5–15 分钟),后续查询 1–3 秒返回。
显著优点
- 确定性计算:所有数值来自 Python/FINOS CDM 合规引擎,带签名验证,非 LLM 生成
- 隐私优先:原始持仓文件、账户信息、成本基础全部留在本地 Docker volume,仅匿名化的摘要信封发送至 LLM 做叙事合成
- 模块化数据层:内置 yfinance 作为免费兜底,支持 Finnhub、Massive、Alpha Vantage、FRED、MarketAux、NewsAPI 等可选密钥,按持仓规模弹性扩展
- 双模式交互:支持原生 MCP 客户端或纯 HTTP REST,便于集成 Claude Code、OpenClaw、Zeroclaw 等代理运行时
- 加密迁移:跨主机迁移时支持 scrypt+AES-256-GCM 加密的 API 密钥备份,用户数据与密钥分离管理
潜在局限与风险
- 部署门槛:需 Docker/Podman 环境,首次拉取约 600 MB 镜像;
./portfolios目录需预创建以避免 UID 绑定权限问题 - 冷启动延迟:大规模投资组合(200+ 标的)在无付费数据源时会受 yfinance 全局速率限制,首次初始化耗时显著
- 密钥管理复杂度:虽支持运行时配置,但最佳体验仍需 Together AI(必需)、Finnhub/Massive(推荐)等多个密钥
- 本地化局限:无移动端 App,依赖浏览器仪表板或代理界面
- 合规声明:输出仅限教育用途,不含投资建议,需用户自行判断
适合人群
- 管理 50–500+ 持仓、需要精确量化分析的个人投资者
- 对数据隐私敏感、不愿将完整持仓上传至云端券商或第三方 SaaS 的用户
- 使用 Claude Code、OpenClaw 等 AI 代理工作流的技术型投资者
- 需要定期生成业绩报告、再平衡建议、债券久期分析的 DIY 理财者
常规风险
- 容器运行以 uid=1000 执行,宿主机目录权限配置错误会导致初始化失败
- API 密钥(尤其付费 Massive)泄露可能导致意外计费,建议启用加密备份并妥善保管 passphrase
- LLM 叙事合成虽基于签名信封,但仍需验证层(Claude Sonnet 等)复核,防止解释性偏差
- 依赖外部金融数据 API,存在服务中断或数据延迟风险,建议配置多源冗余