我正在尝试从彭博下载一些外汇远期点数据来计算一些收益率差异。为此,我需要降低定价日期和结算日期之间的天数(即期限)。我已经尝试如下,但这个 dows 不起作用并返回 NA。虽然这一点表明:
require(Rblpapi)
blpConnect()
bdh("AUD1M Curncy",field=c("PX_MID","DAYS_TO_MTY"),start.date=as.Date("2017-05-01"))
date PX_MID DAYS_TO_MTY
1 2017-05-01 -4.505000000000000 NA
2 2017-05-02 -4.350000000000000 NA
3 2017-05-03 -4.150000000000000 NA
4 2017-05-04 -4.210000000000000 NA
5 2017-05-05 -4.257000000000000 NA
6 2017-05-08 -4.710000000000000 NA
7 2017-05-09 -4.930000000000000 NA
8 2017-05-10 -4.800000000000000 NA
9 2017-05-11 -4.505000000000000 NA
10 2017-05-12 -4.500000000000000 NA
11 2017-05-15 -4.855000000000000 NA
12 2017-05-16 -4.525000000000000 NA
13 2017-05-17 -4.403000000000000 NA
现在彭博社的小伙子告诉我,您不能使用 bdh 下载男高音,但是可以通过使用 excel bdp 公式来下载。因此,我编写了一个循环如下:
mydates <- c("20170510,"20170511,"20170512,."20170515","20170516
for(i in 1:length(mydates)){print(as.numeric(bdp("AUD1M Curncy",c("PX_BID","DAYS_TO_MTY"),overrides=c("Reference Date"=mydates[i]))))}
这里是印刷品
[1] -4.49 32.00
[1] -4.49 31.00
[1] -4.49 31.00
[1] -4.49 33.00
[1] -4.49 32.00
我的问题是,当我覆盖参考日期时,PX_MID 值确实会发生变化,尽管这些日子都是如此(他们应该这样做)。我的另一个问题是,这是有史以来最无用的代码行......它需要很长时间,因为我必须在 [mydate] 中进行尽可能多的查询。
有没有办法一次性下载上述查询和/或更有效地编码?
任何帮助表示赞赏。
亲切的问候
皮埃尔