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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials

question

Upvotes
Accepted
1 0 0 5

Get opening quote price for all identifiers for each trading day

Hi everyone,


It seems like that when I do an API call to TickMarketDepthData with a list of identifiers, I don't get/see all identifiers in the API response. Could there be that some identifiers don't trade on specific days, so there is no price change and hence there are no mentions of those identifiers in the results? If that is the case, is there a way I could get the Opening price for each identifier for each trading day through some other API endpoints?


Example of the issue I mentioned above:


list_of_identifiers = [{'Identifier': 'ES1000C8', 'IdentifierType': 'Ric'},
                       {'Identifier': 'ES1000F8', 'IdentifierType': 'Ric'},
                       {'Identifier': 'ES1000I7', 'IdentifierType': 'Ric'}]
result = trth.extractions.tick_market_depth_data(
            identifiers=list_of_identifiers,
            fields=['Ask Price', 'Bid Price'],
            start=dt.datetime(2017, 9, 14),
            end=dt.datetime(2017, 9, 15)
            levels=3,
         )
print(result.text) => this will return only market data for {'Identifier': 'ES1000I7', 'IdentifierType': 'Ric'}
pythontick-history-rest-apipython apimarket-depthmarket
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
Accepted
32.2k 40 11 19

Hi @ivan.lovrencic ,

Looking into the results for these instruments on my side with ValidationOptions (I have run naked request with Postman, as it was quicker) - there appears to have been a HALT in trading on the first two instruments on that day:

#RIC,Domain,Date-Time,GMT Offset,Type,MsgClass/FID number,UpdateType/Action,FID Name,FID Value,FID Enum String,PE Code,Template Number,Key/Msg Sequence Number,Alias Underlying RIC,Market Depth RIC,Number of FIDs
ES1000C8,Market Price,2017-09-14T20:15:00.158552622Z,-5,Legacy Level 2,UPDATE,UNSPECIFIED,,,,4269,,336,,ES1000C8m,2
,,,,FID,6517,,HALT_REASN,0,
,,,,FID,6615,,HALT_RSN,0,"  "
ES1000C8,Market Price,2017-09-14T20:29:30.125826671Z,-5,Legacy Level 2,UPDATE,UNSPECIFIED,,,,4269,,352,,ES1000C8m,2
,,,,FID,6517,,HALT_REASN,0,
,,,,FID,6615,,HALT_RSN,0,"  "

In my understanding, this should be the reason why there was no BIDs and ASKs, to learn more you may wish to engage with Refinitiv content experts directly vi Refinitiv Helpdesk Online -> Content -> DSS

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
32.2k 40 11 19

Hello @ivan.lovrencic ,

All 3 instruments appear to be historical, in the Extraction Notes I see

"...\nHistorical Instrument <RIC,ES1000C8> expanded to 1 RIC: ES1000C8.\nHistorical Instrument <RIC,ES1000F8> expanded to 1 RIC: ES1000F8.\nHistorical Instrument <RIC,ES1000I7> expanded to 1 RIC: ES1000I7.\nTotal instruments after instrument expansion = 3..."

Therefore, ValidationOptions are required to request:

{
  "ExtractionRequest": {
    "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.TickHistoryMarketDepthExtractionRequest",
    "ContentFieldNames": [
      "Ask Price",
      "Ask Size",
      "Bid Price",
      "Bid Size"
    ],
    "IdentifierList": {
      "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",  
      "InstrumentIdentifiers": [
      {     "Identifier": "ES1000C8",     "IdentifierType": "Ric"  },
      {     "Identifier": "ES1000F8",     "IdentifierType": "Ric"   },
      {     "Identifier": "ES1000I7", "IdentifierType": "Ric"}
      ],
      "ValidationOptions": {
                "AllowHistoricalInstruments": true,
                "AllowInactiveInstruments": true
            },
            "UseUserPreferencesForValidationOptions": false
        },
    "Condition": { ...

With .NET SDK:

 IdentifierList = InstrumentIdentifierList.Create(
                new[]
               
                    new InstrumentIdentifier { Identifier = "ES1000C8", IdentifierType = IdentifierType.Ric }
                }, 
                new InstrumentValidationOptions
               
                    AllowHistoricalInstruments = true
                }, 
                false),

Find more detail on .NET SDK in Refinitiv DSS C# Example Application


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
1 0 0 5

Hi @zoya faberov , thank you so much for your fast reply!


I added these fields to my request, but unfortunately, it did not help. For some reason, the last identifier is still the only one that returns some data, while the first two don't show up in the response.


Does it work for you? Maybe, it's something with my code.

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.