OpenBB实战:从安装到一键生成贵州茅台八张投研图表
一、需求引入:OpenBB 很强,但"强"和"好用"之间差了多少?
OpenBB 是 GitHub 上最受关注的开源投研平台之一,前身是大名鼎鼎的 Gamestonk Terminal。它把 Bloomberg 终端级别的数据分析能力搬到了命令行里——基本面、技术面、宏观经济、另类数据,一个平台全搞定,而且完全免费。
但问题也很明显:
- 命令行操作门槛高:想看茅台的 K 线?你得敲
stocks/load 600519/candle。想看 PE 走势?再敲一组命令。每个分析动作都是一条 CLI 指令,学习成本不低 - 原生不会自动画图:数据能拉下来,但图表需要手动在 Jupyter 里写 Matplotlib 代码渲染——相当于拿到了一堆砖头,但房子得自己盖
- 换股票要重来一遍:看完茅台想看五粮液,所有命令重新敲。看完五粮液想看泸州老窖,再来一遍。做一次白酒板块多股对比,光是敲命令就敲到怀疑人生
- 数据整合靠人工:K 线是一个命令、财务是另一个命令、估值又是一个命令——八张图要跑八组不同的命令,输出散落在不同地方,没人帮你汇总
如果把 OpenBB 变成一个 Skill——输入"分析贵州茅台",自动跑完八组分析、渲染出八张图表、一次性打包输出——会是什么体验?本文完整记录了用 EasyClaw 将 OpenBB 转化为一键式投研分析 Skill 的真实过程,并展示最终产出的八张图表。
二、成果展示:从 GitHub 代码到一键产出八张图表
2.1 阶段一:一句话拉取 OpenBB → 分析代码 → 加入图表能力 → 转化为 Skill
以下是一次真实的操作记录。整个过程分为两个阶段:先用一条提示词让 EasyClaw 拉取 OpenBB 代码、分析结构、额外加入图表自动渲染能力、然后封装为 Skill;再用一条提示词调用 Skill 一键输出八张分析图表。
第一条提示词——拉取代码、加入图表能力、创建 Skill:
我在 EasyClaw 中输入的:
"从 GitHub 拉取 OpenBB 项目(https://github.com/OpenBB-finance/OpenBB),自动分析项目结构和核心模块——重点识别 stocks 模块下的 K 线数据加载、技术指标计算、财务数据提取、估值分析、大盘对比和板块相关性分析等功能。分析完成后,做一件事:在原版 OpenBB 的基础上加入 Matplotlib 图表自动渲染能力——让每个分析模块的输出不是原始数据,而是直接渲染为 PNG 格式的可视化图表。然后将整套框架封装为一个 EasyClaw Skill,暴露股票代码作为输入参数,Skill 内部自动完成数据拉取、指标计算、图表渲染和文件输出。"
EasyClaw 收到这条指令后自动执行:
- 拉取代码:自动 clone OpenBB 仓库到本地,扫描项目目录和模块结构
- 分析代码逻辑:Skill Creator 读取 stocks 模块下的 candle、technical、fundamental、valuation、comparison 等子模块,识别每个功能的调用链路和输入输出
- 加入图表渲染能力(关键步骤):原版 OpenBB 只返回数据,不自动画图。EasyClaw 在 Skill 转化过程中,为每个分析模块自动注入 Matplotlib 渲染层——K 线用 mplfinance 绑定、财务趋势用折线图、PE 分布用箱线图、相关性用热力图。图表样式统一预设(中文标题、深色主题、适当标注),用户无需写一行绘图代码
- 创建 Skill:封装为"OpenBB 投研分析"Skill,股票代码作为输入,自动串联八组分析并输出八张 PNG 图表
全过程约 5 分钟,全程无需手动 pip install、无需手动写 Matplotlib 代码、无需逐个敲 OpenBB CLI 命令。

2.2 阶段二:一句话调用 Skill → 八张图表一次性输出
Skill 创建完成后,分析贵州茅台只需输入一条指令:
第二条提示词——调用 Skill:
我在 EasyClaw 中输入的:
"用 OpenBB 分析贵州茅台(600519),时间范围 2025 年至今,输出完整的八张分析图表:日 K 线图、价格表现、技术指标、财务数据、估值分析、资产负债表、大盘对比、白酒板块相关性。"
Skill 内部自动调用 OpenBB 各模块拉取数据、渲染图表,约 5 分钟后一次性输出以下八张图:
| # | 图表 | 内容 |
|---|---|---|
| 图 1 | 日 K 线图 |
|
| 图 2 | 价格表现 |
|
| 图 3 | 技术指标 |
|
| 图 4 | 财务数据 |
|
| 图 5 | 估值分析 |
|
| 图 6 | 资产负债表 |
|
| 图 7 | 大盘对比 |
|
| 图 8 | 板块相关性 |
|
2.3 传统方式 vs EasyClaw 两条提示词
| 环节 | 传统方式 | EasyClaw 两条提示词 |
|---|---|---|
| 环境配置 | 手动安装 Python + OpenBB + 十几个依赖,约 30-60 分钟 | 提示词①自动完成(初始约 5 分钟,后续 0) |
| 图表渲染能力 | 原版 OpenBB 不提供。需手动写 Matplotlib 代码,每张图约 20-30 行,八张图约 160-240 行代码 | 提示词①自动注入渲染层,零代码 |
| 单只股票八张图 | 敲八组 CLI 命令 → 获取八组数据 → 手动写八段绘图代码 → 逐个渲染,约 40-60 分钟 | 提示词②一句话,约 5 分钟 |
| 换股分析 | 所有命令和代码重新跑一遍,约 40-60 分钟 | 只需重复提示词②,改股票名称 |
| 首次总耗时 | 约 70-120 分钟 | 约 10 分钟(两条提示词) |
| 后续分析单只股票 | 约 40-60 分钟 | 约 5 分钟(仅提示词②) |
三、工作流解析:从 GitHub 代码到八张图表的完整链路
3.1 核心流程
┌──────────────────────────────────────────────────────┐
│ 提示词①:拉取 OpenBB → 分析代码 → 注入图表能力 → 创建 Skill │
│ │
│ GitHub clone → 扫描 stocks/ 模块结构 │
│ │ │
│ ▼ │
│ 识别 8 个分析子模块(K线/价格/技术/财务/估值/ │
│ 资产负债/大盘对比/板块相关性) │
│ │ │
│ ▼ │
│ ⭐ 关键步骤:注入 Matplotlib 图表渲染层 │
│ · mplfinance → K 线 + 均线 + 成交量 │
│ · matplotlib → 折线图/直方图/箱线图/热力图 │
│ · 统一风格:中文标题、深色主题、适当标注 │
│ │ │
│ ▼ │
│ 封装为「OpenBB 投研分析」Skill │
│ 参数:股票代码 | 输出:8 张 PNG 图表 │
└──────────────────────┬───────────────────────────────┘
▼
┌──────────────────────────────────────────────────────┐
│ 提示词②:调用 Skill 分析贵州茅台 │
│ │
│ "分析贵州茅台(600519),2025年至今,输出八张图表" │
│ │ │
│ ▼ │
│ Skill 自动执行 8 组分析 → 渲染 8 张 PNG → 一次性输出 │
└──────────────────────────────────────────────────────┘
3.2 关键创新点:原版 OpenBB 没有的图表渲染能力
原版 OpenBB 是一个"数据引擎"——它能拉数据、能算指标,但输出的是数字和 DataFrame,不会自动画图。这也是很多开源投研工具的共同短板:数据和可视化之间还需要使用者自己写代码来衔接。
在将 OpenBB 转化为 EasyClaw Skill 的过程中,最关键的一步就是在提示词①中明确要求加入图表渲染能力。EasyClaw 的 Skill Creator 在分析完代码逻辑后,自动为每个分析模块匹配了最合适的可视化方案:
- K 线数据 → mplfinance 绑定,自动渲染为 OHLC 蜡烛图 + 均线叠加 + 成交量副图
- 时序数据(价格/财务/估值)→ Matplotlib 折线图 + 关键数值标注
- 分布数据(收益率/PE 分位)→ 直方图 + 箱线图
- 多标的对比数据 → 标准化累计收益曲线 + 相对强弱线
- 相关性矩阵 → Seaborn 热力图
这一步不是"写了个脚本",而是把可视化逻辑内嵌到了 Skill 的执行流程中——用户输入股票代码,Skill 内部自动完成"拉数据→算指标→选图表类型→渲染→保存 PNG"的全流程。整个过程使用者不需要写一行 Matplotlib 代码,甚至不需要知道 mplfinance 是什么。
四、核心实现
4.1 提示词①的编写要点
将 OpenBB 转化为带图表能力的 Skill,提示词①需要包含三个关键层次:
| 层次 | 作用 | 提示词中的体现 |
|---|---|---|
| 代码定位 | 告诉 EasyClaw 从哪里拉代码、重点关注哪些模块 | "拉取 OpenBB 项目……重点识别 stocks 模块下的 K 线、技术指标、财务、估值、大盘对比、板块相关性" |
| 能力增强 | 在原版代码基础上额外加入缺失的能力 | "在输出中加入 Matplotlib 图表自动渲染能力——让每个分析模块的输出不是原始数据,而是直接渲染为 PNG 图表" |
| 封装定义 | 定义 Skill 的输入输出边界 | "封装为 Skill,暴露股票代码作为输入,自动完成数据拉取、图表渲染和文件输出" |
这三个层次缺一不可——如果只拉代码不增强能力,OpenBB 只会返回数据表;如果只增强能力不定好封装边界,Skill 的输入输出就不清晰。
4.2 提示词②的调用方式
Skill 创建完成后,分析任意股票时只需提示词②——"用 OpenBB 分析 [股票名称]([代码]),输出八张图表"。分析自定义股票池时:
用 OpenBB 依次分析贵州茅台(600519)、五粮液(000858)、泸州老窖(000568)、山西汾酒(600809)、洋河股份(002304),每只股票输出八张图表,最后追加一张五只股票的横向对比图。
EasyClaw 的 OpenBB Skill 会自动循环执行五只股票的分析流程,全部完成后打包输出。
4.3 EasyClaw 在全流程中的作用
EasyClaw 在这套工作流中不仅做了"代码翻译",更做了一件原版 OpenBB 自己没做的事——补齐了数据到可视化之间的最后一步。从 GitHub 拉代码、分析数十个模块结构、为每个模块匹配合适的图表类型、封装为一键式 Skill——全程在 EasyClaw 内部闭环完成。
EasyClaw 下载:https://easyclaw.cn/?f=684
五、总结与扩展
5.1 方案核心优势
- 补齐开源工具的最后一步:OpenBB 拉数据很强但不会画图,Skill 转化过程中自动注入可视化能力,把"数据引擎"升级为"分析报告引擎"
- 从 CLI 到自然语言:不用记 OpenBB 的几十条命令,不用写 Matplotlib 代码,两句话走完全流程
- 一次创建,无限复用:Skill 创建后,分析一只股票还是十只股票都是一句话的事。白酒板块五只龙头横向对比,传统方式要半天,现在 25 分钟自动跑完
- 八张图覆盖投研全维度:K 线、风险收益、技术指标、财务质量、估值水位、资产负债、大盘 Alpha、板块联动——一个 Skill、八张图、一次输出
5.2 更多可扩展的方向
- 自定义图表组合:不同策略关注的图表不同——价值投资者可能只需要图 4-6(财务+估值+资产),趋势交易者可能只需要图 1-3(K 线+价格+技术)。Skill 支持按需选择图表子集
- 更多开源投研工具:FinGPT、Qlib、Backtrader、Zipline——只要 GitHub 上有,都可以用同一套"拉代码→分析→增强能力→封装 Skill"的方法做成 EasyClaw Skill
- 定时生成投研周报:设置每周五收盘后自动运行 Skill 分析自选股池,周一开盘前投研周报已经生成好了
一起聊聊
你用过 OpenBB 或者其他开源投研工具吗?在"数据拿到了"到"图表做出来了"之间卡过多久?有没有哪些开源量化项目你想用但一直没跑通?欢迎在评论区分享你的投研工具使用经验和踩坑记录。如果你手头有想跑的开源项目但不知道怎么落地为 Skill,也欢迎留言项目名称一起探讨。









浙公网安备 33010602011771号