QPro 本地 API 使用说明
概述
QPro 本地 API 用于把 QPro 内部的账户、持仓、委托、成交快照,以及实时行情和合约信息,以只读 HTTP 方式提供给本机程序。它适合解决越来越多的个性化监控和研究需求:用户不需要重新写一套交易程序,也不需要让外部程序接管交易信号,只要读取 QPro 已经准备好的数据,就可以让本地 Agent 或脚本完成更自由的数据探索、合约筛选和风控监控。
启用后,QPro 会同时提供三类服务:
数据类型 |
默认端口 |
主要接口 |
适用场景 |
|---|---|---|---|
账户数据 |
|
|
查询账户、持仓、委托和成交快照 |
实时行情 |
|
|
订阅单个合约的实时行情流 |
合约信息 |
|
|
筛选合约、查找期权和读取合约属性 |
账户数据服务可以查询 AccountSnap、PositionSnap、OrderSnap、TradeSnap 四张快照表。实时行情和合约信息接口见 实时行情与合约信息 API。
典型价值
传统交易软件很难覆盖所有个性化监控诉求。启用 QPro 本地 API 后,可以让 AI Agent 或本地脚本基于 QPro 的实时数据做下面这些事情:
按用户自己的品种分组、策略分组或业务分组做板块级盈亏统计。
按用户自己的风控规则组合账户、持仓、委托和成交数据,生成更个性化的提醒。
按交易所、品种、到期状态和夜盘条件筛选合约,并进一步查找对应期权。
按合约订阅实时行情,把价格、成交量或价差变化接入自定义监控。
把 QPro 实时数据接入自建网页、看板或大屏,做可视化程度更高的展现方案。
启用本地 API 接口
使用 QPro 本地 API 前,需要先在 QPro 中手工启用接口。进入 系统 -> 选项 -> 选项设置。
从 QPro 的 系统 菜单进入 选项设置。
在 账户持仓监控 中,把 启用本地 Api 接口 设置为 是。QPro 会提示重启;确认重启并重新登录后,三个本地服务才会生效。默认端口分别为:账户数据 8811、实时行情 8812、合约信息 8813。
三个端口必须在 1 至 65535 范围内并且互不重复。修改端口后也需要重启 QPro;如果端口无效或重复,QPro 会恢复为默认端口。
在 账户持仓监控 中启用本地 API 接口,并查看三个服务端口。
快速检查服务
重启并登录 QPro 后,可以在 PowerShell 中检查三个服务是否已启动:
Invoke-RestMethod http://127.0.0.1:8811/health
Invoke-RestMethod http://127.0.0.1:8812/health
Invoke-RestMethod http://127.0.0.1:8813/health
三个请求都应返回 {"ok": true}。如果修改过端口,请把示例中的端口替换为自己的配置。
推荐使用 QPro skill
更推荐用户把 QPro 提供的 skill 安装给自己的本地 Agent。这样 Agent 不只知道三个服务的地址,还能知道数据结构、字段含义、查询限制和实时行情的订阅方式,写出来的查询会更贴近 QPro 的真实数据模型。
使用方式:从 QPro 中复制 Skills
在 QPro 顶部菜单中点击 帮助 -> 复制 skills,按照复制出来的提示安装 QPro 安装目录 skills 下的技能。当前本地 API 对应的技能包括账户数据查询、实时行情订阅和合约信息查询。
QPro 帮助菜单中的 复制 skills 入口。
示例一:自定义板块级别的盈亏统计
用户可以让 Agent 按自己的业务口径定义板块,而不是只能按交易所、品种或固定页面分组。例如把多个品种归为“黑色”“有色”“贵金属”,再统计持仓盈亏、浮动盈亏、平仓盈亏和手续费。
自定义板块盈亏看板示意:把多个品种按用户自己的规则归到板块,并展示盈亏、手续费和保证金。
这类统计适合“我自己的板块定义”“我自己的策略桶”“某批账户合并看收益”这类需求。用户只需要说明板块口径,Agent 可以根据 QPro skill 中的账户表结构和查询规则生成对应查询,再按用户定义重新汇总。
示例二:更具个性化的风控通知
用户可以让 Agent 根据自己的规则组合多个表和多个条件,再触发本地弹窗、企业微信、飞书、短信或其他通知。例如:某些账户可用资金低于阈值、某些板块保证金过高、某些合约出现未完成委托时才提醒。
个性化风控通知示意:把账户、持仓、委托和成交状态组合成用户自己的提醒规则。
这类规则可以非常贴近用户自己的交易习惯:不同账户不同阈值、不同品种不同阈值、只在交易时段提醒、同一个异常在一定时间内只提醒一次。账户数据服务只提供只读查询,实际查询和通知逻辑由 Agent 或本地脚本完成。
示例三:可视化程度更高的展现方案
用户可以把 QPro 本地 API 作为实时数据源,接入自己熟悉的展示方式,例如 Streamlit、ECharts、Grafana、Jupyter Notebook 或内部网页。Agent 可以定时读取账户数据,并订阅实时行情,再把结果整理成更适合观察的视图,例如账户-板块热力图、保证金占用排行、盈亏瀑布图、持仓变化时间线。
可视化展现示意:把 QPro 实时快照接入自建看板,按用户自己的观察方式展示账户、板块、风险和持仓变化。
这类方案可以把 QPro 的实时快照变成用户自己的看板。需要历史曲线时,可以让 Agent 或外部程序定时轮询账户数据服务、持续订阅实时行情,并把结果存到自己的时序库或 CSV 中,再按自己的方式渲染。
示例四:实时行情监控与提醒
实时行情服务适合把用户关心的少量合约接入自定义监控。Agent 或脚本可以为每个合约建立一个 SSE 连接,持续接收 QPro 已经合并好的完整行情快照,再计算价格突破、成交放量、盘口变化或跨合约价差。
实时行情监控示意:订阅自选合约,在一个页面中展示最新价、买卖盘、分时走势和自定义提醒。
实时行情接口优先保证最新状态。客户端消费过慢时,中间更新可能被覆盖,因此它更适合监控和展示,不应被当作逐笔不丢失的历史行情归档接口。
示例五:合约筛选与期权研究
合约信息服务可以按合约类型、交易所、品种、是否到期和是否有夜盘等条件筛选合约,再查询最小变动价位、合约乘数、到期时间、涨跌停价和交易时段等属性。对于期权,还可以先指定标的合约,获取看涨或看跌期权列表。
合约研究示意:先筛选可交易合约,再读取合约属性和对应期权列表。
这类能力适合让 Agent 回答“上期所当前未到期且有夜盘的黄金合约有哪些”“某个合约的最小变动价位和合约乘数是多少”“某标的有哪些看涨期权”等问题。推荐先通过合约信息服务取得有效合约代码,再交给实时行情服务订阅。
示例六:账户、合约与行情联动
三个服务可以组合使用。例如,先从账户数据服务读取多账户持仓,再从合约信息服务补充合约名称、乘数、到期日和交易时段,最后从实时行情服务订阅持仓合约的最新价格。这样可以构建跨账户风险看板、临近到期提醒、持仓行情异动提醒,或按用户自定义板块汇总实时风险敞口。
三类服务都只提供数据,不提供下单、撤单或改单能力。交易操作仍由 QPro 自身的交易流程负责。
安全说明
三个服务都只监听本机 localhost,没有面向调用方的应用层鉴权,也不应通过端口转发、反向代理等方式暴露到不可信网络。账户、持仓、委托、成交和行情数据可能包含敏感信息,请只允许受信任的本机程序访问。
数据结构与字段
账户数据的四张表和字段含义见 QPro 本地 API 数据结构与字段说明,实际字段也可以随时通过 GET /tables 获取。实时行情和合约信息的接口、参数与返回值见 实时行情与合约信息 API。