You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用blpapi获取指定ticker对应合约的到期日

核心错误原因

你之前调用失败是接口选型错误:

  • blp.bdh() 是历史时间序列数据接口,仅用于拉取指定时间范围内按日期排布的动态行情/指标数据,不适配合约到期日这类固定静态属性的查询场景。
  • 合约到期日、最后交易日属于合约基础静态信息,必须使用blp.bdp()(静态批量数据接口)查询。
正确调用示例

确保本地已启动Bloomberg终端、完成API会话连接后,直接执行以下代码即可:

from xbbg import blp
# 查询KC1 Comdty(咖啡近月期货)的最后交易日
expiry_info = blp.bdp(
    tickers=['KC1 Comdty'],
    flds=['LAST_TRADE_DATE']
)
print(expiry_info)
字段适配说明

如果返回结果和你预期的到期日期不一致,根据实际需求替换对应字段即可:

  • 查询交易所公布的合约正式交割到期日,使用MATURITY字段
  • 查询合约最后可交易日期,使用LAST_TRADE_DATE字段
  • 查询实物交割类合约的第一通知日,使用FUT_NOTICE_FIRST字段
补充说明

如果你的需求是拉取某段历史时间范围内,当时挂牌的KC1合约对应的最后交易日变动序列,才需要用到bdh()接口,调用时必须补全时间范围参数,示例:

from xbbg import blp
hist_expiry = blp.bdh(
    tickers=['KC1 Comdty'],
    flds=['LAST_TRADE_DATE'],
    start_date='20230101',
    end_date='20240101'
)

注意调用bdp()时不需要传入start_date、end_date这类时间参数,接口会直接返回对应合约当前的最新静态属性值。

内容的提问来源于stack exchange,提问作者Gauri Kant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 14:00:53