我刚刚开始使用python中的IB API。我能够检索我想要的所有所需结果。但是,我遇到了一个大问题。我不完全理解EClient
类和特定回调之间的链接是如何在EWrapper
类中进行的。
到目前为止,我了解了这样的工作流程(高级别(:
- EClient 实例调用 IB 网关。 IB
- 网关本身连接到IB数据中心以获取数据
- 数据返回IB网关
- IB网关调用回调,即接口
据我了解,IB网关会触发正确的回调函数。我从文档/源代码中看不到的是EClient
方法与我在EWrapper
类中覆盖的接口(回调(之间的联系。当我在上面的步骤 1 中触发特定方法时。IB网关如何知道要运行哪个回调?这是在某处指定的吗?
处理对 EClient 中调用的每个函数的响应的回调函数是硬编码的,并在 TWS API 参考指南中进行了详细说明。
例如,调用 EClient.reqAccountUpdate 会导致响应以EWrapper::updateAccountValue
和EWrapper::updatePortfolio
返回,您需要在自己的代码中覆盖这些函数。
-
TWS Python API Traders Academy 课程
-
IBKR录制的网络研讨会