跳到主要内容

工具包扩展

OpenBB 工具包扩展通过用于操作数据和准备显示的函数来扩展平台。核心平台安装不会安装任何工具包扩展。下表是当前工具包扩展列表。

扩展名称描述安装命令核心/社区路由器路径
openbb-chartingREST API 图表服务和 Plotly 库。pip install openbb-charting社区N/A
openbb-devtools聚合有助于 OpenBB 良好开发体验的依赖项。pip install openbb-devtoolsN/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 接口将在初始化时自动重建。