当试图覆盖债券的报价类型时,有人对Rbbg
有问题吗?(背景,我们可以在价格或收益中引用债券,在彭博,您可以使用一个名为QtTyp
的字段覆盖它)
我在excel API中尝试了相同的公式,它运行得很好,但是当我在R中尝试它时,当我使用覆盖时,它会给我一个错误:
.jcall中的错误(“RJavaTools”,"Ljava/lang/Object;","invokeMethod",cl,: org.findata.blpwrapper.WrapperException:响应错误:无效重写字段id指定nid:908
excel中的公式是:
=BDH("EC223677@BGN Corp","LAST_PRICE","02/01/2000","02/01/2000","QtTyp=P")
R中的公式是:
> bdh(conn, "EC223677@BGN Corp","LAST_PRICE",as.Date("02/01/2000","%m/%d/%Y"),as.Date("02/01/2000","%m/%d/%Y"))
date LAST_PRICE
2000-02-01 2000-02-01 0.983
> bdh(conn, "EC223677@BGN Corp","LAST_PRICE",as.Date("02/01/2000","%m/%d/%Y"),as.Date("02/01/2000","%m/%d/%Y"), override_fields = "QtTyp", override_values = "P")
Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, :
org.findata.blpwrapper.WrapperException: response error: Invalid override field id specified [nid:908]
发布于 2015-01-20 13:11:43
在彭博API文档之后,必须将"pricingOption“设置为"PRICING_OPTION_PRICE”或"PRICING_OPTION_YIELD“。
如果你这样做了,它就会起作用的。但是,到今天为止,我刚刚将新的R包RbbgExtension从GitHub上的私有存储库更改为public。这个包旨在扩展功能并使使用Rbbg变得更容易--将它看作Rbbg之上的一个包装器,Rbbg本身就是一个Java包装器。
基于您的问题,我刚刚对RbbgExtension进行了补丁,将pricingOption变量默认为"PRICING_OPTION_PRICE“。这意味着为了得到你想要的价格,你只需输入以下内容.
> HistData(tickers = "EC223677",
+ type = "Govt",
+ fields = "PX_LAST",
+ startdate = "20000201",
+ enddate="20000201")
R version 3.1.1 (2014-07-10)
rJava Version 0.9-6
Rbbg Version 0.5.2
Java environment initialized successfully.
Looking for most recent blpapi3.jar file...
Adding C:\blp\API\APIv3\JavaAPI\v3.7.1.1\lib\blpapi3.jar to Java classpath
Bloomberg API Version 3.7.1.1
PX_LAST
2000-02-01 100.082
如果由Hadley安装devtools包,那么可以通过键入RbbgExtension (“pgarnry/RbbgExtension”)轻松安装最新版本的install_github。
如果你想要收益,你只需要改变这个函数的定价变量。
我们实际上正在讨论是否将函数中的变量输入更改为类似于Excel命名约定的变量,以使事情更类似于- for --但目前,像定价选项这样的选项名称是使用完整的输入名称来设置的,而不是像Excel中那样用缩写"P“或"Y”来设置的,而是说在将来的版本中可能会发生变化。
https://stackoverflow.com/questions/27748126
复制相似问题