For a deeper look into our DataScope Select REST API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials

question

Upvotes
Accepted
11 5 6 9

DSS Composite extraction request give one Ric for each Instrument

I am using below extraction request which is currently giving just Instrument and one Ric market with the pricing option values. But somehow this logic is incorrect. Normally for one company(Instrument) there will be more than one markets. For example when i checked from the DSS gui for ISIN "CA0679011084", we received below markets:

1643790783929.png


How can i achieve this result using composite extraction request ? Below is my extraction request in which when i pass one ISIN "CA0679011084" its returning just one market :


CA0679011084,3348623,3420466,26.774204682,66732329.762991406,,,1779285869,


requestBody = {
    "ExtractionRequest": {
        "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.CompositeExtractionRequest",
        "ContentFieldNames": [
            "ISIN","Average Volume - 30 Days","Average Volume - 90 Days","Close on Close Volatility - 90 Days","Dollar Daily Value Average - 30 Days","CESR Free Float","CRA Free Float","Outstanding Shares - Issue Shares Amount","Outstanding Shares - Other Shares Amount"
        ],
        "IdentifierList": {
            "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
            "InstrumentIdentifiers": [{
                "Identifier": "CA0679011084",
                "IdentifierType": "Isin"
            }]
        },
        "Condition": {
            "ScalableCurrency": "true"
        }
    }
}


Below is my python code:composite_extratcion_request.txt



dss-rest-apidssdss-gui
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.

@Gurpreet Its regarding the same composite extraction request where i am just getting one market per ISIN which is incorrect...Can you please help here..thanks..

1 Answer

Upvotes
Accepted
286 3 2 5

@rahul.deshmukh Hi Rahul, the screenshot at the top is from a DSS Search endpoint, therefore you get results as Search does not impact usage.

As the Composite is a Extraction and usage will be applicable, generally DSS selects a single RIC for use for Pricing fields to limit the results.

If you were wanting to get back records for all Sources probably what you are after is to have in the requestBody:

            "InstrumentIdentifiers": [{
                "Identifier": "CA0679011084",
                "IdentifierType": "Isin",
                "Source": "*",
            }]

RIC is a Pricing-level Identifier which already defines the Source. Using the ISIN with the Source using the * wildcard will expand the ISIN (instrument-level) to include all price sources (RICs).

Best regards,

Gareth

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.

@gteage thanks for the feedback...its working now and giving the result with all the markets for given Instrument
@gteage currently for 630 Instruments i am getting almost more than 100k rows returned...I dont know if it also includes Valid and updated markets ...do i have to provide additional option in the extraction requeststo restrict the data with maybe valid and updated markets ?

@rahul.deshmukh

Hi Rahul, generally speaking Equity RICs when they are inactive get renamed with a end syntax of ^ for showing listed then a period code + year digit, eg. inactive/delisted RIC: SER1f.TBEA^H21 associated to ISIN: CA71677J1012, also the Trading Status of the quote should be be 0 (inactive) for RIC which contain the ^ syntax.

If you need a parameter that would only include the Active only you can explicitly set this in the validation options*: AllowInactiveInstruments option set to false limits to active 'valid' only, and true to include active/delisted, example attached Example.Request.txt - example attached does not allow inactive instruments.

(* I'm not sure but on testing without any Validation Options specified at all it appears that the default may be set to include the inactive RICs with ^ and Trading Status = 0.)

Best regards,

Gareth

examplerequest.txt (1.7 KiB)

I am getting as error as :

"AllowInactiveInstruments": false

NameError: name 'false' is not defined


May be its not allowed to use this option for composite extraction request?


"IdentifierList": {
            "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
            "InstrumentIdentifiers": [
                {
                    "Identifier": "CA71677J1012",
                    "IdentifierType": "Isin",
                    "Source": "*"
                }
            ],

        "ValidationOptions": {
                "AllowInactiveInstruments": false
            },
        "UseUserPreferencesForValidationOptions": false
        },
        "Condition": {
            "ScalableCurrency": "true"
        }
Show more comments