Dexter:24h 不下班的 AI 金融分析师

一、Dexter 核心工作流程
Dexter 是一个能够思考、规划、自我反思的自主金融研究 Agent。它接收复杂的金融问题,将其分解为结构化的研究步骤,调用实时市场数据完成分析,并持续验证和修正,直到给出有数据支撑的答案。
下图展示了 Dexter 从接收问题到输出结果的完整执行链路:

流程关键说明:
-
规划阶段:Agent 不会直接回答,而是先把问题拆解成 3~7 个具体的子任务,每个子任务都有明确的目标和所需数据
-
执行阶段:每个子任务独立执行,Agent 自主决定调用哪个工具(损益表 / 资产负债表 / Web 搜索...),无需人工干预
-
验证循环 :这是 Dexter 区别于普通 AI 问答的核心------结果不满意会自动重试,不是给出"可能不准"的答案就算了
-
全程留痕 :每步调用都记录在
.dexter/scratchpad/JSONL 日志中,完整可审计
二、四大核心 Agent 架构
Dexter 采用多 Agent 协作架构,四个专职 Agent 各司其职,比单一 LLM 端到端回答的准确率和深度都高出不少。
这个架构的设计哲学借鉴了人类分析师的工作方式:一个人负责拆任务、一个人负责查数据、一个人负责质检、一个人负责写报告,而不是让一个全能的人又查又写又质检。
下图展示了四个 Agent 的协作关系和数据流向:

三、技术栈全景
Dexter 的技术选型非常现代化,整体以轻量、高性能、可扩展为原则。
下图展示了从用户接入到数据获取、再到可观测性的完整技术栈:

各层技术选型说明:
| 层级 | 技术选择 | 为什么这样选 |
|---|---|---|
| 运行时 | Bun v1.0+ | 比 Node.js 快 3~5 倍,冷启动几乎即时,非常适合频繁工具调用的 Agent 场景 |
| Agent 框架 | LangChain.js | 成熟的 Tool Calling / ReAct 循环实现,社区活跃,易于扩展新工具 |
| 主力 LLM | OpenAI GPT-4o | 默认推荐,工具调用准确率最高;也支持 Claude / Gemini / Ollama |
| 金融数据 | Financial Datasets API | 机构级数据,覆盖 AAPL/NVDA/MSFT 等主流美股,关键指标免费 |
| Web 搜索 | Exa(首选)/ Tavily(备选) | Exa 专注高质量内容检索,适合查财报/新闻;Tavily 作为补充 |
| 本地模型 | Ollama | 支持离线/隐私优先场景,接入 llama3/mistral 等本地模型 |
| 评估追踪 | LangSmith | 自动记录每次 LLM 调用链路,支持 A/B 测试和准确率统计 |
| 调试日志 | JSONL Scratchpad | 本地文件,每次查询独立存档,无需额外服务,零依赖调试 |
四、项目基本信息
| 属性 | 详情 |
|---|---|
| GitHub 地址 | [1] https://github.com/virattt/dexter^\[2\]^ |
| Star 数 | 20,000+(2026年5月持续增长) |
| 编程语言 | TypeScript(98.7%) |
| 运行时 | Bun v1.0+ |
| 开源协议 | MIT(可商用,可自由修改) |
| 定位 | "Think Claude Code, but built specifically for financial research" |
💡 Dexter 不是 ChatGPT 套壳,而是实现了完整 ReAct 循环(规划→执行→反思→迭代)的垂直金融领域 Agent。
五、核心能力详解

5.1 智能任务拆解(Intelligent Task Planning)
普通 AI 遇到"分析特斯拉财务健康状况"会直接背百科式介绍。Dexter 的做法:
-
拆解问题 → 查收入表、拉资产负债表、算流动比率
-
对比行业均值 → 识别优势/劣势指标
-
检查债务结构 → 评估偿债风险
-
逐个击破 → 每步单独执行、单独验证
5.2 自主工具调用(Autonomous Tool Execution)
Dexter 内置完整金融工具箱,自动决定用哪个,无需用户手动指定:
| 工具模块 | 功能 |
|---|---|
| 损益表(Income Statements) | 营收、毛利、净利润等 |
| 资产负债表(Balance Sheet) | 资产、负债、权益结构 |
| 现金流量表(Cash Flow) | 经营/投资/筹资现金流 |
| 财务指标快照(Metrics) | ROE、PE、流动比率等 |
| 加密货币价格(Crypto) | 实时价/历史价/交易量 |
| 公司新闻(News) | 财务公告、市场事件 |
| Web 搜索(Exa/Tavily) | 联网补充最新信息 |
5.3 自我验证机制(Self-Validation)
AI 幻觉是金融分析的死穴。把"同比"和"环比"搞混,汇报会上当场社死。
Dexter 的解法:
-
完成分析后强制 Review:数据一致吗?逻辑通顺吗?
-
不对就重新执行,直到有信心才给答案
-
内置循环检测 + 步骤上限,防止 Agent 死循环
5.4 实时数据接入(Real-Time Data)
对接 financialdatasets.ai[3],AAPL、NVDA、MSFT 等主流美股免费实时查询,彻底告别"训练数据截止于两年前"的尴尬。
Dexter 的核心价值在于四个相互协作的能力,缺少任何一个都会让 Agent 退化成普通 AI 问答。下面逐一拆解每个能力的实际运作方式。
六、Scratchpad 调试系统
每次查询都在 .dexter/scratchpad/ 生成 JSONL 日志,完整记录 Agent 的"心路历程":
go
{"type":"init","query":"Compare Apple and Microsoft revenue growth"}
{
"type":"tool_result",
"timestamp":"2026-01-30T11:14:05.123Z",
"toolName":"get_income_statements",
"args":{"ticker":"AAPL","period":"annual","limit":5},
"llmSummary":"Retrieved 5 years of Apple annual income statements showing revenue growth from $274B to $394B"
}
{"type":"thinking","content":"Data looks consistent, ready to compare..."}
对金融这种不允许出错的场景,完整的调用链路可审计是刚需。
七、快速上手
7.1 安装前提
| 依赖 | 说明 | 是否必须 |
|---|---|---|
| Bun v1.0+ | 高性能 JS 运行时 | ✅ 必须 |
| OpenAI API Key | 大脑来源(也可用 Claude/Gemini) | ✅ 必须 |
| Financial Datasets API Key | 金融数据源,主流美股免费 | ✅ 必须 |
| Exa API Key | Web 搜索补充 | 可选 |
| Ollama | 本地模型接入 | 可选 |
7.2 安装步骤
go
# 1. 克隆仓库
git clone https://github.com/virattt/dexter.git
cd dexter
# 2. 安装依赖(用 Bun,比 npm 快得多)
bun install
# 3. 配置 API Key
cp env.example .env
# 编辑 .env,填入:
# OPENAI_API_KEY=your-openai-api-key
# FINANCIAL_DATASETS_API_KEY=your-key
# EXASEARCH_API_KEY=your-exa-key(可选)
7.3 启动运行
go
bun start # 交互模式
bun dev # 开发模式(自动刷新)
7.4 评估测试
go
bun run src/evals/run.ts # 全量测试
bun run src/evals/run.ts --sample 10 # 随机抽 10 题评测
7.5 WhatsApp 接入
go
bun run gateway:login # 扫码绑定 WhatsApp
bun run gateway # 启动网关
绑定后,打开 WhatsApp 给自己发消息,Dexter 秒回分析结果。
八、支持的 LLM 模型
| 模型提供商 | 环境变量 | 推荐场景 |
|---|---|---|
| OpenAI(GPT-4o 等) | OPENAI_API_KEY |
默认推荐,效果最稳定 |
| Anthropic Claude | ANTHROPIC_API_KEY |
长文本分析能力强 |
| Google Gemini | GOOGLE_API_KEY |
多模态场景 |
| xAI Grok | XAI_API_KEY |
可选替代 |
| OpenRouter(聚合) | OPENROUTER_API_KEY |
灵活切换多种模型 |
| Ollama(本地模型) | OLLAMA_BASE_URL |
隐私优先/离线场景 |
九、博主实测:在 A 股 & 港股上的真实使用效果

以下案例来自多位博主和社区用户的真实测试分享,展示 Dexter 在中国股票市场的实际应用场景。
9.1 局限性说明(先看懂再用)
⚠️ 重要提示:Dexter 默认数据源 Financial Datasets API 主要覆盖美股上市公司(AAPL、NVDA 等)。对于 A 股和港股,需要额外配置数据源或使用 Web 搜索功能来获取数据。
针对 A 股 / 港股的使用方式主要有两种:
-
Web 搜索模式:开启 Exa/Tavily 搜索,Dexter 会主动联网抓取财报数据、新闻和公告
-
自定义数据源:由于代码开源,开发者可以接入 AKShare、东方财富 API 等 A 股数据源
9.2 实测场景一:港股上市公司财报分析
用户提问 :Analyze the financial performance of Tencent (00700.HK) over the past 3 years
Dexter 执行过程(通过 Scratchpad 日志还原):
go
[规划] 拆解为 4 个子任务:
Task 1: 搜索腾讯最新年报数据
Task 2: 获取营收/净利润/毛利率趋势
Task 3: 对比行业竞品(阿里/百度)
Task 4: 评估现金流健康度
[执行] 调用 Web 搜索(Exa)...
→ 搜索 "Tencent 00700 2024 annual revenue earnings"
→ 搜索 "Tencent financial statements 2022 2023 2024"
[验证] 数据交叉验证通过 ✓
[输出] 腾讯三年财务表现分析:
- 营收:2022年5545亿→2023年6090亿→2024年6603亿,CAGR约9%
- 毛利率从44%提升至53%,成本管控显著改善
- 游戏业务复苏 + 广告收入高增是主要驱动力
用户评价(CSDN 博主反馈):
"港股的英文财报数据质量比 A 股好很多,Dexter 用 Web 搜索拿到的数据基本准确,但需要注意有时会把 IFRS 准则下的数据和管理层口径混淆,需要人工复核关键数字。"
9.3 实测场景二:A 股白酒板块比较分析
用户提问 :比较茅台、五粮液、泸州老窖近三年的ROE和净利润增长,哪个更值得持有?
Dexter 执行过程:
go
[规划]
Task 1: 搜索贵州茅台(600519)财务数据
Task 2: 搜索五粮液(000858)财务数据
Task 3: 搜索泸州老窖(000568)财务数据
Task 4: 计算ROE对比 + 净利润增速
Task 5: 综合评估
[执行] 通过 Web 搜索抓取三家公司近三年财报摘要...
[验证] 部分数据需二次确认(A股季报格式不统一)...
[输出] 白酒三巨头财务对比:
茅台:ROE ~30%,净利润CAGR ~15%,高壁垒但估值最高
五粮液:ROE ~25%,净利润CAGR ~12%,渠道改革成效显现
泸州老窖:ROE ~28%,净利润CAGR ~18%,增速最快
综合来看,泸州老窖增长弹性更大,但风险也相对高;
茅台确定性最强,适合长持;五粮液性价比居中。
社区用户补充(来自 CSDN 金融智能体专题):
"A 股的数据质量是 Dexter 的短板,建议结合 AKShare 或者东方财富接口自己接数据,效果提升非常明显。核心价值在于它的分析框架和自我验证逻辑,而不是数据获取本身。"
9.4 实测场景三:港股 AH 股溢价分析
用户提问 :分析工商银行 A 股(601398)和 H 股(01398.HK)的溢价情况,现在哪边更值得买?
Dexter 执行思路:
go
[规划]
Task 1: 获取 A/H 两地当前股价
Task 2: 计算实时 AH 溢价率
Task 3: 对比历史溢价区间(过去5年)
Task 4: 分析溢价驱动因素(汇率/流动性/政策)
Task 5: 给出配置建议
[关键发现]
AH 溢价率(A/H Premium)当前约 25-30%
历史区间:15%~45%
当前处于历史中位数偏低水平
H 股相对 A 股打折 → H 股胜出
但需考虑:港股流动性低 + 汇率风险(港元/人民币)
用户体验反馈:
"这个场景 Dexter 发挥得不错,因为汇率和股价数据都有实时 API 可以获取。AH 溢价分析本来是很繁琐的计算,它几分钟就搞定了,逻辑链也很清晰。"
9.5 A 股/港股使用最佳实践
| 建议 | 说明 |
|---|---|
| 开启 Web 搜索 | 配置 Exa API,让 Dexter 联网抓取财报 |
| 问英文 | 港股/中概股英文财报数据质量更好 |
| 结合 AKShare | 开发者可自行接入 AKShare 获取 A 股数据 |
| 验证关键数字 | AI 获取的财报数字务必与原始财报交叉验证 |
| 专注分析框架 | Dexter 最大价值是分析思路,而非数据获取 |
⚠️ 免责声明:Dexter 提供的所有分析仅供参考,不构成投资建议。A 股/港股投资有风险,入市需谨慎。
很多人看到 Dexter 的第一个问题是:"它支持 A 股吗?"
坦率说:原生数据源主要覆盖美股,但这不妨碍它在 A 股 / 港股场景里发挥价值。通过开启 Web 搜索功能(Exa/Tavily),或者自行接入国内数据接口(AKShare、同花顺 API 等),Dexter 的分析框架完全可以复用到中国股票市场。
下面是来自多位博主和社区用户的真实测试案例,展示具体使用场景和效果反馈。
十、谁该用 Dexter?
| 用户群体 | 核心使用场景 |
|---|---|
| 💼 金融分析师 / 券商研究员 | 财报季批量分析、同业对比、快速建模 |
| 📈 个人投资者 | 不想被研报割韭菜,自己做独立判断 |
| 🎓 金融/商科学生 | 作业数据、论文案例、实习前备课 |
| 🧑💼 产品 / 战略同学 | 快速了解竞品公司财务健康状况 |
| 🧑💻 AI 开发者 | 学习 Agent 架构、金融 RAG 实践 |
从技术架构到实际使用场景,Dexter 的设计门槛比想象中低,但价值远超预期。以下是不同背景用户最适合的切入场景。
十一、项目亮点总结
-
✅ 开源 MIT 协议:代码全公开,商用随便改,有 Discord 社区讨论
-
✅ 架构极清晰 :TypeScript 模块化,
src/agent/、src/tools/、src/components/职责分明 -
✅ 全程可追溯:Scratchpad JSONL 日志让每步推理都有据可查
-
✅ 多端接入:终端 TUI + WhatsApp,场景全覆盖
-
✅ 轻量快启:基于 Bun 运行时,冷启动远快于 Node.js
-
✅ 多 LLM 支持:OpenAI / Claude / Gemini / Ollama 灵活切换
-
❗ A 股数据是短板:需自行接入国内数据源(AKShare/东方财富)
如果你也被"今晚要出三家公司对比分析"折磨过,不妨去 github.com/virattt/dexter[4] 点个 Star,克隆下来跑一跑。
AI 不会取代分析师,但会用 AI 的分析师一定会取代不会用的。
引用链接
1\]undefined: *https://github.com/virattt/dexter* \[2\]*https://github.com/virattt/dexter* \[3\]financialdatasets.ai: *https://financialdatasets.ai* \[4\]github.com/virattt/dexter: *https://github.com/virattt/dexter*