我有兴趣使用ibpy和Interactive Brokers API来获取给定100个股票的实时定时器数据.下面的代码,来自网络上的示例适用于一个股票.有人可以告诉我如何同时为100只股票做这个吗?
Python脚本:
from ib.opt import ibConnection, message
from ib.ext.Contract import Contract
from time import sleep
def my_callback_handler(msg):
inside_mkt_bid = ''
inside_mkt_ask = ''
if msg.field == 1:
inside_mkt_bid = msg.price
print 'bid', inside_mkt_bid
elif msg.field == 2:
inside_mkt_ask = msg.price
print 'ask', inside_mkt_ask
tws = ibConnection()
tws.register(my_callback_handler, message.tickSize, message.tickPrice)
tws.connect()
c = Contract()
c.m_symbol = "DATA"
c.m_secType = "STK"
c.m_exchange = "SMART"
c.m_currency = "USD"
tws.reqMktData(1,c,"",False)
sleep(25)
print 'All done'
tws.disconnect()
Run Code Online (Sandbox Code Playgroud)
命令行输出:
Server Version: 76
TWS Time at …Run Code Online (Sandbox Code Playgroud)