---
title: "Understanding how LUSID calculates derived property values"
slug: "understanding-how-lusid-calculates-derived-property-values"
updated: 2026-03-18T16:08:40Z
published: 2026-03-18T16:08:40Z
canonical: "support.lusid.com/understanding-how-lusid-calculates-derived-property-values"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://support.lusid.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Understanding how LUSID calculates derived property values

You can call the [GetDerivedFormulaExplanation](https://www.lusid.com/docs/api/lusid/endpoints/property-definitions/GetDerivedFormulaExplanation/) API to audit LUSID’s calculation of a particular derived property value, but the LUSID web app offers the best experience.

Consider the following example, of a `Holding/MyDPs/Summary` derived property with the following [formula](/v1/docs/derivation-formulas-part-1-operations-and-allowed-values):

`concat(units, ' in instrument ', Properties[Instrument/default/Name], ' at a cost of ', cost.amount)`

We might examine the **Portfolio Management > Holdings** dashboard configured to show this derived property for a particular portfolio and see the following result:

![](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/image-ALUF1NO3.png)

If **By tax lots** were enabled, we might see a breakdown of individual transactions:

![](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/image-X8RS9JJL.png)

You can right-click on any derived property value and choose **Explain** to understand how LUSID calculated it:

![](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/image-LNE9CQ2S.png)

You can audit the calculation in either **Graph** view:

![](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/image-6K5QIKCB.png)

…or in **Code** view:

![](https://cdn.document360.io/d575ad81-c0ed-4980-bbd1-d59ac5c3de82/Images/Documentation/image-O7ET5U4H.png)

Note that if you *do* call the `GetDerivedFormulaExplanation` API for a `Holding` derived property then you must specify the `subEntityId` field with a holding ID. You can optionally add a tax lot ID for a position or a temporary cash holding using the syntax `&lt;holding-id&gt;:&lt;tax-lot-id&gt;`, for example:

```json
{
  "entityType": "Holding",
  "scope": "MyPortfolioScope",
  "code": "MyPortfolioCode",
  "subentityId": "78605785:Txn03/Side2",
  "propertyKey": "Holding/MyDPs/Summary"
}
```
