工具包扩展
OpenBB 工具包扩展通过用于操作数据和准备显示的函数来扩展平台。核心平台安装不会安装任何工具包扩展。下表是当前工具包扩展列表。
扩展名称 | 描述 | 安装命令 | 核心/社区 | 路由器路径 |
---|---|---|---|---|
openbb-charting | REST API 图表服务和 Plotly 库。 | pip install openbb-charting | 社区 | N/A |
openbb-devtools | 聚合有助于 OpenBB 良好开发体验的依赖项。 | pip install openbb-devtools | N/A | |
openbb-econometrics | 仅适用于 Python 接口的计量经济学模型。 | pip install openbb-econometrics | 社区 | obb.econometrics |
openbb-mcp-server | 将 OpenBB API 作为 MCP 服务器运行。 | pip install openbb-mcp-server | 社区 | N/A |
openbb-quantitative | 用于执行量化分析的函数。 | pip install openbb-quantitative | 社区 | obb.quantitative |
openbb-technical | 用于执行技术分析的函数。 | pip install openbb-technical | 社区 | obb.technical |
以下部分概述了扩展的任何特定安装注意事项。
图表扩展
pip install openbb-charting
OpenBB 图表扩展为 OpenBB 平台提供图表基础设施和服务。图形对象通过 REST API 或 Python 客户端提供。它利用 PyWry 在单独窗口中处理交互式图表和表格的显示,使用 Plotly 库。
具有专用视图的函数将图形返回到 OBBject
响应对象的 chart
属性。它们通过类方法 show()
显示。
openbb-charting
是一个 OBBject
扩展,这意味着通用功能在每个命令结果中都会暴露。
以下包是 openbb-charting
扩展的依赖项:
- scipy
- plotly
- statsmodels
- reportlab
- pywry
- svglib
- nbformat
- pandas-ta
有关更多信息,请查看 openbb-charting 扩展的文档。
开发工具
pip install openbb-devtools
请参考以下 PyPI 分发的包。
这个 Python 包 openbb-devtools
是为 OpenBB 平台开发者设计的,包含了对强大高效软件开发至关重要的一系列依赖项。
这些依赖项涵盖了代码格式化、安全分析、类型检查、测试和内核管理等各个方面。
包含这些包确保了开发过程的简化、代码质量的维护以及软件的安全性和可靠性。
包含的依赖项:
ruff
: 专注于性能和简洁性的快速 Python linter。pylint
: 检查 Python 代码错误、强制编码标准并查找代码异味的工具。mypy
: Python 的静态类型检查器,有助于在开发过程中捕获类型错误。pydocstyle
: Python 文档字符串的 linter,确保它们符合某些样式要求。black
: 不妥协的 Python 代码格式化程序,确保一致的代码样式。bandit
: 旨在查找 Python 代码中常见安全问题的工具。pre-commit
: 管理和维护在每次提交前运行检查的预提交钩子,确保代码质量。nox
: 用于在隔离环境中运行测试的通用虚拟环境管理和测试命令行工具。pytest
: 成熟的全功能 Python 测试工具,有助于编写更好的程序。pytest-cov
: pytest 的插件,在测试期间测量代码覆盖率。ipykernel
: 为 Jupyter 提供 IPython 内核的包。types-python-dateutil
: python-dateutil 的类型存根,有助于静态类型检查。types-toml
: TOML 的类型存根,对 TOML 解析中的静态类型检查很有用。poetry
: Python 中依赖管理和打包的工具。
每个依赖项在确保代码清洁、高效和功能方面都发挥着关键作用,最终导致高质量软件的开发。
在为 OpenBB 平台开发代码时,应该始终安装 DevTools 包,以便上述开发工具开箱即用。
使用 openbb_platform/dev_install.py
脚本设置环境时,DevTools 也会被安装。
计量经济学
pip install openbb-econometrics
openbb-econometrics
扩展安装新的路由器路径(obb.econometrics
)和额外的 Python 库:
- scipy
- statsmodels
- arch
- linearmodels
Statsmodels 需要系统上存在 C 编译器。请按照此处的说明了解特定系统的方法。
此扩展无法通过 REST API 访问,因为 statsmodels
不可序列化。
要以可编辑模式从源代码安装,请导航到文件夹 ~/openbb_platform/extensions/econometrics
并输入:
pip install -e .
安装后,Python 接口将在初始化时自动重建。
MCP 服务器
此扩展实现了 FastMCP 库。它将所有 GET 请求包装为可被支持 MCP 服务器的 AI 模型使用的工具。
pip install openbb-mcp-server
通过打开终端、激活环境并运行以下命令来启动服务器:
openbb-mcp
这将在 localhost 上启动服务器,使用端口 8001,以 streamable-http 作为传输方式。
使用 --transport
标志并设置:
- sse
- stdio
- http(默认)
有关详细信息和说明,请参阅扩展的 README。
量化分析
pip install openbb-quantitative
openbb-quantitative
扩展安装新的路由器路径(obb.quantitative
)和一些额外的 Python 库:
- pandas-ta
- scipy
- statsmodels
要以可编辑模式从源代码安装,请导航到文件夹 ~/openbb_platform/extensions/quantitative
并输入:
pip install -e .
安装后,Python 接口将在初始化时自动重建。
技术分析
pip install openbb-technical
openbb-technical
扩展用于对时间序列数据执行技术分析。它安装新的路由器路径(obb.technical
)和一些额外的 Python 库:
- pandas-ta
- scikit-learn
- scipy
- statsmodels
要以可编辑模式从源代码安装,请导航到文件夹 ~/openbb_platform/extensions/technical
并输入:
pip install -e .
安装后,Python 接口将在初始化时自动重建。