question

Upvotes
Accepted
1 0 0 0

Is there a way to map PermID to all the RICs associated to that company, if a company is listed in multiple stock exchanges.

Q1 I am trying to match PermID to RIC in API Playground and wanted to know if there’s a way to Identify all stock exchange listings for a particular group ? For example NIKE is listed in NYSE and ETR Stock exchanges but when I pass Nike’s PermID it only gives one output.

  1. Is the mapping between PermID and RIC is one to one or one to many ?
  2. Is there a way to know PermIDs of all the publicly listed companies residing under one Group by providing in that group’s PermID ? For Example: We might get RICs of all the companies that are publicly listed under TATA group globally, by just providing TATA Group’s PermID.
#technologypermid-apisymbologyapi-playground
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvote
Accepted
261 2 0 2

Hi


If you have access to discovery/symbology/v1 in API PLayground (depends what other services you subscribe to) you can use a query like this to navigate from organisation PermID to the related exchange traded RIC:


{

"from": [

{

"objectTypes": [

"organization"

],

"identifierTypes": [

"PermID"

],

"values": [

"4298007752"

]

}

],

"to": [

{

"objectTypes": [

"EDFQuote"

],

"identifierTypes": [

"RIC"

]

}

],

"filter": {

"status": "active"

},

"type": "auto"

}


Active filter will remove the expired RICs form the results.

To objectTypes 'EDFQuote' will limit output to exchange traded RICs, leave this out and it will include e.g RICs of bond instruments issued by the organisation

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
78.6k 248 52 74

@arun.mani

Thank you for reaching out to us.

I assume that you are using the Open PermID API.

Yes, one PermID should be one to one mapped to a RIC. I am using the the Open PermID Python library to verify it. For example:

output,err = opid.search("RIC:NKE.N", entityType='quote', num=100, format='dataframe')
output

1706168119651.png

The quote PermID (https://permid.org/1-55838324417) is mapped to NKE.N.

I think we don't have the group's PermID.

You can use a ticker to map to multiple RICs. For example, the PermID of "Nike Inc" is 1-4295904620.

We can get the ticker of this company by using the lookup API.

output,err = opid.lookup("1-4295904620", orient="row", format='dataframe')
output["hasOrganizationPrimaryQuote"]

The value of the hasOrganizationPrimaryQuote property is https://permid.org/1-55838324417.

Then, we use the lookup API with 1-55838324417.

output,err = opid.lookup("1-55838324417", orient="row", format='dataframe')
output["tr-fin:hasExchangeTicker"]

The value of the tr-fin:hasExchangeTicker property is NKE.

Finally, we use the Entity Search API to search all Quote permIDs of this ticker.

output,err = opid.search("ticker:NKE", entityType='quote', num=100, format='dataframe')
output[output["assetClass"]=="Ordinary Shares"]

1706169146682.png

RICs for this ticker are in the hasRIC property.


1706168119651.png (26.0 KiB)
1706169146682.png (70.2 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.