EOD price at a specific stock exchange

Hi,

I would like to get EOD price at a specific stock exchange. Is there anyway to do that?
Maybe using Isin + stock exchange code?
How should the request be sent?

Thank you very much in advance

Best Answer

  • Hello @modaresi,

    You could do this in two seps:

    1. First, identify the RIC, that is specific to exchange, via Search
    2. Second request an Extraction of that RIC, request EOD

    Identify the RIC:

    You can run a generic InstrumentSearch for your Isin and from the results, select the RIC that you require, for example:

    {{protocol}}{{host}}{{api}}Search/InstrumentSearch

    {
      "SearchRequest": {
        "InstrumentTypeGroups": [
          "CollatetizedMortgageObligations",
          "Commodities",
          "Equities",
          "FuturesAndOptions",
          "GovCorp",
          "MortgageBackedSecurities",
          "Money",
          "Municipals",
          "Funds"
        ],
        "IdentifierType": "Isin",
        "Identifier": "US4592001014",
        "PreferredIdentifierType": "Ric"
      }
    }

    Yields various RICs that can be used to extract:

    ...
    {
                "Identifier": "IBM.TH",
                "IdentifierType": "Ric",
                "Source": "THM",
                "Key": "VjF8MHgwMDAzZGQwMDEzNzlkNDYwfDB4MDAwM2RjMDA0ODNmMDRhY3xUSE18RVFRVXxFUVRZfE9EU0h8RXx8SUJNLlRIfDAxNzQ",
                "Description": "INTERNATIONAL BUSINESS MACHINES ORD",
                "InstrumentType": "EquityQuote",
                "Status": "Valid"
            },
            {
                "Identifier": "IBM.D",
                "IdentifierType": "Ric",
                "Source": "DUS",
                "Key": "VjF8MHgwMDAzZGQwMDEzNzlkNDYwfDB4MDAwM2RjMDA0ODY3MWNlY3xEVVN8RVFRVXxFUVRZfE9EU0h8RXx8SUJNLkR8MDEwMw",
                "Description": "INTERNATIONAL BUSINESS MACHINES ORD",
                "InstrumentType": "EquityQuote",
                "Status": "Valid"
            },
            {
                "Identifier": "IBM.P",
                "IdentifierType": "Ric",
                "Source": "PSE",
                "Key": "VjF8MHgwMDAzZGQwMDEzNzlkNDYwfDB4MDAwM2RjMDA0OGEzMzgwY3xQU0V8RVFRVXxFUVRZfE9EU0h8RXx8SUJNLlB8MDExNg",
                "Description": "INTERNATIONAL BUSINESS MACHINES ORD",
                "InstrumentType": "EquityQuote",
                "Status": "Valid"
            },
        ...

    If you know the instrument type of your instrument, you can run a type-specific search, see

    REST API Reference Tree for the spec on all available. If, for example, you know that the instrument is Equity, you can run Equity Search and pass Exchange identifier in:

    {{protocol}}{{host}}{{api}}Search/EquitySearch

    {
        "SearchRequest": {
            "AssetStatus": "Active",
            "AssetCategoryCodes": null,
            "SubTypeCodes": null,
            "CurrencyCodes": null,
            "CompanyName": null,
            "Description": null,
            "DomicileCodes": null,
            "ExchangeCodes": [ "PAR", "SWX" ],
            "FairValueIndicator": null,
            "FileCodes": null,
            "GicsCodes": null,
            "OrgId": null,
            "Ticker": "IBM",
            "Identifier": null,
            "IdentifierType": null,
            "PreferredIdentifierType": null
        }
    }

    Once you have the RIC for the exchange at hand, you can request EOD for the required exchange:

    {{protocol}}{{host}}{{api}}Extractions/ExtractWithNotes

    {
      "ExtractionRequest": {
        "@odata.type": "#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.EndOfDayPricingExtractionRequest",
        "ContentFieldNames": [
          "Ask Price",
          "Asset Category",
          "Asset Category Description",
          "Asset ID",
          "Asset Status",
          "Asset Status Description",
          "Asset SubType",
          "Asset SubType Description",
          "Asset Type",
          "Asset Type Description",
          "Bid Price",
          "RIC"
        ],
        "IdentifierList": {
          "@odata.type": "#ThomsonReuters.Dss.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
          "InstrumentIdentifiers": [
            { "Identifier": "IBM.N", "IdentifierType": "Ric" }
           
          ]
        }
      }
    }

    In case you are new to the API, including tutorials that you may find helpful:

    REST API Tutorial 11: Search by Instrument

    REST API Tutorial 2: On Demand End of Day Extraction



Answers

  • Hi @modaresi,

    The suffix part of RIC indicates the exchange where that price information comes from. So, if you use RIC as an identifier, in your DSS queries, then that price information will be from the exchange specified in the RIC.

    E.g. IBM.N implies that get the quote for IBM on NYSE, AAPL.O means get Apple quote from NASDAQ.

    There are many DSS endpoints that can provide end of day pricing information. Please see the REST API help or use the DSS.NET sample application.