AI4Finance-Foundation/FinRobot
FinRobot: An Open-Source AI Agent Platform for Financial Applications using Large Language Models
FinRobot – 金融领域的开源AI代理平台
是什么 – FinRobot 是三个相关代码库的集合,可让您使用大型语言模型(LLMs)构建代理式金融分析应用。该项目的哲学是:
- 模型进行推理 – LLM 生成叙述、思维链推理,并决定调用哪个工具。
- 软件进行计算 – 所有数值金融(DCF、DDM、LBO、蒙特卡洛等)均由纯Python函数执行,确保结果的确定性并提供完整的溯源性。
- 代理进行协调 – 主导的“协调代理”协调一系列专业代理(数据收集、分析、建模、综合、报告)以及一组辩论代理(多头、空头、裁判),以生成可追溯的研究输出。
- 系统进行验证 – 审计代理检查数值、记录溯源,并暴露置信度分数。
三个版本,一个金融领域层
| 目录 | 版本 | 目的 |
|---|---|---|
finrobot_desktop/ |
V2 – 生产级桌面应用(PydanticAI + FastAPI + React/Tauri) | 功能齐全的股票研究工作站;生成13章报告、实时市场数据和确定性估值表。 |
finrobot_equity/ |
V1 – 自托管Web应用(OpenAI Agents SDK) | 快速启动服务,将股票代码转换为HTML/PDF研究报告。 |
finrobot_autogen/ |
V0 – 教育用AutoGen库(pip可安装的 finrobot) |
参考实现和教程;不适用于生产环境。 |
核心设计思想
- 确定性计算 + LLM叙述 – 数值来自代码;LLM仅撰写围绕它们的故事。每个输出都带有其溯源信息(哪个操作符生成了该数值,使用了哪个数据源)。
- 模块化代理栈 – 相同的金融工具可与任何新兴代理框架搭配使用(AutoGen → OpenAI Agents SDK → PydanticAI → 未来DeepSeek-Harness)。
- 丰富的金融工具 – 内置数据提供者(Finnhub、FMP、yfinance、SEC EDGAR、新闻聚合器、外汇),32个纯Python估值操作符,56个“剧本”涵盖股票研究、投资银行、私募股权和财富管理工作流。
快速入门(概览)
- 桌面端(V2) – 下载macOS Apple-Silicon的
.dmg或本地运行源码:
UI可通过cd finrobot_desktop uv sync # 安装后端依赖 (cd desktop && npm install) # 仅需安装一次前端 ./dev.sh # 启动FastAPI后端 + Vite开发服务器http://localhost:5173访问,与原生Tauri应用一致。 - Web应用(V1) – 复制
config.ini.example并插入API密钥后,运行./finrobot_equity/deploy.sh start,在http://127.0.0.1:8001提供服务。 - 教育库(V0) – 使用
pip install finrobot(或从仓库根目录运行pip install -e .)安装。跟随finrobot_autogen/tutorials_*中的Jupyter笔记本,查看代理如何生成年度报告、市场预测、交易策略等。
示例命令(桌面CLI)
finrobot research AAPL # 生成13章完整股票研究报告
finrobot dcf MSFT # DCF估值(如适用,自动切换为DDM)
finrobot comps NVDA --peers AMD,INTC
finrobot ic-memo TSLA # 投资委员会备忘录
finrobot ask AAPL "关税对毛利率的暴露程度如何?"
所有命令均生成包含以下内容的结构化成果:
- 数据表格(代码计算,明确标注)
- 叙述部分(LLM生成,引用表格)
- 置信度分数和审计备注。
生态系统与路线图
- FinRobot Pro – 托管SaaS版本(https://finrobot.ai/),提供与云服务相同的功能。
- 未来V3 – 正在使用DeepSeek-Harness框架开发,旨在实现更自主的代理,同时保持验证约束。
- 研究基础 – 仓库引用白皮书(arXiv 2405.14767),并与近期AI代理文献(如斯坦福的Generative Agents)保持一致。
谁会使用它?
- 量化分析师 / 股票研究员:希望获得AI增强工作流,但仍确保数字由审计代码生成的人。
- FinTech开发者:寻找可轻松切换至不同LLM后端的即用型多代理栈的人。
- 学生和研究人员:对如何将LLM、工具调用与确定性金融结合感兴趣的人。
总结:FinRobot是一个真正的、面向生产环境的开源平台,将大型语言模型与确定性金融计算引擎结合,打包为桌面应用、Web服务和教育库。它牢牢扎根于金融AI代理领域。
相关
- 项目
- 项目
- 项目
- 项目
- 项目