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

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials

question

Upvotes
Accepted
1 0 2 3

How to get expiry detail for future spreads using DSS REST API

I can get futures expiries for RIC chain "0#CL:" using

https://selectapi.datascope.refinitiv.com/RestApi/v1/Search/FuturesAndOptionsSearch

with payload like

payload = "{
  
  "SearchRequest": {
  
  "FileCodes": null,
  "CurrencyCodes": null,
  "ExchangeCodes": ["NYM"],
  "AssetStatus": "Active",
  "StrikePrice": null,
  "ExpirationDate": null,
  "IdentifierType": "RICRoot",
  "Identifier": "CL",
  "FuturesAndOptionsType": "Futures"
  }
}"

How do I get expiries for future spreads like "0#CL-1M:"?

dss-rest-apidatascope-selectsearchspread
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.

@una.keller

Hi,

Thank you for your participation in the forum.

Are any of the replies below satisfactory in resolving your query?

If yes please click the 'Accept' text next to the most appropriate reply. This will guide all community members who have a similar question.

Otherwise please post again offering further insight into your question.

Thanks,

AHS

Hi @una.keller,

Please be informed that a reply has been verified as correct in answering the question, and has been marked as such.


Thanks,

AHS

Upvotes
Accepted
32.2k 40 11 20

Hello @una.keller ,

Test TermsAndConditions request:

{
                {protocol}}{
                {host}}{
                {api}}Extractions/ExtractWithNotes
{
    "ExtractionRequest": {
        "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.TermsAndConditionsExtractionRequest",
        "ContentFieldNames": [
           "RIC", "CUSIP", "ISIN", "SEDOL", "Issuer OrgID", "Currency Code","Expiration Date"
        ],
        "IdentifierList": {
            "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
            "InstrumentIdentifiers": [
             
                 { "Identifier": "0#CL-1M:", "IdentifierType": "ChainRIC" }
             
            ]
        }
    }
}

results on my side:

{
    "@odata.context": "https://selectapi.datascope.refinitiv.com/RestApi/v1/$metadata#DataScope.Select.Api.Extractions.ExtractionRequests.ExtractionResult",
    "Contents": [
        {
            "IdentifierType": "ChainRIC",
            "Identifier": "0#CL-1M:",
            "RIC": "CLH2-J2",
            "CUSIP": null,
            "ISIN": null,
            "SEDOL": null,
            "Issuer OrgID": null,
            "Currency Code": "USD",
            "Expiration Date": "2022-02-22"
        },
    {
            "IdentifierType": "ChainRIC",
            "Identifier": "0#CL-1M:",
            "RIC": "CLJ2-K2",
            "CUSIP": null,
            "ISIN": null,
            "SEDOL": null,
            "Issuer OrgID": null,
            "Currency Code": "USD",
            "Expiration Date": "2022-03-22"
        },
        {
            "IdentifierType": "ChainRIC",
            "Identifier": "0#CL-1M:",
            "RIC": "CLK2-M2",
            "CUSIP": null,
            "ISIN": null,
            "SEDOL": null,
            "Issuer OrgID": null,
            "Currency Code": "USD",
            "Expiration Date": "2022-04-20"
        },
...

If this is what you are looking for(?), you can find more information on T&C by reviewing REST API Tutorial 7: On Demand T&C extraction and tune request fully toward your requirements.


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 20

Hello @una.keller ,

Try specifying ExpirationDate:

{
    "SearchRequest": {
"FileCodes": null,
"CurrencyCodes": null,
"ExchangeCodes": ["NYM"],
"AssetStatus": "Active",
"StrikePrice": null,
        "ExpirationDate": {
            "@odata.type": "#DataScope.Select.Api.Search.DateValueComparison",
            "ComparisonOperator": "GreaterThanEquals",
            "Value": "2016-12-31T00:00:00.000Z"
        },
"IdentifierType": "RICRoot",
"Identifier": "CL",
"FuturesAndOptionsType": "Futures"

}
}

is the result :

{
    "@odata.context": "https://selectapi.datascope.refinitiv.com/RestApi/v1/$metadata#Collection(DataScope.Select.Api.Search.FuturesAndOptionsSearchResult)",
    "value": [
        {
            "Identifier": "CLM2",
            "IdentifierType": "Ric",
            "Source": "NYM",
            "Key": "VjF8MHgwMDEwMGIwMDI5MTZhMWFifDB4MDAxMDBiMDAwOWEzZGY0M3xOWU18RFZRVXxERVJWfEZVVHxEfHxDTE0yfDUwMzQ",
            "Description": "LIGHT CRUDE JUN2",
            "InstrumentType": "DerivativeQuote",
            "Status": "Valid",
            "ExchangeCode": "NYM",
            "CurrencyCode": "USD",
            "FuturesAndOptionsType": "Futures",
            "PutCallCode": "",
            "ExpirationDate": "2022-05-20T00:00:00.000Z",
            "AssetStatus": "Active"
        },
...

what you are looking for?


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 2 3

@zoya faberov I'm looking for the output to include Futures Spread. Example chain RIC is "0#CL-1M:". The RICs will look like the following

CLZ2-F3

CLK2-V2

CLX1-F2

Your output is showing the standard Futures contracts. I am able to return the standard Future contracts with the payload I added in the original question.

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.