从R将彭博的历史日内数据拉出来

时间:2017-09-26 15:02:16

标签: r excel bloomberg rblpapi

有关于提取在给定时间发布的每日历史数据的问题。 我正在处理不同时区的公司的股票价格。 对于时间序列中的每一天,我想拉出当天同一时间发布的股票的价格。 我的目的是将CEST下午4点的欧洲证券的股票价格与美国东部时间上午10点(相当于CEST下午4点)的美国证券价格进行比较。

为了与Bloomberg合作,我需要导入数据并选择日内柱,如下例所示:

=BDH("ABLX BB EQUITY","OPEN","06/01/17 09:00","06/30/17 09:05","recurdaily=true","barsz=5","bartp=B")

公式在09:00到09:05之间(在我的时区)中指定时间请求数据。 使用选项"OPEN”,我请求数据尽可能接近条形桶的开始,即09:00。 由于这是一个5分钟的时间间隔,我使用了"barsz=5"。 通过设置"bartp=B"我请求BID价格。 选项"recurdaily=true"意味着我将在几天内获得递归数据,即2017年6月上午9:00左右的每日数据。

我努力使用Rblpapi在R中翻译这个公式,但我无法管理它。我可以使用“bdh”获取历史数据,也可以使用“getBar”获取条形数据,但我无法找到能够提供与上面所述Excel公式相同结果的解决方案。 有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:1)

bdh()功能无法检索每日内部历史记录。

但您可以尝试getBars()getTicks()。您在那里的选项值可能需要一些额外的映射。

R> es <- getTicks("ESZ7 Index", returnAs="data.table")
R> es
                        pt       date     time  type   value size condcode
    1: 2017-09-26 10:10:37 2017-09-26 10:10:37 TRADE 2494.50   82     TSUM
    2: 2017-09-26 10:10:37 2017-09-26 10:10:37 TRADE 2494.50   82       AS
    3: 2017-09-26 10:10:37 2017-09-26 10:10:37 TRADE 2494.50    9       OR
    4: 2017-09-26 10:10:37 2017-09-26 10:10:37 TRADE 2494.50    2       OR
    5: 2017-09-26 10:10:37 2017-09-26 10:10:37 TRADE 2494.50    1       OR
   ---                                                                    
57110: 2017-09-26 11:10:32 2017-09-26 11:10:32 TRADE 2496.00    5       AS
57111: 2017-09-26 11:10:32 2017-09-26 11:10:32 TRADE 2496.00    5       OR
57112: 2017-09-26 11:10:33 2017-09-26 11:10:33 TRADE 2496.25    1     TSUM
57113: 2017-09-26 11:10:33 2017-09-26 11:10:33 TRADE 2496.25    1       AB
57114: 2017-09-26 11:10:33 2017-09-26 11:10:33 TRADE 2496.25    1       OR
R>