I was able to get 5 minute bar data via API. However, since I need 5 minute bar data for more than 1 RIC code, I was wondering if there's a better way than looping through all RIC codes each time submitting 1 request? Below is the code I have with a loop. What I want to achieve is 1 request for 5 minute bar data for all RIC codes.
Instrument[] instList = {
new Instrument { code = "AUD=" },
new Instrument { code = "EUR=" } };
VerifyRICsResult vinst = api.VerifyRICs(ref creds, dtrange, instList, true);
foreach (Instrument inst in vinst.verifiedList)
{
Console.WriteLine();
Console.Write("Requesting data");
string[] fList = new string[] { "Close Bid", "Close Ask", };
MessageType[] messageTypes = { new MessageType { name = "Intraday 5Min", fieldList = fList } };
TimeRange tmrange = new TimeRange { start = "00:00:00", end = "23:59:59.999" };
RequestSpec rs = new RequestSpec();
rs.friendlyName = "My test intraday request";
rs.requestInGMT = false;
rs.displayInGMT = false;
rs.displayMicroseconds = false;
rs.timeRange = tmrange;
rs.date = new DateTime(2015, 8, 13, 0, 0, 0);
rs.instrument = inst;
rs.requestType = RequestType.Intraday;
rs.messageTypeList = messageTypes;
string reqId = api.SubmitRequest(ref creds, rs); m_requestIDs.Add(inst.code, reqId); Console.WriteLine(); Console.Write("Request submitted");
}