Lusid.Fund.ValuationPointData

Type

Read/write

Author

Availability

Data provider

Read

FINBOURNE

Provided with LUSID

Providing you have sufficient access control permissions, the Lusid.Fund.ValuationPointData provider enables you to write a Luminesce SQL query that retrieves a fund valuation at a point in time.

This provider retrieves a fund-level summary of GAV and NAV only. You can join this provider to others to retrieve more information:

Basic usage

You must specify an end date that is either:

select * from Lusid.Fund.ValuationPointData
where FundScope = <scope> 
and FundCode = <code>
and <date-or-diary-entry>
;

Query parameters

Lusid.Fund.ValuationPointData has parameters that enable you to filter or refine a query.

To list available parameters, their data types, default values, and an explanation for each, run the following query using a suitable tool:

select FieldName, DataType, ParamDefaultValue, Description from Sys.Field where TableName = 'Lusid.Fund.ValuationPointData' and FieldType = 'Parameter';

Data fields

By default, Lusid.Fund.ValuationPointData returns a table of data populated with particular fields (columns). You can return a subset of these fields.

To list fields available to return, their data types, whether fields are considered 'main', and an explanation for each, run the following query using a suitable tool:

select FieldName, DataType, IsMain, IsPrimaryKey, SampleValues, Description from Sys.Field where TableName = 'Lusid.Fund.ValuationPointData' and FieldType = 'Column';

Note: Fields marked 'main' are returned by queries that select a ^ character, for example select ^ from Lusid.Fund.ValuationPointData.

Examples

Note: For more example Luminesce SQL queries, visit our Github repo.

Example 1: Generate an ad-hoc fund valuation

You can value a fund at an arbitrary point in time using the EndDate parameter. Note no data is persisted using this method.

select * from Lusid.Fund.ValuationPointData
where FundScope = 'Growth'
and FundCode = 'Equities'
and EndDate = #2024-06-13 17:00:00#
;

Example 2: Publish and persist an official fund valuation at a point in time

This operation is part of a workflow with checks and balances, not all of which is possible using Luminesce.

You must first create an accounting diary entry of type ValuationPoint using the Lusid.Fund.ValuationPoint.Writer provider. You then use the DiaryEntryCode parameter to generate an estimate for the fund value at that point in time.

select * from Lusid.Fund.ValuationPointData
where FundScope = 'Growth'
and FundCode = 'Equities'
and DiaryEntryCode = '13June2024-5pm-asAt7pm'
;

Note the remainder of this operation to finalise and persist data must be performed using LUSID.

Example 3: Additionally retrieve fund-level fee accruals

You can join this provider to Lusid.Fund.ValuationPointData.Fee in order to additionally retrieve fund-level fee accruals. Note you must specify the same EndDate or DiaryEntryCode for both providers.

select
    d.*,
    f.Amount, f.Code
from
    Lusid.Fund.ValuationPointData d
    left join Lusid.Fund.ValuationPointData.Fee f
        on d.FundScope = f.FundScope
        and d.FundCode = f.FundCode
where
    d.FundScope = 'Growth'
    and d.FundCode = 'Equities' 
    and d.DiaryEntryCode = '13June2024-5pm-asAt7pm'
    and f.DiaryEntryCode = '13June2024-5pm-asAt7pm'
;