2

我希望能够获得以 EST(纽约)为时区的证券价格数据。我的经纪人是盈透证券。我将 python 3.5 与IBPy 库一起使用。我的问题是,当我修改控制数据时区的 reqHistoricalData 的第三个参数时,我得到的价格完全相同。

如何重现问题:

  1. 通过指定 contract.m_symbol = 'AUD', contract.m_secType = 'CASH', contract.m_exchange = 'IDEALPRO', contract.m_primaryExch = 'IDEALPRO', contract.m_currency = 'NZD' 创建要查询的合约
  2. 使用 reqHistoricalData 获取上述合约的每日开盘价,以 EST 为时区 23/6/2016。
  3. 现在通过修改 reqHistoricalData 的第三个参数来更改时区,以使用 JST 作为 23/6/2016 的时区。
  4. 比较第 2 步和第 3 步的开盘价

感谢任何帮助。

4

2 回答 2

6

TZ 只是告诉 IB 服务器何时结束请求。如果您对 formatDate 参数使用 2,则响应将始终为 GMT 格式,如果您使用 1,则响应将始终为您的本地时区。

因此,通过使用 JST,您可以告诉服务器提前 12 小时结束请求,即。那是在日本的时候。

在您的示例中,我没有得到相同的数据。时间和价格相同,但使用 JST,我得到的数据减少了 12 小时。就好像它将结束时间转换为 JST,但将计算出的开始时间留在我自己的时区中。

不用说,我从不使用时区,并尽可能尝试使用 GMT 时间戳。

于 2016-07-09T16:21:41.790 回答
0

我有同样的查询。看看 IB API 文档中的页面,它说所有数据都在您登录 TWS 的同一时区返回。http://interactivebrokers.github.io/tws-api/historical_bars.html#hd_receive&gsc.tab=0

于 2017-11-09T04:02:27.427 回答