小编Rav*_*ngh的帖子

彭博.Net API-多种证券的响应数据

假设我们使用.Net API发送彭博历史数据请求以获取多种证券,是否有任何优雅的方法来分离/识别每种证券的响应数据。我知道响应中有一个字段``sequenceNumber'',但不确定如何它映射到每个证券。我的代码段如下。

Service refDataService = session.GetService("//blp/refdata");
Request request = refDataService.CreateRequest("HistoricalDataRequest");
Element securities = request.GetElement("securities");
securities.AppendValue("EURUSD CURNCY");
securities.AppendValue("USDJPY CURNCY");
securities.AppendValue("GBPUSD Curncy");
securities.AppendValue("USDCHF Curncy");

Element fields = request.GetElement("fields");                
fields.AppendValue("OPEN");
fields.AppendValue("HIGH");
fields.AppendValue("LOW");
fields.AppendValue("PX_LAST");

request.Set("periodicityAdjustment", "CALENDAR");  
request.Set("periodicitySelection", "DAILY");
request.Set("startDate", DateTime.Now.AddDays(-30).ToString("yyyyMMdd"));
request.Set("endDate", Convert.ToString(null));

session.SendRequest(request, null);

while (true)
{
Event eventObj = session.NextEvent();
foreach (Message msg in eventObj.GetMessages()) 
{
    if (msg.MessageType.Equals(Name.GetName("HistoricalDataResponse")))
    {
        Element secDataArray = msg.GetElement("securityData");          
        Element securityData = secDataArray.GetElement(3);
        for (int index = 0; index < securityData.NumValues; index++)
        {
            Element fieldData = securityData.GetValueAsElement(index);
            Datetime time …
Run Code Online (Sandbox Code Playgroud)

.net c# bloomberg

5
推荐指数
1
解决办法
6514
查看次数

使用Bloomberg .Net API的每小时数据

我正在努力克服使用.Net API 3.0从Bloomberg获取每小时OPEN,HIGH,LOW和LAST_PRICE快照的逻辑.我用google搜索过很多次但没有运气!任何有关这方面的帮助将非常感激.

我试图在Bloomberg .Net API(C#)中找到等效的以下VBA BDH功能.

BDH(B5,C6:F6,TODAY()-30,"","BarTp=T","BarSz=120","days=T","Dir=V","Dts=S",,"Quot??e=C","UseDPDF=Y","Sort=D",,"cols=5;rows=271") 
Run Code Online (Sandbox Code Playgroud)

其中B5是安全名称,C6:F6包含OPEN,HIGH,LOW和LAST_PRICE字段.我已经尝试了Intraday Bar请求,但它没有返回与此BDH函数返回的值相同的值.此外,历史数据请求没有HOURLY间隔选项,它从DAILY间隔开始.

以下是我到目前为止尝试过的代码:

BBService refDataService = session.GetService("//blp/refdata"); 
BBRequest request = refDataService.CreateRequest("IntradayBarRequest"); 
request.Set("security", "SPX INDEX"); 
request.Set("eventType", "TRADE"); 
request.Set("interval", 120); // bar interval in minutes
request.Set("startDateTime", new BBDateTime(2012, 08, 11, 07, 30, 0, 0)); 
request.Set("endDateTime", new BBDateTime(2012, 08, 20, 18, 30, 0, 0)); 
session.SendRequest(request, null);
Run Code Online (Sandbox Code Playgroud)

.net api bloomberg

3
推荐指数
1
解决办法
9209
查看次数

标签 统计

.net ×2

bloomberg ×2

api ×1

c# ×1