Bloomberg excel formumla =BDH()
仅检索1个证券的价格。如果我想获得其他证券,我需要重复这个没有问题的公式,因为我已经为此编写了一个脚本。
当证券的日期因交易日或合约到期而不匹配时,就会出现问题。
e.g。下面是并排输出。
公式:=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
答案 0 :(得分:1)
您可以使用替代指定缺少日期的处理方式。例如:
=BDH(name_of_commod,"PX_LAST","19/12/2015","2/5/2017","Days=W,Fill=N")
每个工作日将有一个数据点,如果没有可用于日期的数据,则会保留"价格"细胞空白。
Days
的可能值为:
和Fill
:
您可以在该功能的帮助中找到更详尽的有效替代列表。 (在Excel中,转到包含公式的单元格,然后单击"更多功能..."以及"此功能的帮助")