首页 > 解决方案 > from xbbg import blp 适用于股票,但不适用于债券

问题描述

from xbbg import blp适用于股票,但不适用于债券。

我使用这个 pip 库:https ://pypi.org/project/xbbg/

我进行以下导入。

import blpapi
from xbbg import blp

然后,我对权益运行以下测试:

# this works
eqData = blp.bdh(
    tickers='SPX Index', flds=['high', 'low', 'last_price'],
    start_date='2018-10-10', end_date='2018-10-20',
    )

print(eqData)

这有效并产生了预期的数据帧。

我对公司债券做同样的事情:

# this returns empty
bondData = blp.bdh(
    tickers='XS1152338072 Corp', flds=['px_bid', 'px_ask'],
    start_date='2019-10-10', end_date='2018-10-20',
    )

print(bondData)

即使数据存在,这也会失败(产生一个空的数据帧)。

这是结果(一个空的DataFrame):

getting bond data...
Empty DataFrame
Columns: []
Index: []

另请注意,我可以让BDP函数为债券工作。为什么我不能让BDH功能工作?

标签: bloombergblpapi

解决方案


似乎开始日期(年份)在结束日期之后。IE。将2019年更改为2018 年

start_date='2019-10-10', end_date='2018-10-20'

更正为

start_date='2012-10-10', end_date='2018-10-20',

这会产生预期的数据帧。


推荐阅读