首页 > 解决方案 > 使用 python 从盈透证券获取买卖价

问题描述

这段代码:

ib = IB()
ib.connect('127.0.0.1', 7496)

contract = Stock('SLV', 'SMART', 'USD')

test=ib.reqTickers(contract) 
print(test)

将打印出这个:

[Ticker(contract=Stock(symbol='SLV', exchange='SMART', currency='USD'), time=datetime.datetime(2019, 7, 1, 15, 18, 43, 287622, tzinfo=datetime.timezone.utc), bid=14.26, bidSize=11224, ask=14.27, askSize=2970, last=14.27, lastSize=1, volume=48694, open=14.24, high=14.33, low=14.24, close=14.33, halted=0.0, ticks=[], tickByTicks=[], domBids=[], domAsks=[], domTicks=[])]

现在我需要得到出价和要价。

print(test.ask)print(test.bid)通常​​得到错误:AttributeError:'list'对象没有属性'ask'。

我尝试了许多与上述类似的其他方法,但遇到了类似的错误。

标签: python

解决方案


test是长度为 1 的列表,其唯一条目是Ticker您感兴趣的对象。尝试test[0].ask.


推荐阅读