跳转到内容

行情服务器连接正常

Market data farm connection is OK 是 TWS API 最常见的系统信息之一。它通常对应代码 2104,意思是行情服务器连接正常。

TWS API 历史设计里,系统状态、警告和错误都通过 error() 回调发送。因此看到 error() 并不代表程序失败。

连接 TWS 后可能收到:

INFO_CODES=2104,2104,2104,2104,2106,2106,2158

这些信息表示相关服务连接正常:

代码常见说明
2104行情服务器连接正常。
2106历史数据服务器连接正常。
2158安全定义数据服务器连接正常。
INFO_CODES = {2103, 2104, 2105, 2106, 2107, 2108, 2158}
def error(self, reqId, errorTime, errorCode, errorString, advancedOrderRejectJson=""):
if errorCode in INFO_CODES:
print("连接状态信息:", errorCode, errorString)
return
print("需要处理的错误:", reqId, errorCode, errorString)

不要因为收到 2104 就断开重连。频繁重连反而可能让问题更难排查。

情况是否关注
启动后收到 2104正常。
启动后收到 2106正常。
运行中反复收到断开和恢复需要检查网络、TWS 状态或 IBKR 服务状态。
同时有请求级错误先看请求级错误的 reqId 和错误码。

如果行情服务器连接正常,但某个标的仍然没有行情,下一步应检查行情权限、合约字段和市场状态。