consumer fields

natalie
natalie Newcomer
edited April 21 in EMA

hi

I am new in Reuters,

I am trying to use your examples,

I started with consumer EMA using c# i what to get value of RIC

and i want to new which fileds i need to put in "NAME"

***I have attached the output of the code.

this is the code :

public class Consumer
{
static void Main()
{
OmmConsumer? consumer = null;
try
{
AppClient appClient = new();
OmmConsumerConfig config = new OmmConsumerConfig().Host("*************:14002").UserName("************");
consumer = new OmmConsumer(config);
consumer.RegisterClient(new RequestMsg().ServiceName("IDN_RDF").Name("?????"), appClient);
Thread.Sleep(60000); // API calls OnRefreshMsg(), OnUpdateMsg() and OnStatusMsg()
}
catch (OmmException excp)
{
Console.WriteLine(excp.Message);
}
finally
{
consumer?.Uninitialize();
}
}
}
image.png

Answers

  • wasin.w
    wasin.w admin
    edited April 21

    Hello @natalie

    The status message "*** The record could not be found" means the item name does not exist or invalid for the service and domain that the application tries to subscribe.

    Basically, you need to input the RIC Code name (instrument code) that available on your Real-Time Distribution System (RTDS) such as:

    • IBM.N (for IBM Quote data)
    • GOOG.O (for Google Quote data)
    • THB= (for Thai Bath spot rate quote data)
    • etc.

    The RIC name also depending on your Market Data team in the case of internal published RICs data. I strongly suggest you contact your Market Data team to verify the RIC name that matches your requirement.

  • Jirapongse
    Jirapongse ✭✭✭✭✭

    @natalie

    If you would like to retrieve real-time data for BWP Trust, the RIC is BWP.AX.

    image.png

    You can use the RIC Search tool to search for RICs.

  • natalie
    natalie Newcomer

    hi,

    thank u on the answer ,

    Is there a service that can be sent RIC and FIELD and it will return a value?
    The service in question above only sends RIC and accepts all existing data types.

  • Jirapongse
    Jirapongse ✭✭✭✭✭

    If you mean the service names (IDN_RDF, or ELEKTRON_DD), the service names depend on the settings on your real-time environments.

    In your case, the IDN_RDF is a valid service name for your real-time environments.

    You can specify fields in the request by using a view request. Please refer to the 360_MP_View example.

    The example specify the field identifiers (22 (BID), and 25 (ASK)) in the request's payload.

     OmmArray array = new()
    {
    FixedWidth = 2
    };

    array.AddInt(22)
    .AddInt(25)
    .Complete();

    var view = new ElementList()
    .AddUInt(EmaRdm.ENAME_VIEW_TYPE, 1)
    .AddArray(EmaRdm.ENAME_VIEW_DATA, array)
    .Complete();

    consumer.RegisterClient(new RequestMsg().ServiceName("DIRECT_FEED").Name("IBM.N").Payload(view), appClient);

    You can refer to the RDMFieldDictioary for the field's descriptions.