因此,我一直在使用一个名为xbbg的程序包,该程序包在语法上与Excel API大致相同,并且除blp.bdib调用外,其他所有程序都正常运行。每次我尝试运行它时,包括文档中提供的示例(blp.intraday(ticker ='7974 JT Equity',dt ='2018-10-17',session ='am_open_30')。tail()),它返回一个空的数据帧。有人可以逐段地指导我如何将这些asset.yml和exch.yml映射到BBG_ROOT sys路径吗?抱歉,我是这个菜鸟。具体请参见https://pypi.org/project/xbbg/ blp.bdib(日线)示例中的部分以及其下方的随附文本。

尝试将exch.yml和asset.yml文件复制到我的blp文件夹中的BBG_ROOT文件夹中以进行彭博安装,然后将BBG_ROOT附加到sys.path.append()中,但似乎无济于事。另外,作为参考,我试图在9月到期的日经指数和SPX期货合约上获得高价和低价,因此从我所看到的情况来看,默认情况下,资产和交易所yml已经包含了定义。

最佳答案

参照期货采用不同的方法。
您可以按照与NO中相同的方式指定assets.yml合同:

  - tickers: [ES, DM, NQ]
    exch: CME
    freq: Q
    is_fut: True


Exchange应该是FuturesJapan,它已经在exch.yml中可用。



期货的日内数据

更新为xbbg 0.3.1后,可以使用blp.fut_ticker检查任何给定日期,即12指的是什么。例如:

In [1]: from xbbg import blp
In [2]: blp.fut_ticker('NK1 Index', dt='2019-08-07', freq='Q')
Out[2]: 'NKU9 Index'


您可以在上述功能中添加log='debug'以查看完整的期货链。

您也可以使用blp.active_futures来查看在任何给定日期哪个合同有效:

In [3]: blp.active_futures('NKA Index', dt='2019-08-07')
Out[3]: 'NKU9 Index'


然后,您可以使用blp.bdib和通用期货合约来下载历史盘中数据:

In [4]: blp.bdib('NK1 Index', '2019-08-07').tail()
Out[4]:
ticker                    NK1 Index
field                          open      high       low     close volume num_trds
2019-08-07 15:05:00+09:00 20,490.00 20,490.00 20,470.00 20,480.00    170       25
2019-08-07 15:06:00+09:00 20,480.00 20,480.00 20,480.00 20,480.00    193       34
2019-08-07 15:07:00+09:00 20,480.00 20,500.00 20,470.00 20,500.00    450       76
2019-08-07 15:08:00+09:00 20,500.00 20,520.00 20,500.00 20,520.00    492       49
2019-08-07 15:09:00+09:00 20,520.00 20,530.00 20,510.00 20,510.00    471       63

10-04 20:18