2

我正在尝试使用reqHistoricalData. 我想回顾 1 年,但我的函数只打印出本周的数据。

conn.connect()

conn.reqCurrentTime()

oid=cid #cid = 105

contract = make_contract2(265598, 'STK', 'SMART', 'SMART', 'USD') #AAPL

endtime = strftime('%Y%m%d %H:%M:%S')

conn.reqHistoricalData(1,contract,endtime,"1 Y","1 day","TRADES",1,1)

time.sleep(5)

conn.cancelHistoricalData(1);


sleep(5)

print('disconnecting')

time.sleep(1) #Simply to give the program time to print messages sent from IB

conn.disconnect()

任何人都可以帮忙吗?

4

1 回答 1

-1

只需循环一系列周(1 年 = 52 周):

for t in range(52,-1,-1):
    #for t in range(int(delta/5),-1,-1):
        #print t
        d=datetime.datetime.today()-datetime.timedelta(weeks=t)
        d=d.strftime("%Y%m%d")
        con.reqHistoricalData(1,contract,'{} 16:00:00'.format(d),"1 W","1 day","TRADES",1,1)
        sleep(5)
于 2016-10-23T22:26:11.277 回答