Unable to get Lotsize from Refinitiv Data libraries as without using Eikon Workspace

I am using Refinitiv Data Platform libraries and using the Python module 'refinitiv-data'. I am trying this on Codebook and also on my local machine(windows).


I am working on Getting data for the commodities and looking for the unit of measure of the commodity spot. I am unable to map it to any of the existing API fields that are provided in the codebook metadata file.


image

I have a got a response from the Refinitiv contact(Dave Stewart) that I can use LotsZUNIT2 to fetch the field, but I am getting an integer value 29 instead of getting the value LBS.


image


I have been asked to raise it in this Developer portal to get the expert's advice.

Best Answer

  • Jirapongse
    Jirapongse ✭✭✭✭✭
    Answer ✓

    @shouldcost

    Thanks for reaching out to us.

    When using the platform.rdp session, you can use the below code to get the data.

    stream = rd.open_pricing_stream(
        universe=['/SBc1'],
        fields=['LOTSZUNITS']
    )
    stream.get_snapshot()

    The output is:

    1682571666945.png

    I hope that this information is of help.

Answers

  • Hi @Jirapongse


    Thanks for you answer. I have tried to use the field to get the data. I was unable to get information for the fields in my RIC list. I did not get any data for them


    I even tried the example that you have shown in your screenshot. I have below response instead of LBS. Please let me know if I am doing anything wrong in here. I am just trying in codebook not even in my local editor.


    1682575465831.png


  • Jirapongse
    Jirapongse ✭✭✭✭✭

    @shouldcost

    I checked and found that the desktop session and codebook return the enumerated value (29), not the expanded string (LBS). This could be a limitation of the desktop session and codebook.

    The workaround could be loading the data dictionary files (RDMFieldDictionary and enumtype.def) to expand the enumerated fields.

    You can use the code (RDMFieldDictionary.py) on GitHub.

    1682584507593.png

    Rename the RDMFieldDictionary file to RDMFieldDictionary.txt and the enumtype.def to enumtype.def.txt.

    For example:

    %run ./RDMFieldDictionary.py
    dict = RDMFieldDictionary("RDMFieldDictionary.txt", "enumtype.def.txt")
    stream = rd.open_pricing_stream(
    universe=['/SBc1'],
    fields=['LOTSZUNITS']
    )
    df = stream.get_snapshot()
    dict.GetExpanedEnumString("LOTSZUNITS",df["LOTSZUNITS"][0])

    The output is:

    1682584665338.png