I'm using DSS API dlls to fetch a list of Rics from a list of Isins.
However, the DSS API is fetching the first row from the list. But how to know if it is the right one?
My code:
var extractionRequest = new TermsAndConditionsExtractionRequest { IdentifierList = InstrumentIdentifierList.Create(instrumentIdentifierList, null, false), ContentFieldNames = new[] { "RIC", "Trading Status" } }; var extractedRows = ExtractionsContext.Extract(extractionRequest).ToArray();
What DDS API is fetching:
From Datascope Select:
In the list above, there are 3 RICs but the API is fetching only the first one.
Is this the right one?
How to know it?
From my checking, BRBMEFBGI5M6 can be mapped to the following RICs: [BGIU20, 1BGIU20, 2BGIU20].
Refer to the ISIN to RIC conversion with the DSS (DataScope Select) REST API article, TermsAndConditionsExtractionRequest can be used to retrieve a primary RIC for an ISIN.
To get all RICs for an ISIN, you need to use other endpoints, such as SearchContext.InstrumentSearch.
For example:
{ "SearchRequest": { "InstrumentTypeGroups": [ "CollatetizedMortgageObligations", "Commodities", "Equities", "Funds", "FuturesAndOptions", "GovCorp", "Money", "MortgageBackedSecurities", "Municipals" ], "IdentifierType": "Isin", "Identifier": "BRBMEFBGI5M6", "PreferredIdentifierType": "Ric" } }
The above request returns:
"value": [ { "Identifier": "1BGIU20", "IdentifierType": "Ric", "Source": "BMF", "Key": "VjF8MHgwMDEwMGIwMDFmNTYwNzg3fDB4MDAxMDBiMDAxZjU2MDc4OHxCTUZ8REVSVnxERVJWfEZVVHxEfHwxQkdJVTIwfDUwNTU", "Description": "BGI OTFCTPL", "InstrumentType": "Derivative", "Status": "Valid" }, { "Identifier": "2BGIU20", "IdentifierType": "Ric", "Source": "BMF", "Key": "VjF8MHgwMDEwMGIwMDFmNTYwNzg3fDB4MDAxMDBiMDAxZjU2MGVjMHxCTUZ8REVSVnxERVJWfEZVVHxEfHwyQkdJVTIwfDU0MTg", "Description": "BGI OTFCTPL", "InstrumentType": "Derivative", "Status": "Valid" }, { "Identifier": "BGIU20", "IdentifierType": "Ric", "Source": "BMF", "Key": "VjF8MHgwMDEwMGIwMDFmNTYwNzg3fDB4MDAxMDBiMDAxZjU2MTA4YnxCTUZ8REVSVnxERVJWfEZVVHxEfHxCR0lVMjB8NTQxOA", "Description": "BGI OTFCTPL", "InstrumentType": "Derivative", "Status": "Valid" } ]
For more information, please refer to REST API Reference Tree.
@jirapongse.phuriphanvichai
"Refer to the ISIN to RIC conversion with the DSS (DataScope Select) REST API article, TermsAndConditionsExtractionRequest can be used to retrieve a primary RIC for an ISIN."
Article:
"A TermsAndConditionsExtractionRequest delivers for each input ISIN the primary RIC (except if you specified the source, see next section). It is also possible to retrieve the currency and exchange code.
A single call suffices for multiple ISINs."
My code:
In the line below, I'm using TermsAndConditionsExtractionRequest as mentioned in this post.
var extractionRequest = new TermsAndConditionsExtractionRequest { IdentifierList = InstrumentIdentifierList.Create(instrumentIdentifierList, null, false),//<- instrumentIdentifierList, validationOptions, useUserPreferencesForValidationOptions ContentFieldNames = new[] { "RIC", "Trading Status" } }; var extractedRows = ExtractionsContext.Extract(extractionRequest).ToArray();
However, it is not fetching for the primary RIC.