当我将基于彭博COM的dll迁移到.Net中的彭博API v3时,在匹配等效方法方面遇到了一些问题。我尝试使用ReferenceDataRequest获取安全LMCADP 20150819 COMDTY,但是价格不匹配。请建议使用哪种类型的请求。
private void sendRefDataRequest(Session session)
{
Service refDataService = session.GetService("//blp/refdata");
Request request = refDataService.CreateRequest("ReferenceDataRequest");
// Add securities to request
Element securities = request.GetElement("securities");
for (int i = 0; i < d_securities.Count; ++i)
{
securities.AppendValue((string)d_securities[i]);
}
// Add fields to request
Element fields = request.GetElement("fields");
for (int i = 0; i < d_fields.Count; ++i)
{
fields.AppendValue((string)d_fields[i]);
}
System.Console.WriteLine("Sending Request: " + request);
session.SendRequest(request, null);
}加上有价证券
if (d_securities.Count == 0)
{
d_securities.Add("IBM US Equity");
d_securities.Add("LMCADP 20150819 COMDTY");
}发布于 2015-08-12 11:26:30
彭博社旧ActiveX控件中的ActiveX根据传入的字段发出同步订阅或静态请求。如果您请求的是像PX_LAST这样的静态字段,那么ReferenceDataRequest将是获取数据的适当方式。
但是,如果您正在查看实时字段LAST_PRICE,则需要进行订阅(根据订阅对象构建一个SubscriptionList,然后使用Session.Subscribe(..))。
https://stackoverflow.com/questions/31939991
复制相似问题