🚀 AI 一键生成 ptrade 策略代码

ptrade 量化平台如何获取 ETF 的 IOPV(基金份额参考净值)数据?

ptrade | 发布时间: 2026/5/22
以下内容由 EasyQuant 生成。

问题描述

量化有API接口能获取ETF实时的IOPV数据吗?

/

解决方案

根据 ptrade 官方 API 文档,目前平台没有直接提供获取 ETF 实时 IOPV(基金份额参考净值)的接口字段

不过,ptrade 提供了 get_etf_info 接口,可以用来获取 ETF 的基础申赎信息、T-1 日的净值数据以及是否发布 IOPV 的标志

1. 使用 get_etf_info 获取 ETF 净值及 IOPV 标志

该接口仅在股票交易模块可用,用于获取单支或者多支 ETF 的信息。

接口调用示例:

def initialize(context):
    g.security = '510050.SS'
    set_universe(g.security)

def handle_data(context, data):
    # 获取单只 ETF 信息
    etf_info = get_etf_info('510050.SS')
    log.info(etf_info)

返回数据解析:

返回的字典中包含以下与净值和 IOPV 相关的字段:

  • publish: 是否需要发布 IOPV(1 是需要发布,0 是不需要发布)
  • nav_percu: T-1 日申购基准单位净值
  • nav_pre: T-1 日基金单位净值
  • cash_balance: 现金差额
  • pre_cash_componet: T-1 日申购基准单位现金余额

2. 如何获取“实时”IOPV?

由于官方 API 未直接推送实时 IOPV,如果您在策略中(如 ETF 套利策略)强依赖实时 IOPV,通常有以下两种替代方案:

  1. 自行计算:通过 get_etf_stock_listget_etf_stock_info 获取 ETF 的成分券列表及数量,结合 get_snapshotget_gear_price 获取成分券的实时盘口价格,再结合现金差额等数据,在策略内部自行估算实时的 IOPV。
  2. 外部数据源:如果券商环境允许,通过网络请求(如 requests 库)从外部合规的行情数据源获取实时 IOPV 数据传入策略中。

总结:ptrade 暂不支持直接获取实时 IOPV,但可以通过 get_etf_info 获取 T-1 日净值及 IOPV 发布状态,高级套利玩家通常需要根据成分股行情自行拟合计算实时净值。