如果我运行一个基本的TWS示例,就会收到错误消息。如果我注释掉了错误()回调,它就会运行得很好。我已经在几个例子上试过了,并得到了同样的结果。
Exception has occurred: TypeError
error() takes 4 positional arguments but 5 were given
File "/Users/jayurbain/Dropbox/twsapi/Algorithmic Trading using Interactive Broker's
Python API /ib_basic_app.py", line 20, in <module> app.run()请给我建议。
谢谢,
杰伦
下面是在wrapper.py中被覆盖的回调:
def error(self, reqId:TickerId, errorCode:int, errorString:str, advancedOrderRejectJson = ""):以下是整个代码:
from ibapi.client import EClient
from ibapi.wrapper import EWrapper
class TradingApp(EWrapper, EClient):
def __init__(self):
EClient.__init__(self,self)
def error(self, reqId, errorCode, errorString):
print("Error {} {} {}".format(reqId,errorCode,errorString))
app = TradingApp()
app.connect("127.0.0.1", 7497, clientId=1)
app.run()发布于 2022-11-21 11:34:49
问题的解决方案是执行python setup install,而不是使用pip来安装ibapi。谢谢你的回答。
发布于 2022-11-20 10:58:46
从10.14开始的版本中有一些API更改。由于错误回调还有另一个参数,所以需要将其包含在args中。
def error(self, reqId, errorCode, errorString, advancedOrderRejectJson):
print("Error {} {} {}".format(reqId,errorCode,errorString))https://stackoverflow.com/questions/74412482
复制相似问题