Newby needs c# class lib & console working example to retrieve internal source contributions

I'm trying to retrieve data from internal contributions in a c# project (class library, later to be referenced in a broader solution, presently in a simple solution where it's called by a test console app, for example's simplicity's sake i'm just trying to make it work in the console project alone)

Namely, i can retrieve (see sample code below) data that are under the "source" 'RSF' (which is typically the first argument of the more familiar RtGet functions), but my data are under an internal source 'INTPAR' and i cannot find any corresponding argument for this "source".

I referenced the EikonDataAPI (is it the best fit for my need?) as NuGet package (loading associated dlls, MS extensions, Deedle, ...) and i created an App Key from the Eikon monitor.

I can have this sample code working:

using System;
using EikonDataAPI;
using Deedle;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("hello");
            IEikon myEikon = Eikon.CreateDataAPI();
            myEikon.SetAppKey("xxx");
            var response = myEikon.GetData("EUR=", "PRIMACT_1");
            response.Print();
        }
    }
}

returning as expected

hello
     Instrument PRIMACT_1
0 -> EUR=       1,0882


thanks in advance for any help



Best Answer

  • umer.nalla
    Answer ✓

    Hi @thomas.david

    For RDP Library you can specify a service name

    prices = rdp.StreamingPrices(session = mySession, 
        service = 'ELEKTRON_EDGE',
        universe = ['EUR=','CHF=', 'AED='],
        fields = ['BID', 'ASK','DSPLY_NAME', 'QUOTIM'])

    OR

    new ItemStream.Params().Session(session)
    .Name("EUR=")
    .WithService("ELEKTRON_EDGE")
    .OnRefresh((s, msg) => Console.WriteLine(msg))
    .OnUpdate((s, msg) => Console.WriteLine(msg))
    .OnStatus((s, msg) => Console.WriteLine(msg))))

    So, above I specified the service name ELEKTRON_EDGE.

    In terms of permissions - you will need to discuss with your internal Market Data team or your Refinitiv account manager to get the permissions changed.


Answers

  • Hi @thomas.david,

    Can you please elaborate on the internal contributions part. Does your organization have an in house TREP and/or ATS. Where does this contribution service INTPAR exist and how do other applications access it?

  • Hi @thomas.david

    And do you actually need to use Eikon API because you plan to access some other Eikon (non-realtime) data - or is that something you are already familiar with and hence the reason you want to use it?

    OR does 'a C# / .NET API to consume contribute data from an internal service' sum up your key requirement?

  • Hi @thomas.david,

    EikonDataAPI is a .Net library for use with Eikon Data API. GetData access method is analogous to get_data access method, as documented in Eikon Data API Reference Guide, and does not allow for specification of source, source of data is set to be Elektron.

    Agree with @Gurpreet., If your organization has an Enterprise product that includes access to INTPAR outside of Eikon, you could consider using Enterprise API, such as Elektron API Suite, to consume content from it or if .Net is the preferred approach, then , RFA.NET, to consume content.

    If your organization has market data group or market data admin, they will have the details on your access, or Refinitiv Account team will be able to help with this info.


  • to your question :

    " does 'a C# / .NET API to consume contribute data from an internal service' sum up your key requirement? "

    yes it would, definitely

  • i used to access it with RtGet... checking out with market data admins.

    thx for replying

  • Thx for replying, checking out more adapted APIs and with mk data admin

  • Hi @thomas.david

    Depending on your requirements, and if .NET is the only language you want to use - then as well as RFA.NET - you may also wish to explore the Refinitiv Data Platform library or the Websocket API.

    RDP Library Overview and RDP Intro Article

    Websocket API

    The Websocket API is a raw API based on sending JSON requests to the server and getting back JSON responses. You can use any language that supports Websocket and JSON.

    The RDP Library is an 'ease of use' layer around the Websocket API and is currently in Beta in .NET and Python versions.

    The reason I mention the above is that they are our latest strategic APIs - whereas RFA.NET is feature complete / maintenance mode.

    IF you need to consume several thousand highly active instruments then RFA.NET will most likely be the better fit. However, if you are consuming fewer / less volatile RICs then the RDP Library or Websocket API may be the better choice.

    The Websocket API samples download includes some C# examples.

    The RDP .NET examples are available on GitHub

    Having said all the above, if you are able to use C# or Java then I would recommend you seriously consider using the Elektron Message API which is part of the ElektronSDK

  • thanks again

    RDP seems to offer the great advantage to enable me to try and run locally using desktop access linked to my eikon, while allowing to deploy for subsequent usage that will use other types sessions.

    I tried and tested and got 2 pbs:

    - now my simple example "EUR=","PRIMACT_1" is not working (i get a '403' error as if it wasn"t permitted)

    - anyway, again i have no way to specify the "source". FYI if I use Eikon excel function RT(), i get it by specifying "RTFEED=INTPAR" in the options.