2017-06-05 43 views
0

彭博社excel formumla =BDH()只能检索1种证券的价格。如果我想获得其他证券,那么我需要重复这个没有问题的公式,因为我已经为此写了一个脚本。彭博社提取多种证券

当证券的日期不匹配时,或者由于交易日或合约到期,问题就来了。

例如下面是一个并排输出。 公式:=BDH(name_of_commod,"PX_LAST","19/12/2015","2/5/2017")

QWV8 Comdty   QWZ8 Comdty 
#NAME?  495.2 #NAME?  479.7 
14/2/2017 496.7 18/4/2017 462.2 
15/2/2017 494.4 19/4/2017 457.1 
16/2/2017 495.3 20/4/2017 456.6 
17/2/2017 495  21/4/2017 457 
20/2/2017 498.7 24/4/2017 454.9 
21/2/2017 498.4 25/4/2017 453.5 
22/2/2017 498.1 26/4/2017 445 
23/2/2017 491.6 27/4/2017 439.9 
24/2/2017 489.5 28/4/2017 450 
27/2/2017 481.6 2/5/2017 448.4 

这里的不匹配是由于QWZ8不可用,直到4月18日,哪一种在我的计算螺丝的,因为我已经得到了有关数据集中一百其他证券。

有没有办法输出bloomberg数据,使所有日期对齐到同一行?

像这样:

QWV8 Comdty   QWZ8 Comdty 
18/4/2017 461.3 18/4/2017 462.2 
19/4/2017 456.2 19/4/2017 457.1 
20/4/2017 455.7 20/4/2017 456.6 
21/4/2017 456.1 21/4/2017 457 
24/4/2017 454  24/4/2017 454.9 
25/4/2017 452.6 25/4/2017 453.5 
26/4/2017 444  26/4/2017 445 
27/4/2017 438.9 27/4/2017 439.9 
28/4/2017 449  28/4/2017 450 
2/5/2017 447.4 2/5/2017 448.4 

回答

1

您可以使用替代来指定日期的缺失处理。例如:

=BDH(name_of_commod,"PX_LAST","19/12/2015","2/5/2017","Days=W,Fill=N") 

将在每个工作日都有一个数据点,如果没有数据可用于某个日期,则会将“价格”单元留空。

的可能值是为Days是:

  • N,W或平日 - 所有平日
  • C,A或全部 - 所有日历日
  • T,以下交易忽略所有非交易天。

Fill

  • C,P,或上一页 - 怀揣过去的数据。
  • N,E或错误 - 返回错误消息。
  • B或空白 - 返回空白。
  • NA - Excel是不可用
  • PNA - 先前值和Excel是#N/A当先前值不可用
  • 客户端就进入将被逐字地用作填料的任何其它值。

您可以在函数的帮助中找到更详尽的有效覆盖列表。 (在Excel中,转到具有公式的单元格,然后单击“更多功能...”和“关于此功能的帮助”)

+0

omg,此功能完美。谢谢!! – adam