Getting information for RIC code of an option via API

ns3481
ns3481 Newcomer

Hi Team,

I have venue by day files with RIC tick history data for options. For a particular option ID, I'm looking for an algorithmic way to obtain the information such as:
1. Expiration date
2. Asset Type (Futures/Options/Indices...)
3. Put/call flag
4. Strike Price


For instance, for SPXw182242500 I get the data when I manually look it up in RIC lookup here:
https://developers.refinitiv.com/en/tools-catalog/ric-search

But have have thousands of RIC, soI just want to perform that lookup via API (python). Could you please help?

Thanks!

Welcome!

It looks like you're new here. Sign in or register to get started.

Best Answer

  • Jirapongse
    Jirapongse ✭✭✭✭✭
    Answer ✓

    @ns3481

    You can use the TermsAndConditionsExtractionRequest extraction with the Extractions/ExtractWithNotes endpoint to get those information.

    The request looks like this:

    {
        "ExtractionRequest": {
            "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.TermsAndConditionsExtractionRequest",
            "ContentFieldNames": [
               "Series Description","MiFID Option Type","Contract Month and Year","Strike Price"
            ],
            "IdentifierList": {
                "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
                "InstrumentIdentifiers": [               
                    { "Identifier": "SPXl182686000.U", "IdentifierType": "Ric" }
                ]
            }
        }
    }

    The output is:

     "Contents": [
            {
                "IdentifierType": "Ric",
                "Identifier": "SPXl182686000.U",
                "Series Description": "OPRA S&P 500 Index Option",
                "MiFID Option Type": "CALL",
                "Contract Month and Year": "DEC2026",
                "Strike Price": 8600
            }
        ],

    To use the TermsAndConditionsExtractionRequest with multiple items, please refer to the Extraction Limits by Report Template.

    1657610881762.png

Answers

  • Hi @ns3481

    Can you please confirm which Refinitiv Products you have access to?

    I can access the fields shown on the RIC Search page for 'SPXw182242500.U' using the WebSocket API (or other streaming API) connected to our real-time streaming feeds.

    I can also access the above using the RD Library connected to the above real-time service or to the desktop Eikon (or Workspace) application.

  • ns3481
    ns3481 Newcomer

    Hi Umer,

    I have access to Refinitiv Tickhistory (RTH) database. I guess that's REST API?

    Thanks!.

  • Hi @ns3481

    Yes that's a REST API - you can find tutorials etc at RTH Tutorials | Refinitiv Developers

    You can find examples, including Python ones at Downloads | Refinitiv Developers

    I am not a Content expert, so cannot confirm if all the above-required fields would be available in the Tick History database.


  • ns3481
    ns3481 Newcomer

    Thanks Umer. But I don't need all that. my ask is very simple.


    I have an option code such as this: 'SPXl182686000.U' and I want to get the description (Name), which I can get manually from the RIC search list as follows:
    OPRA S&P 500 Index Option 8600 Call Dec 2026

    But I have millions of such RIC codes and I want an algorithmic way to get its description (Name). Surely there must be a way to get it?

    I know the construction of these RIC and can construct them (first three digit is SPC, little l means a December call, ... but it's not clean and I don't know whether the strike price is 8600 or 860 or 86000, so I want to pass the RIC and get the description. I have access to data scope and REST API, maybe other things. Can you please suggest some ways I can get the info, just RIC -> Name mapping?


    Thanks!


  • ns3481
    ns3481 Newcomer

    @Jirapongse , thank you very much. This works for me for now. I don't get Mifid Option type and contract month, but I can use the option RIC for that. I do get the strike price. That's great and works for me for now.

    Thank you so much, I was trying to figure this out for the past few days.

Welcome!

It looks like you're new here. Sign in or register to get started.

Welcome!

It looks like you're new here. Sign in or register to get started.