Rblpapi - 使用带有ISIN/Cusip的bdp会出错

pul*_*ion 8 api r bloomberg blpapi

当我使用带有ISIN或CUSIP的bdp时,我得到以下错误.

bdp ("US25470XAB10 ISIN","ULT_PARENT_TICKER_EXCHANGE")
bdp ("25470XAB1 CUSIP","ULT_PARENT_TICKER_EXCHANGE")

Error in bdp_Impl(con, securities, fields, options, overrides, identity) : 
attempt to set an attribute on NULL
Run Code Online (Sandbox Code Playgroud)

但是,使用Bloomberg ID(下面)似乎可行.

bdp("EI000902 Corp","ULT_PARENT_TICKER_EXCHANGE")
Run Code Online (Sandbox Code Playgroud)

欣赏任何变通方法或解决方案.

小智 7

我在通过 Rblpapi 将 CUSIP 转换为 TICKER 时遇到问题。解决了我的问题。

bdp("/cusip/143130102","TICKER")
Run Code Online (Sandbox Code Playgroud)


luk*_*awk 4

我想我已经明白了这一点。这不是 Rblpapi 的事情,而是彭博级别的事情。我猜这是一个安全名称格式化的事情。据我在彭博社采访的一个人说(他们有时很有帮助……有时……),当您使用 ISIN 时,您必须指定资产类型。您不要在证券名称中使用“ISIN”,而是使用位于 Bloomberg 键盘上黄色键中的任何一种资产类型。(这没有意义,因为我知道事实上债券数据有时会在证券名称中使用“ISIN”,并且所有类型的数据似乎总是在桌面(excel)API 中工作。但是,无论如何。这是彭博社。)

所以,举例来说,

bdp ("US25470XAB10 ISIN","ULT_PARENT_TICKER_EXCHANGE")
Run Code Online (Sandbox Code Playgroud)

应该

bdp ("US25470XAB10 Corp","ULT_PARENT_TICKER_EXCHANGE")
Run Code Online (Sandbox Code Playgroud)

我知道这适用于 ISIN,但我没有 CUSIP ID,也没有测试过。(我有一份外国优先股、股票和债券的列表,只要我在 ISIN 之后使用“PFD”、“EQUITY”和“CORP”,它就能很好地获取数据。)

我已经为同样的问题苦苦挣扎了大约一天,我认为这就是解决方案。到目前为止,它似乎效果很好。但是,如果它对您有影响,或者您发现任何警告,请告诉我。