A reference list in LUSID is a repository of data that can contain:
A series of... | For example, if you want to... |
Strings | Store a list of asset classes. |
Portfolios or portfolio groups | Store a list of portfolios to exclude from a compliance rule. |
Instruments | Store a list of instruments to exclude from a particular compliance rule. |
Funds | Store a list of funds to exclude from a compliance rule. |
Properties or address keys | Store a list of instrument properties that should exist to pass a compliance check. |
Decimals | Store a list of upper and lower bounds that an order should remain within. |
All reference lists in LUSID have a scope and a code forming a unique ID. Currently, you can pass one or more reference list IDs into various LUSID compliance rules to ensure the rule checks against the values in the list. For example, you can:
Set up a compliance rule that checks orders do not comprise of instruments of a particular set of asset classes.
Set up a compliance rule that checks orders contain a list of required properties, such as the country of origin.
Specify a reference list of portfolios within a compliance rule to exclude those in the list from the rule.
You can also use reference lists for other LUSID operations, such as to specify a list of portfolios to create valuation reports for.
There are several ways to create reference lists in LUSID:
Use the APIs in the ReferenceLists collection to create your own reference lists and load them with data.
Use the dashboard in the LUSID web app to create your own reference lists.
Use dedicated Luminesce providers to create your own reference lists (coming soon).
How do I create a reference list?
Providing you are a LUSID user with sufficient privileges, you can create a reference list to store a collection of values.
Method 1: Using the LUSID REST API
Method 2: Using the LUSID web app
Method 3: Using the dedicated Luminesce provider (coming soon)
Using the LUSID REST API
Currently, you can create one reference list per API call.
Call the UpsertReferenceList API, passing in:
A
scope
andcode
that together uniquely identify the reference list.A user-friendly
name
and optionaldescription
for the reference list.Any
tags
for the reference list.One
referenceListType
out of the following options, and an array ofvalues
to populate the reference list with:PortfolioGroupIdList
: takes in an array ofscope
andcode
pairs that uniquely identify portfolio groups.PortfolioIdList
: takes in an array ofscope
andcode
pairs that uniquely identify portfolios.PropertyList
: takes in an array of propertykey
andvalue
pairs that uniquely identify properties.AddressKeyList
: takes in an array of strings containing keys that uniquely identify a queryable address (such as a metric) in LUSID.FundIdList
: takes in an array ofscope
andcode
pairs that uniquely identify funds.InstrumentList
: takes in an array of strings containing instrument identifiers of any type.StringList
: takes in an array of strings.DecimalList
: takes in an array of doubles.
The following example creates (or updates if it already exists) a reference list of portfolios:
curl -X POST
"https://<your-domain>.lusid.com/api/api/referencelists"
-H "Content-Type: application/json-patch+json"
-H "Authorization: Bearer <your-API-access-token>"
-d "{
"id": {
"scope": "Finbourne-Examples",
"code": "Uk-Portfolios"
},
"name": "UkPortfoliosReferenceList",
"description": "Reference list containing the scope and code of all my UK portfolios",
"tags": [
"portfolio",
"uk"
],
"referenceList": {
"values": [
{
"scope": "Finbourne-Examples",
"code": "PortfolioUk"
},
{
"scope": "Finbourne-Examples",
"code": "Uk-Equities"
}
],
"referenceListType": "PortfolioIdList"
}
}"
Once you have created a reference list, you could include the scope
and code
when creating a compliance rule to, for example, exclude the portfolios in the reference list from being checked by a particular rule. See how to create a compliance rule.
Using the LUSID web app
Sign in to the LUSID web app using the credentials of a LUSID administrator.
From the top left menu, select Compliance > Rule Manager.
Select the Reference Lists tab and click the Create reference list button:
On the Create Reference List screen, specify:
A unique Scope and Code.
A friendly Display Name and Description.
Any Tags for the reference list.
A reference List Type.
A set of items, depending on your List Type, to include in your reference list.
Click the Create button to save your reference list.