Bloomberg VBA API:如何用VBA和BLPAPI替换BDS呼叫?

时间:2012-04-10 09:38:22

标签: excel-vba bloomberg blpapi vba excel

我目前以下列方式使用BDS:

=BDS("FDS US Equity","TOP_20_HOLDERS_PUBLIC_FILINGS","cols=10;rows=20")

我有BBG VBA类模块,它具有以下功能:

Public Function ReferenceDataRequest(security As String, fields() As String) As Variant

Public Function HistoricalDataRequest(securities() As String, fields() As String, startDate As String, endDate As String, periodicity As String, nonTradingDayFillOption As String, nonTradingDayFillValue As String) As Variant

Public Function IntradayTickRequest(security As String, startDate As String, endDate As String, eventTypes() As String) As Variant

Public Function IntradayBarRequest(security As String, startDate As String, endDate As String, eventType As String, interval As Integer) As Variant

我无法弄清楚使用哪种功能以及使用什么参数。

帮助!

1 个答案:

答案 0 :(得分:5)

我不太熟悉BDS() Bloomberg功能,但是使用Bloomberg API并与Bloomberg一起使用VBA。

您的BDS()来电已将'FDS US Equity'作为安全参数,将'TOP_20_HOLDERS_PUBLIC_FILINGS'作为字段。但是,列出的函数中的'fields()'参数需要一个数组。

你尝试过这样的事吗?

Dim varData As Variant
Dim strFieldsArray(0) as string

strFieldsArray(0) = "TOP_20_HOLDERS_PUBLIC_FILINGS"   

varData = ReferenceDataRequest("FDS US Equity", strFieldsArray)

我正在做假设(不是我认为这很重要)这个方法正在调用Bloomberg数据类型库的BlpSubscribe()