longportapp/openapi

分类Database
作者Community
星标628
定价Free

简介

LongPort OpenAPI 是一款将实时金融数据与交易能力引入 AI 工作流的 MCP 服务。它打破了 LLM 无法获取实时股市行情和执行交易的限制,让开发者能直接在支持 MCP 的客户端(如 Claude Desktop)中,通过自然语言查询股票走势、分析市场数据甚至下单交易。对于量化交易爱好者或金融从业者来说,它将 AI 从简单的“聊天机器人”变成了具备实操能力的“投资助手”,上手门槛低,无需编写复杂的 API 胶水代码即可实现数据联动。

核心亮点

  • 实时获取全球股市行情,消除 AI 知识滞后
  • 支持自然语言驱动的股票分析与交易执行
  • 无需重复开发,快速集成至 MCP 兼容客户端
  • 打通金融数据库与 LLM 的实时交互链路

完整文档

Longport OpenAPI SDK

![](https://crates.io/crates/longport) ![PyPI version](https://badge.fury.io/py/longport) ![npm version](https://badge.fury.io/js/longport) ![Maven Central](https://search.maven.org/artifact/io.github.longportapp/openapi-sdk)

Longport OpenAPI 为具备研发能力的投资者提供程序化行情交易接口,帮助其基于自身的投资策略构建交易或行情策略分析工具。其功能分为以下几类:

  • Trading - 创建、修改、撤单,查询当日/历史订单及成交详情等。
  • Quotes - 实时行情、获取历史行情等。
  • Portfolio - 实时查询账户资产、持仓、资金。
  • Real-time subscription - 提供实时行情及订单状态变更的推送通知。

本仓库包含以下主要组件:| 名称 | 文档 | 描述 |
|-----------------------------|-----------------------------------------------------------------------|---------------------------------------------------|
| Rust | Doc | Longport OpenAPI for Rust (>= 1.89.0) |
| Python | Doc | Longport OpenAPI for Python 3 (>= 3.8) |
| Node.js | Doc | Longport OpenAPI for Node.js (>= 10) |
| Java | Doc | Longport OpenAPI for Java (>= 11) |
| C | Doc | Longport OpenAPI for C (>= C99) |
| C++ | Doc | Longport OpenAPI for C++(>= C++17) |
| Go | | https://github.com/longportapp/openapi-go |
| MCP | | Longport OpenAPI 的 MCP server 实现 |## Context 类型

| Context | 描述 |
|---------|-------------|
| QuoteContext | 实时行情、K 线、期权、认股证、自选股、推送订阅 |
| TradeContext | 订单、持仓、账户余额、成交记录、资金流水 |
| AssetContext | 账户对账单下载 |
| ContentContext | 新闻、社区话题 |
| FundamentalContext | 财务报告、分析师评级、分红、估值、公司概况、股东信息 |
| MarketContext | 市场状态、券商持仓、A/H 溢价、交易统计、异动提醒、指数成分股 |
| CalendarContext | 财经日历(业绩、分红、拆股、IPO、宏观数据、休市时间) |
| PortfolioContext | 汇率、组合盈亏分析 |
| AlertContext | 价格提醒管理(添加/启用/禁用/删除) |
| DCAContext | 定投计划管理 |
| SharelistContext | 社区分享列表管理 |

快速上手

从上表中选择一个语言 SDK,并参考其 README 进行安装和发送首次请求。完整参考文档:https://longportapp.github.io/openapi

SDK 文档

https://longportapp.github.io/openapi

故障排查- 环境变量未生效

- macOS/Linux:export ... 仅对当前 shell 会话生效。 - Windows:setx ... 需要打开新的终端/会话才能生效。
  • 认证错误 (401/403)
- 验证 LONGPORT_APP_KEYLONGPORT_APP_SECRETLONGPORT_ACCESS_TOKEN 是否正确且未过期。 - 确保你的 OpenAPI 应用具有所需的权限。
  • 网络/连接错误
- 检查 HTTPS/WSS 的防火墙/代理规则。 - 如果使用自定义端点,请设置 LONGPORT_HTTP_URLLONGPORT_QUOTE_WS_URLLONGPORT_TRADE_WS_URL
  • 行情订阅立即退出
- 保持进程运行(事件循环 / sleep / 阻塞接收循环),否则无法看到推送事件。
  • 调试
- 通过 LONGPORT_LOG_PATH 启用日志。 - 如果行情已连接但内容为空,请设置 LONGPORT_PRINT_QUOTE_PACKAGES=true 以确认已打开的行情包。

最小化验证

如果你不确定环境/凭据是否正确,请从内置的 HTTP 客户端示例开始。

  • Python:
    bash
    python examples/python/http_client.py
    - Node.js:
    bash
    node examples/nodejs/http_client.js
    - Rust:
    bash
    cargo run --manifest-path examples/rust/Cargo.toml -p http_client
    - Java(来自 example 模块目录):
    bash
    cd examples/java/http_client
mvn -q -DskipTests package mvn -q -DskipTests exec:java
- C/C++: - 使用 examples/c/http_client/main.cexamples/cpp/http_client/main.cpp 中的源码。 - 构建指令取决于您的工具链;请参阅相应语言 SDK 的 README。

预期结果:

  • 如果凭据有效且网络可达,HTTP 调用将返回 JSON。
  • 如果返回 401/403,请检查您的 LONGPORT_APP_KEYLONGPORT_APP_SECRETLONGPORT_ACCESS_TOKEN
  • 如果超时或无法连接,请检查代理/防火墙以及您的 endpoint 环境变量。

Resources

License

根据以下任一协议授权:

  • Apache License, Version 2.0 (LICENSE-APACHE 或 http://www.apache.org/licenses/LICENSE-2.0)
  • MIT license (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
查看官方来源