Symbology conversion for vessel IMOs

Hi,

I have a list of vessels for which I have the IMO numbers (more than 20,000 vessels) and I would like to get the RICs for these vessels. There seems to be no data item for Vessel RIC and hence Eikon Get Data functionality wont be helpful. RDP search for Vessel Physical assets can be one option but I am not sure how to pass a list as a filter within the arguments. Is that possible? Or is there a way to use symbology conversion to convert the IMOs to RICs.

Best Answer

  • @Sudharsan.Sarathy

    You can use Refinitiv Data Library for Python.

    IMO_List=['9619907', '7313652', '9131034']
    filter_str = 'IMO in ('+' '.join(["'{}'".format(value) for value in IMO_List]) +')'
    rd.discovery.search(
        view = rd.discovery.Views.SEARCH_ALL,
        top = 100,
        filter = filter_str,
        select = "IMO, RIC, AssetName"
    )

    The code above creates a filter string from a list of IMO. Then, it calls the rd.discovery.search method to get the result.

    The output is:

    1674464532754.png

Answers

  • Hi @Sudharsan.Sarathy


    I used the Map app to find a vessel:


    1674139887206.png


    And used its number as a ric in the DIB:


    1674139658391.png


    Is this the kind of info you're after? It shows all the fields available in the RD Library (for Python or other languages) (which is the newer version of the Eikon Data API Library) for that one RIC.

  • @Sudharsan.Sarathy

    You can use the /discovery/search/v1/ endpoint to find RICs from IMOs.

    The query can look like this:

    {
    "View": "SearchAll",
    "Filter": "IMO in ('9619907' '7313652' '9131034')",
    "Select": "IMO, RIC, AssetName"
    }

    The output is:

    1674191749743.png

  • Hi. This works well but the question is how can I pass say a list of IMOs in the filter argument. Currently you have provided a fixed set of vessels. I tried to use an f-string to pass the required list of IMOs but the search query returns null
  • The DIB was helpful to check for the RICs and I can see CF_NETCHNG provides the RIC when I pass an IMO. However when I try to use it in the get_data using rdp library I dont get any results. Currently not using the RD library.


    1674461840598.png

  • This works perfectly fine. Thanks a lot.