2016-10-13 20 views
0

reqHistoricalDataを使用して、株式の履歴データを取得しようとしています。私は1年前を振り返りたいが、私の機能は今週からのデータだけをプリントアウトする。インタラクティブ・ブローカーから `ibpy`を使って履歴データを取得する方法は?

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() 

誰でも手助けできますか?週間(1年= 52週)の範囲にわたって

答えて

-1

は単にループ:

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) 
関連する問題