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

如何通过InteractiveBrokers API获取可交易标的市场状态及变动通知

IB API 标的交易状态变动监控实现方案

IB 官方没有原生的单字段推送全量交易状态的接口,你可以通过组合现有API能力实现需求,以下是两种可行的落地方案:

方案1:交易时段表+特征tick组合判断(最常用)

  • 调用reqContractDetails接口传入目标标的合约,返回的ContractDetails结构体中包含tradingHours和liquidHours字段,会返回该标的未来数个交易日的全时段划分,包含休市、盘前集合竞价、常规交易、盘后交易的具体时间区间,你可以提前拉取后缓存到本地作为状态判断的基准。
  • 订阅标的的三类特征tick推送:
    • 基础行情tick:tickType=0(买一价)、tickType=1(卖一价)、tickType=15(最新成交价),用于判断标的的报价活跃状态
    • 集合竞价专属tick:tickType=23(拍卖价)、tickType=24(拍卖量),这两个字段有数值更新时即可明确标的进入集合竞价阶段
    • 交易暂停tick:tickType=49(交易停摆标识),即你之前找到的接口,作为交易暂停/恢复的补充判断依据
  • 结合本地缓存的时段表和tick更新特征做交叉校验,即可准确判断状态切换:
    • 进入时段表标注的集合竞价区间+拍卖类tick更新 = 集合竞价状态
    • 进入常规交易时段区间+基础行情tick按正常频率更新 = 常规交易状态
    • 进入休市时段区间+所有tick停止更新超过1分钟 = 休市状态
    • 交易暂停tick返回非0值 = 临时停摆状态

方案2:市场深度数据辅助校验

如果需要更高的判断精度,可以额外订阅标的的市场深度数据(调用reqMktDepth接口):

  • 休市状态下盘口无任何档位报价
  • 集合竞价阶段盘口档位少、报价更新频率低
  • 常规交易阶段盘口档位多、报价更新频率高
    你可以根据对应标的的历史行情特征设置阈值,和方案1的判断逻辑组合使用,进一步降低误判概率。

适配提示

不同市场、不同品类的标的交易规则有差异,比如美股个股、港股、期货的集合竞价规则、时段划分都不相同,首次部署前建议先跑1-2个交易日的测试数据校准判断阈值,适配对应品类的规则即可稳定运行。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 19:48:00