question

Upvotes
Accepted
301 12 26 33

API multiple RICs

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");
}
tick-history-rest-apirics
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

Upvotes
Accepted
588 12 17 18

To pass multiple RICs in your request, you need to call SubmitFTPRequest method. For larger requests and those that involve multiples days or multiple RICs, it is necessary to use the SubmitFTPRequest method. I see that you are using SubmitRequest method instead, this method can be used for single RIC and single day.

Also, in you code your instruments input includes <AUD=>, <EUR=> which are FX spot RIC codes. If you intend to download data for all FX spots, then you could use <FX=>. In that case, you need to first call ExpandChain method, then VerifyRICs method and finally use that list of instruments in your SubmitFTPRequest method. Otherwise, if your request only includes a subset of FX spots then you could refer to the file with the RICs in your method.

Note the completed download files will be available under results folder in your TRTH FTP when you call SubmitFTP method.

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.