OpenBB 金融数据平台
2026/8/31大约 6 分钟项目实例开源金融数据A股AI
一、项目简介
OpenBB 是一个开源金融数据平台,核心理念为「一次连接,随处使用」——整合任何数据源,通过统一 API 提供给多种应用场景。本项目在开源 OpenBB 框架基础上进行了深度本地化改造,使其适配中国 A 股市场,并部署为线上服务。
在线访问
本地化特色
- 上游框架主要面向国际市场,本项目通过本地化方案补齐中国 A 股数据缺口
- 全部行情数据本地存储、本地读取,不依赖外部数据源,服务稳定可控
二、核心能力
| 能力域 | 说明 |
|---|---|
| 数据获取 | 股票、加密货币、宏观经济、期货/期权、ETF/指数、新闻资讯 |
| 数据分析 | 技术指标(SMA/EMA/RSI/MACD/BOLL 等)、财务指标(P/E、P/B、ROE、DCF)、量化回测、投资组合优化、风险收益分析 |
| AI 集成 | LangChain 工具函数、MCP 服务器支持 |
| 多端访问 | Python API、REST API、Jupyter Notebook、Excel 插件、CLI |
| 可视化 | K 线图、技术指标图、交互式仪表板 |
三、中国 A 股本地化
- 全量本地行情:收录沪市 2,348 只、深市 2,951 只,合计 5,299 只股票的本地历史行情,支持日 K 与分钟 K 线
- 股票代码自动补全:输入前缀即弹出候选,支持键盘导航,候选数可配置
- 交易所自动检测:按代码前缀自动识别沪市(600/601/603/605/688/689)与深市(000/001/002/003/300/301)
- 技术指标计算:基于本地数据完成常用技术指标与可视化
- 在线数据看板:提供数据看板、动量策略、投资组合优化(支持 2~10 只股票跨市场组合)与个股查询等页面
四、上线时间与稳定性
线上站点自部署以来长期稳定运行:当前服务器已连续运行 106 天 21 小时,核心服务零重启,历史最佳纪录为 154 天 连续运行。
4.1 关键稳定性指标(2026-08-31 实测)
| 指标 | 数值 |
|---|---|
| 服务器连续运行 | 106 天 21 小时 |
| 核心服务重启次数 | 0 次 |
| 站点全链路可用性 | 首页 / 数据看板 / 看板直连全部 200 |
| 系统负载 | 极低(load average ≈ 0.1) |
| 安全补丁 | 近半年 4 个高危 CVE 全部修复 |
| 综合评级 | 稳定(A-) |
4.2 历史故障与复盘
- 2026-05-16 数据看板 502 故障:服务器重启后看板服务未自动拉起,已修复并落实开机自启托管。该故障至今 106 天未复发。
- 经验沉淀:手动拉起进程只能临时恢复,自动化托管才真正解决「重启即挂」问题。
4.3 安全加固
| 漏洞 | 当前状态 |
|---|---|
| NGINX Rift(CVE-2026-42945) | ✅ 已升级至 1.30.1,免疫 |
| Copy Fail(CVE-2026-31431) | ✅ 已升级内核 6.1.172-1 |
| Dirty Frag 系列(CVE-2026-43284/43500) | ✅ 已升级内核 6.1.172-1 |
4.4 当前主要风险
磁盘使用率 97% 为当前主要短板(属容量问题而非稳定性问题),清理旧日志与历史备份后即可维持长期稳定运行。
五、系统运行时架构
5.1 架构来源
以下架构信息由 Archify 基于项目真实部署结构分析生成,每个模块均对应实际运行的组件,图与部署之间具备明确映射关系,可解释、可验证。
- 完整交互式架构图(Archify HTML 成品):打开架构图
交互式架构图说明
打开上方链接可查看完整的交互式架构图,支持节点搜索、路线追踪、语义视图、主题切换、缩放平移与演示播放等能力。
5.2 架构总览
5.3 核心组件
| 组件 | 类型 | 职责 |
|---|---|---|
| 浏览器 / 前端 | 外部 | Streamlit Web 界面 |
| Streamlit 前端 | 前端 | 页面 + 布局 |
| FastAPI 平台 API | 后端 | REST + 命令执行器 |
| 市场数据服务 | 后端 | 股票 / 加密货币扩展 |
| 数据同步服务 | 后端 | 提供方接口 + 拉取 |
| 上游数据源 | 外部 | 数据提供方 / GitHub 数据流 |
| 本地数据与快照 | 数据库 | 配置 + 本地缓存 |
| 调度器 / 定时任务 | 后端 | 自动刷新 |
5.4 数据流与连接
| 连接 | 方向 | 说明 |
|---|---|---|
| HTTPS | 浏览器 / 前端 → Streamlit 前端 | 用户访问入口 |
| REST API | Streamlit 前端 → FastAPI 平台 API | 前端调用后端接口 |
| 数据请求 | FastAPI 平台 API → 市场数据服务 | 发起数据请求 |
| 快照 | 市场数据服务 → 本地数据与快照 | 写入快照 |
| 触发同步 | FastAPI 平台 API → 数据同步服务 | 触发数据同步 |
| 拉取行情数据 | 数据同步服务 → 上游数据源 | 拉取上游行情数据 |
| 上游数据流 | 上游数据源 → 本地数据与快照 | 上游数据流入本地 |
| 心跳 | 调度器 → FastAPI 平台 API | 周期性健康探测 |
| 行情检查 | 调度器 → 市场数据服务 | 周期性行情检查 |
5.5 三大运行视角
用户入口
- Streamlit 页面通过 HTTPS 提供交互式界面。
- 请求到达 FastAPI 平台 API 与命令执行器。
数据路径
- 提供方层从上游数据源拉取行情数据。
- 结果以快照形式缓存在本地,实现快速读取。
自动化
- 定时任务触发同步与行情检查。
- 同步保持本地快照与上游数据流一致。
架构图包含两个视图:主运行时流程(面向用户的请求流经 Streamlit 界面、FastAPI 平台 API、行情数据提供方与本地快照)与数据同步路径(上游数据经提供方层流入本地快照,由定时自动化驱动)。
六、安全与合规
- 开源合规:遵循上游项目 AGPLv3 许可证
- 数据本地化:行情数据全部本地存储,敏感数据不出服务器
- 安全及时:近半年披露的重大安全漏洞均已当日排查并完成修复
- 可审计性:完整运维日志记录,支持事后追溯
本文档为 OpenBB 项目的公开介绍,聚焦功能、稳定性表现与系统架构。具体实现细节与内部调优参数属于内部研究资料,不在此展示。
