跳转到内容

WshEventData 对象

WshEventData 是请求 WSH 事件数据时传入的参数对象。Python API 里的默认值如下:

conId=2147483647
filter=''
fillWatchlist=False
fillPortfolio=False
fillCompetitors=False
startDate=''
endDate=''
totalLimit=2147483647

2147483647 是 TWS API 常用的“未设置整数”哨兵值,不表示真实合约或真实条数。

字段类型中文意思使用建议
conId整数合约 ID查询单个合约事件时填写,例如 AAPL 为 265598
filter字符串事件过滤器应来自 WSH 元数据或官方规则,不要随意猜。
fillWatchlist布尔值是否按自选列表填充事件用于查询自选列表相关事件。
fillPortfolio布尔值是否按投资组合填充事件用于查询账户持仓相关事件。
fillCompetitors布尔值是否包含竞争对手事件适合做公司事件对比。
startDate字符串开始日期按 WSH 支持的日期格式填写。
endDate字符串结束日期startDate 一起限制事件时间范围。
totalLimit整数最多返回条数建议设置合理上限,避免返回过大结果。
from ibapi.common import WshEventData
request = WshEventData()
request.conId = 265598 # AAPL
request.totalLimit = 5 # 最多返回 5 条
app.reqWshEventData(98702, request)

如果只想查某个合约,先填 conIdtotalLimit。如果要按事件类型筛选,再加 filter。如果要查自选列表或持仓组合事件,再考虑 fillWatchlistfillPortfolio

如果账户没有 WSH 权限,空结果不代表该公司没有事件;应优先检查是否收到了 10276 权限错误。