首页 > 解决方案 > 如何从历史 API 请求中获取价格来源

问题描述

在我的生产 C# 应用程序中,我提出了几个历史请求(使用“//blp/refdata”服务)来获取安全价格。对于债券,我想知道彭博社用来给我结果的价格来源是哪个。

我尝试使用 FEED_SOURCE 和 PRICING_SOURCE 字段发出请求,但不起作用(这些字段不是历史字段)。

有没有人解决过类似的问题?

下面一段代码:


Service refDataService = d_session.GetService("//blp/refdata");
// create historical request
Request request = RefDataService.CreateRequest("HistoricalDataRequest");
    
// set securities to request
Element securities = request.GetElement("securities");
foreach (string sec in ticker)
{
  securities.AppendValue(sec);
}
 // set fields to request
 Element fields = request.GetElement("fields");
    
 fields.AppendValue("px_last");
 fields.AppendValue("PRICING_SOURCE");
 fields.AppendValue("FEED_SOURCE");
    
 // send request
 d_session.SendRequest(request, null);

在彭博社的回答中,我收到以下信息:

{securityData = {    security = "XXX Corp"    eidData[] = {    }    sequenceNumber = 0    fieldExceptions[] = {        fieldExceptions = {            fieldId = "PRICING_SOURCE"            errorInfo = {                source = "163::bbdbh1"                code = 1                category = "BAD_FLD"                message = "Not valid historical field"                subcategory = "NOT_APPLICABLE_TO_HIST_DATA"            }        }    }    fieldData[] = {        fieldData = {            date = 2021-11-15            px_last = 100.785            px_bid = 100.729            px_open = 101.153            px_high = 101.558            px_low = 100.785            px_ask = 100.841        }        fieldData = {            date = 2021-11-16            px_last = 100.045            px_bid = 99.865            px_open = 100.795            px_high = 100.795            px_low = 100.045            px_ask = 100.226        }    }}}

标签: bloomberg

解决方案


推荐阅读