0

ブルームバーグからいくつかの FX フォワード ポイント データをダウンロードして、利回りの差を計算しようとしています。そのためには、フォーワード ポイントが値付けされる (つまり、期間) 起算日と決済日の間の日数を下げる必要があります。以下のように試してみましたが、これは機能せず、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 の値が変更されないことです。私のもう1つの問題は、これまでで最も効率の悪いコード行であることです... [mydate]にあるのと同じくらい多くのクエリを実行する必要があるため、時間がかかります。

上記のクエリをワンショットでダウンロードしたり、これをより効率的にコーディングしたりする方法はありますか?

どんな助けでも感謝します。

敬具

ピエール

4

1 に答える 1