首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >reqHistoricalData()使用IBpy返回空值?

reqHistoricalData()使用IBpy返回空值?
EN

Stack Overflow用户
提问于 2015-05-08 18:23:38
回答 1查看 2.6K关注 0票数 1

我试图使用IBpy从一些工具返回历史数据,但是当我尝试文档中的代码时,我会得到一个空的结果。

我使用成功地使它工作,但我确实希望它能够使用Python。

这是我正在测试的代码。

代码语言:javascript
复制
from time import sleep, strftime
from time import sleep
from ib.ext.Contract import Contract
from ib.opt import ibConnection, message

def my_account_handler(msg):
    print(msg)


def my_tick_handler(msg):
    print(msg)


if __name__ == '__main__':
    con = ibConnection()
    con.register(my_account_handler, 'UpdateAccountValue')
    con.register(my_tick_handler, message.tickSize, message.tickPrice)
    con.connect()

    def inner():

        qqqq = Contract()
        qqqq.m_secType = "CASH" 
        qqqq.m_symbol = "MSFT"
        qqqq.m_currency = "USD"
        qqqq.m_exchange = "IDEALPRO"
        endtime = strftime('%Y%m%d %H:%M:%S')
        con.reqHistoricalData(1,qqqq,endtime,"5 D","1 hour","MIDPOINT",1,1)

        sleep(10)

    inner()
    sleep(5)
    print('disconnected', con.disconnect())

知道可能出了什么问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-11 20:11:39

您需要注册历史数据消息。

con.register(my_hist_data_handler, message.historicalData)

然后定义你想用它做什么

def my_hist_data_handler(msg): print(msg)

还请注意,MSFT (或QQQ)是一只股票。

代码语言:javascript
复制
qqqq.m_secType = "STK" #cash is for forex
qqqq.m_symbol = "MSFT" #use less confusing var name
qqqq.m_currency = "USD" 
qqqq.m_exchange = "SMART" #for stocks usually
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30130469

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档