mcpField
O
openInvest

openInvest

本地服务
github.com/longsizhuo金融数据132今天更新

关于 openInvest

openInvest 是面向 AI Agent 的可自托管投资决策引擎,适合希望让主 Agent 保留对话与用户上下文、同时获得可审计投资分析的使用者。它通过隔离的多 Agent 委员会、回测和决策记录强调推理透明与纪律,不会自动下单。

主要功能

  1. 01隔离式多 Agent 投资委员会
  2. 02分析师交叉质询
  3. 03可审计的决策记录
  4. 04具防前视偏差的长期回测
  5. 05Markdown 与 YAML 状态存储
  6. 06每日自动运行并发送报告

适用场景

  1. 01审查投资组合的资产敞口
  2. 02跟踪买入、持有或减持判断依据
  3. 03通过历史回测评估策略
  4. 04定期生成投资委员会报告

MCP 相关

提供可供 MCP 客户端注册的 MCP 服务,也可通过带 Streamable HTTP 的远程模式运行。MCP 将投资委员会能力接入现有 Agent;不执行自动交易。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"longsizhuo-openinvest": {
"command": "uvx",
"args": [
"openinvest"
],
"env": {
"INVEST_HOME": "<INVEST_HOME>"
}
}
}
}
启动命令uvx openinvest
需要配置的环境变量
INVEST_HOMEData directory for portfolio/ledgers/.env (default: ~/openInvest)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiopeninvest0.68.0

工具

22

收录的工具列表 · 更新于 1 天前

此工具无需参数。

详细介绍

猫头鹰-02-金色线稿

openInvest

专为现代 AI Agent 打造的可自托管投资决策引擎。采用多 Agent 信息隔离与交叉质询协议,提供可审计的决策轨迹(Audit Trail)。

Python Agents License Stars Glama MCP server

📚 完整架构 Wiki · 🇨🇳 中文版


什么是 OpenInvest?

OpenInvest 是一款专为现代 AI Agent 打造的可自托管投资决策引擎。

它提供可验证的投资委员会、基于证据的推理、长周期回测以及可审计的决策记录。OpenInvest 并非用于取代 Claude Code、Codex、Hermes 或 OpenClaw,而是旨在为它们提供支持。


实时表现与盈亏

盈亏图表 数据源每 2 小时通过 `jobs/pnl_snapshot` 自动更新,并推送到 pnl-data 分支
上半部分:30 天总权益曲线(整个账户,采用时间加权法,因此存取款不计入收益,并在窗口起点重新设为 100) · 下半部分:同一窗口期内与 8 种基准资产的收益对比(透明披露,并非声称具有超额收益——委员会已证明的价值在于纪律性和透明度,而非超额收益,参见 ADR-023)
📌 注意:当前图表展示的是作者的实时实盘投资组合。自行托管后,同一任务会根据你自己的账本(`memory/portfolio_history.jsonl`)绘制总权益曲线——支持任意持仓,不限固定资产,公开 SVG 中不会显示任何代码或数量。账本覆盖 2 个交易日后,图表便会显示。
  • 基准投资组合:系统引入了 8 个标准对照基准,涵盖 4 个象限(AI 顾问 / 共同基金 / 财富管理 / 大盘指数)。有关比较方法和数据清洗逻辑的详情,请参阅 docs/wiki/README.md。

研究与证伪

系统自我披露:本系统是用于消除人类投资认知偏差并强制推理透明度的审计工具,而非放大收益的黑箱。最新自动化审计(docs/verdict_accuracy.md):方向性判定(不包括 HOLD)的真实命中率为 42.2%(n=56,低于随机水平);HOLD 占全部决策的 56%。系统的价值在于透明度和纪律性(大多保持不操作、低换手率),而非方向预测。详细日志流见 docs/verdict_accuracy.md。

本项目系统性地尝试证伪自身优势,并如实公布负面结果。委员会读取的确定性特征及其相关时机信号,均依据预注册的统计门槛进行测试——没有任何一项经受住检验,成为可交易的 Alpha。

测试结果判定
Q1 截面选股6 个特征,平均 IC 为 0.025–0.067,Holm 校正后 p=0.397无显著选股信号
M1 多变量 GBM(样本外)平均样本外 IC +0.003,p=0.925特征组合也没有帮助——无信号
Q2 黄金 MA200 趋势p_holm=0.016,显著——但 trend_dca 表明这是 Beta,而非可交易 Alpha:择时终值为 3.07,而买入并持有为 15.10,夏普比率为 +0.36,而买入并持有为 +0.68,最大回撤更深(−57% 对比 −44%)统计显著,但经济上不可交易
单资产多信号系列3 个资产 × 4 个信号系列 × 参数网格 = 每个资产 24 个变体;计入成本并经 DSR 折减后,没有任何一个通过 DSR > 0.95所有系列均无可交易信号
正向对照使用作弊式完美先知择时信号,得分为 DSR = 1.00测试框架能够检测真实信号

方法:Newey-West HAC t 统计量、Deflated Sharpe Ratio(Bailey & López de Prado 2014,逐方程重新推导)、Holm 校正、零前视偏差,以及 LLM 训练截止时间探测。

详情:experiments/signal-eval/README.md · docs/verdict_accuracy.md · ADR-022 · ADR-023


产品理念

大多数 AI 投资助手都试图成为更好的聊天机器人。OpenInvest 则构建透明、可验证、可审计的决策引擎,并将其接入 Claude Code、Codex、Hermes 和 OpenClaw 等个人 Agent——这些 Agent 的每一次改进,都会自动提升 OpenInvest 的能力。

我们有意明确分工:你的 Agent 负责长期记忆、自然对话和理解用户;OpenInvest 负责可验证的投资委员会、基于证据的推理、长周期回测,以及可审计的决策记录。

                   User
                     │
         ┌───────────┴───────────┐
         ▼                       ▼
    Your Agent             OpenInvest
(User Understanding)   (Market Understanding)
         │                       │
         └───────────┬───────────┘
                     ▼
            Better Investment Decisions

你的 Agent 了解你。OpenInvest 了解投资。

避免归用户所有

OpenInvest 有意避免“拥有”用户。大多数 AI 产品都试图包办一切——记忆、人格、聊天记录和工作区。OpenInvest 则退居幕后。它提供简洁的 API、CLI 命令和 Agent 技能(Claude Code / Codex / Hermes / OpenClaw),让你的主 Agent 管理对话和上下文,而 OpenInvest 为其提供底层投资智能。


功能

  • 多 Agent 投资委员会:独立分析,并通过多轮反驳展开辩论。
  • 协调者-工作者架构:防止上下文污染和角色幻觉。
  • 信息隔离:严格限制量化分析师和风险分析师访问越界上下文。
  • 可审计的决策轨迹:清晰记录,准确展示每项决策的“原因”。
  • 以 Markdown 为数据库:以 Frontmatter(YAML)+ Markdown(正文)作为唯一真实来源。
  • 长期回测:内置测试工具,并提供防止前视偏差的保护机制。
  • 基于梦境的记忆整合:每晚提炼记忆,防止上下文漂移。
  • 可自托管 / 零成本:直接利用本地 Agent 的推理资源。
  • Agent 技能:适用于 Claude Code / Codex / Hermes / OpenClaw 的轻量级插件,配有交互式引导向导。
  • 自动部署:通过 GitHub Actions 工作流运行委员会并每日发送报告。

快速开始

1. 集成到你的 Agent(推荐)

从 Agent 的插件注册表添加轻量级技能。宿主 Agent 首次运行时会自动拉取核心代码并对齐依赖:

# Claude Code
/plugin marketplace add longsizhuo/openInvest
/plugin install invest@openinvest

# Codex
codex plugin marketplace add longsizhuo/openInvest
codex plugin add invest@openinvest

# Hermes Agent (official plugin catalog)
hermes plugins install openinvest --enable
# older Hermes without the catalog: hermes plugins install longsizhuo/openInvest/plugin --enable

# OpenClaw
openclaw plugins install clawhub:openinvest

其他 MCP 客户端:注册下方第 2 步中的 MCP 服务(完整指南见Agent 教程)。

2. 独立运行——MCP 服务或 CLI(无需克隆)

后端发布在 PyPI 上;~/openInvest 仅用于存放你的数据:

# MCP (any MCP client; add --http for a remote streamable-HTTP server — BETA)
claude mcp add openinvest -e INVEST_HOME=~/openInvest -- uvx openinvest-mcp

# or plain CLI
INVEST_HOME=~/openInvest uvx openinvest status

向任何启用了技能的 AI 终端发送 set up invest(或 帮我初始化 invest)。系统将启动交互式引导向导,指导你完成以下操作:

  1. 检测 memory/ 状态存储路径和 .env 配置。
  2. 进行 5 维度画像(法定姓名、风险承受能力、债务结构、初始持仓和可选密钥)。
  3. 运行静态数据迁移,立即生成你的第一份资产敞口备忘录。

💡 零成本运行:在技能交互模式下,委员会的底层推理完全依赖宿主 Agent(例如 Claude Code)的推理流程。不会消耗第三方 API Key。只有在设置自动定时任务或调用独立 Web API 时,才需要配置 API 密钥。

有关自托管的详情,请参阅 docs/QUICK_START.md。(捆绑的 Web GUI 已于 2026-07-05 停用——所有功能均通过 CLI/MCP 提供;未来可能会重新推出独立前端。)

3. 无服务器自托管(GitHub Actions)

通过 GitHub Actions 自动运行委员会并接收每日摘要邮件。

⚠️ Fork 必须设为 Private:状态文件(持仓、判定结果)会提交回你的 fork。公开 fork 会泄露你的私人财务信息。

  1. Fork 此仓库并将其可见性改为Private(Settings -> Visibility)。
  2. 在本地运行 set up invest 以生成初始 memory/ 文件夹,然后将其提交并推送到你的私有 fork:
    git add -f memory/ && git commit -m "chore: init memory state" && git push
    
  3. 在 fork 的 Settings -> Secrets and variables -> Actions 中,添加以下 Secrets:
    • LLM_API_KEY(或 DEEPSEEK_API_KEY):运行委员会所需的 API 密钥。
    • EMAIL_SENDER / EMAIL_PASSWORD:Gmail 地址 + 应用专用密码。
    • DIGEST_EMAIL_TO:收件人邮箱地址。
  4. 在 Actions 选项卡下启用工作流。工作流每天上午 10:00(北京时间)自动运行;你也可以通过 Run workflow 手动触发 daily-report。

架构与多 Agent 编排

openInvest 不会在单个 LLM 会话中模拟辩论。系统在 core/committee/ 层强制执行信息隔离契约,在有向无环图(DAG)中编排 4 个独立的 LLM 进程:

                [ Macro Data Injection ]
                           │
                 ▼ 1. Macro Alignment Context
             ┌──────────────────────────┐
             │    Macro Strategist      │ (VIX / Interest rate spread / Currency momentum)
             └─────────────┬────────────┘
                           │
                 ▼ 2. Async Multi-Dimensional Scrutiny (Async DAG)
             ┌─────────────┴────────────┐
             ▼                          ▼
   ┌──────────────────┐        ┌──────────────────┐
   │  Quant Analyst   │        │   Risk Officer   │
   │ (RSI / Momentum) │        │ (Concentration)  │
   │                  │        │                  │
   │ 🛑 No Holdings   │        │ 🛑 No Indicators │
   └─────────┬────────┘        └─────────┬────────┘
             │                           │
             └─────────────┬─────────────┘
                           │
             ▼ 3. Round 2 Rebuttal & Cross-Challenge
             │ Mutual feedback loop for signal correction
             ▼
   ┌──────────────────────────────────────────────┐
   │         Chief Investment Officer (CIO)       │
   └───────────────────────┬──────────────────────┘
                           │
             ▼ 4. Deterministic State Persistence
          [ BUY / ACCUMULATE / HOLD / TRIM / SELL ]
  1. 宏观策略师:评估全球宏观形势(VIX、收益率曲线利差、核心货币矩阵),以确定投资组合的风险阈值。
  2. 量化分析师:纯粹依据数学动量和技术指标进行筛选。严格禁止其了解投资组合持仓,以消除人类依恋和损失厌恶偏差。
  3. 风险官:全程关注尾部风险(回撤缓冲、集中度限制、偿付能力乘数)。严格禁止其了解技术指标,以便客观地裁定资产敞口。
  4. 第 2 轮反驳:在第 2 轮中,量化分析师和风险分析师会收到对方第 1 轮的报告,并相互质疑判断边界,直至信号趋于一致或触发安全机制。
  5. CIO(首席投资官):综合经过审计的报告,并输出带有置信度的结构化 Verdict(BUY / ACCUMULATE / HOLD / TRIM / SELL)。不会自动执行订单;最终操作严格由人工审计员决定。

这套设计背后的关键权衡记录在 docs/wiki/adr/ 中的 ADR 里(截至目前共 24 项),其中包括推翻早期设计的裁定——ADR-007 弃用了 CIO 的少样本方案,ADR-009 则在预注册实验后否决了 TA 风格的分析师 Agent。


核心设计

  • 协调器-工作器模式:工作器在隔离的命名空间中运行。Python 在框架层硬编码边界约束,以防止大型多角色提示词造成注意力污染。
  • Markdown 即数据库:系统使用 Frontmatter(YAML)+ Markdown(正文)作为唯一事实来源。借助 fcntl.flock 进程文件锁和临时原子文件替换,系统可原生提供由 Git 跟踪、防篡改的投资审计轨迹。
  • 三阶段梦境整合:每晚根据实际市场结果提炼当天的决策(浅睡 $\rightarrow$ REM $\rightarrow$ 深睡),以整合长期洞见,防止大语言模型(LLM)的上下文在长时间执行过程中发生漂移。

配置

系统默认使用 DeepSeek 端点,并支持任何标准的 OpenAI 兼容 API。LLM 提供商设置以及所有可调整的运行时覆盖项(ADR-017)记录在 docs/wiki/22-configuration.md 中。


免责声明与回测局限

  1. 非财务建议:本系统是由 LLM 驱动的决策支持工具。输出备忘录仅代表基于确定性数据的模拟推理,不构成资产配置建议。
  2. 回测时间锁与前视防护:回测引擎(scripts/backtest_runner.py)内置了安全机制:默认拒绝 decision_date > 2024-06-30 的回测(可通过 --allow-lookahead 覆盖)。由于主流基础模型的训练截止日期在 2024 年年中左右,在之后的时间段进行回测会引入严重的前视偏差(模型预训练数据泄漏)。参数调优、Optuna 扫描和提示词优化必须严格使用 2024 年 6 月 30 日之前的历史时间窗口。

致谢

  • Equibles — A 股和香港财务报表的可选数据提供商;当 Yahoo Finance 无法访问时,也可作为每日价格的备用来源。Yahoo Finance 仍是默认选项;设置你自己的免费 EQUIBLES_API_KEY 即可启用(配置说明)。
  • MiMo — 特别感谢 MiMo Quantitative Lab 赞助生产级高性能大模型推理(为 mimo-v2.5-pro 长周期扫描提供支持)。
  • OpenClaw Dreaming Guide — 三阶段睡眠周期记忆提炼框架的理论基础。

许可证

本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。