Indexed Performance Charts

Overview

This documentation details the necessary steps to obtain the Lipper indexed performance data from the DataApi in order to generate a chart such as the performance charts found on THE Library digital factsheets.

Sample chart from THE Library digital factsheet.

Request Guidelines

All requests discussed within this documentation should follow the guidelines set out within the Data Distribution API documentation. As such all requests should be accompanied by an Accept header (preferably application/json), and a Bearer Authorization header specifying an approved api key.

Obtaining Ids

In the example above, there are three datasets:

  • Security: 7IM AAP Adventurous Class A Income
  • Benchmark: FTSE All-Share TR
  • IA Sector: Flexible Investment

Assuming a user starts without DataApi ids, but has either an ISIN or SEDOL code for the security in question, the first step would be to find the DataApi ids for each of the datasets This can be done via the securities endpoint, by using one of the following requests:

/Securities?sedol=B2PB238
/Securities?isin=GB00B2PB2382
The resulting response contains a variety of data about the security identified by the requested ISIN/SEDOL. The data needed for the next step of this process is:
  • The top-level Id property: bf4d7f39-5d03-432f-a0dc-de6df810dd09
  • The ids of relevant benchmarks in the PerformanceData/LipperPerformance/Details object:
    "Details": {
        "BenchmarkId": "73a800fa-54b2-4277-89be-800716bb9f64",
        "LipperCode": "65109738",
        "PrimaryUnitLipperCode": "65109739",
        "Currency": "UK Pence",
        "CurrencyCode": "GBX",
        "IaSectorId": "bf2d671d-d71a-4eed-acbc-8587fe2a4f1c",
        "GlobalSectorId": "0d2bd2c7-10ce-45bc-a65e-9c2aba0370f2",
        "UkOffshoreSectorId": null,
        "AbiSectorId": null
    }
    More data (including the name of the dataset) for each benchmark, can be obtained by making a request to the benchmarks endpoint:
    /Benchmarks?id=73a800fa-54b2-4277-89be-800716bb9f64

Obtaining performance data

In order to obtain the required performance data, the user must have the DataApi id for each desired dataset, to obtain these ids refer to the previous section, Obtaining Ids.

In the example above, there are three datasets, identified by the following ids:

bf4d7f39-5d03-432f-a0dc-de6df810dd09
73a800fa-54b2-4277-89be-800716bb9f64
bf2d671d-d71a-4eed-acbc-8587fe2a4f1c

For each of the ids, a request must be made to the LipperIndexedPerformance endpoint, in line with the relevant documentation.

Due to a compatibility issue, OData requests to the LipperIndexedPerformance endpoint currently do not support $filter or $orderby clauses which reference the DataPerformance/SampleDate value. As a result the recommended method for obtaining graph data is to filter only on the security id, and then carry out any additional filtering/ordering client-side.