Inconsistent behavior requesting Historical Market Depth on futures contracts

requestBody={
"ExtractionRequest": {
"@odata.type": "#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.TickHistoryMarketDepthExtractionRequest",
"ContentFieldNames": [],
"IdentifierList": {
"@odata.type": "#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
"InstrumentIdentifiers": [{ "Identifier": "CLM8", "IdentifierType": "Ric" }],

"ValidationOptions": {
"AllowHistoricalInstruments": "true",
},
"UseUserPreferencesForValidationOptions": "false",
},
"Condition": {
"View": "RawMarketByPrice",
"MessageTimeStampIn": "GmtUtc",
"ReportDateRangeType": "Range",
"QueryStartDate": "2018-04-25T22:00:00.000Z",
"QueryEndDate": "2018-04-26T21:59:59.999Z",
"DisplaySourceRIC": "true"
}
}
}

The above returns

Extraction finished at 2019-02-09 16:42:43 UTC, with servers: tm03n03, TRTH (145.146 secs)
Historical Instrument <RIC,CLM8> expanded to 1 RIC: CLM8.
Total instruments after instrument expansion = 1

and if I simply change the years to 2017 from 2018, I get the following:


Extraction finished at 2019-02-09 16:45:19 UTC, with servers: x03q13
Historical Instrument <RIC,CLM8> expanded to 0 RICS.
Report suppressed because there are no instruments

What am I missing? Both are historical queries...

Best Answer

  • Hi @jwaldron,

    The <CLM8> RIC on Market By Price domain (8) is only valid between 2018-03-24 and 2018-06-10, so you will not get RawMarketByPrice data for 2017.

    You can verify the availability of RICs on specific domains using HistoricalSearch endpoint. The list of available domain code is in the API Reference Tree.

    image

    Request:

    POST Search/HistoricalSearch
    {
    "Request": {
    "Identifier": "CLM8",
    "IdentifierType": "Ric",
    "DomainCodes": [6,8],
    "Range": {
    "Start": "2003-01-01T00:00:00.000Z",
    "End": "2019-02-10T00:00:00.000Z"
    }
    }
    }

    Response:

    {
    "@odata.context": "https://hosted.datascopeapi.reuters.com/RestApi/v1/$metadata#Collection(ThomsonReuters.Dss.Api.Search.HistoricalSearchResult)",
    "value": [
    {
    "Identifier": "CLM8",
    "IdentifierType": "Ric",
    "Source": "",
    "Key": "VjF8MHgzMDAwMDAwMDAwMDAwMDAwfDB4MzAwMDAwMDAwMDAwMDAwMHx8fHx8fHxDTE04fA",
    "Description": "Historical Instrument",
    "InstrumentType": "Unknown",
    "Status": "Valid",
    "DomainCode": "6",
    "FirstDate": "1996-01-01T00:00:00.000Z",
    "LastDate": "2018-06-10T00:00:00.000Z",
    "History": []
    },
    {
    "Identifier": "CLM8",
    "IdentifierType": "Ric",
    "Source": "",
    "Key": "VjF8MHgzMDAwMDAwMDAwMDAwMDAwfDB4MzAwMDAwMDAwMDAwMDAwMHx8fHx8fHxDTE04fA",
    "Description": "Historical Instrument",
    "InstrumentType": "Unknown",
    "Status": "Valid",
    "DomainCode": "8",
    "FirstDate": "2018-03-24T00:00:00.000Z",
    "LastDate": "2018-06-10T00:00:00.000Z",
    "History": []
    }
    ]
    }

Answers

  • Thank you very much for that response... I was able to replicate that information, and now have a feel for how to search this... Are you able to detail how the "domain" compares to "view" in regard to MarketDepth TickHistory? This is what the guide shows as view types for MarketDepth..

    <EnumType Name="TickHistoryMarketDepthViewOptions">

    <Member Name="RawMarketByPrice" Value="0"/>

    <Member Name="RawMarketByOrder" Value="1"/>

    <Member Name="RawMarketMaker" Value="2"/>

    <Member Name="LegacyLevel2" Value="3"/>

    <Member Name="NormalizedLL2" Value="4"/></EnumType>

    A couple of those seem to tie out to domains... but not all... can you point me towards the documentation that would provide some clarity around the differences?

    Thank you

  • @jwaldron,

    Here are some of the domain numbers and corresponding views:

    • 7 - RawMarketByOrder
    • 8 - RawMarketByPrice
    • 9 - RawMarketMaker

    I'm not sure if there are domain numbers for the other two, as they are normalized views.

    This other query might also be of interest to you.

  • @jwaldron,

    The "LegacyLevel2" and "NormalizedLL2" view types use Legacy Level 2 RIC, as a source. The Legacy Level 2 RIC is on MarketPrice domain (6). The RIC's structure is <Level 1 MarketPrice RIC> + <special suffix>, i.e. 0700.HKd.

    Please note that not all RICs support these view types. You will get IdentifierValidationErrors in response when RICs do not support Legacy Level 2.

    You can get the Legacy Level 2 RIC as constituents of a Chain RIC named with "0#" + <Level 1 MarketPrice RIC>, i.e. 0#0700.HK.

    For more information about Level 2 RICs, please see this question. Also, below is the definition of the view types.

    image