Type | Read/write | Author | Availability |
Read | FINBOURNE | Provided with LUSID |
Providing you have sufficient access control permissions, the Lusid.Fund.ValuationPointData.Fee
provider enables you to write a Luminesce SQL query that retrieves fee accruals applied to a fund at a particular point in time.
Note: To retrieve definitions for fees added to a fund, use the Lusid.Fund.Fee provider.
You should use this provider in conjunction with Lusid.Fund.ValuationPointData to value a fund and calculate GAV, NAV and other pricing data (where NAV is GAV minus accrued fees).
Basic usage
select * from Lusid.Fund.ValuationPointData.Fee
where FundScope = <scope>
and FundCode = <code>
and <date-or-diary-entry>
;
Query parameters
Lusid.Fund.ValuationPointData.Fee
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.Fee' and FieldType = 'Parameter';
Data fields
By default, Lusid.Fund.ValuationPointData.Fee
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.Fee' and FieldType = 'Column';
Note: Fields marked 'main' are returned by queries that select a
^
character, for exampleselect ^ from Lusid.Fund.ValuationPointData.Fee
.
Examples
Note: For more example Luminesce SQL queries, visit our Github repo.
Example 1: Retrieve fee accruals at an arbitrary point in time
You can use the EndDate
parameter to retrieve fee accruals for a fund at an arbitrary point in time.
select * from Lusid.Fund.ValuationPointData.Fee
where FundScope = 'Growth'
and FundCode = 'Equities'
and EndDate = #2024-06-13 17:00:00#
;
Example 2: Retrieve fee accruals at an official valuation point
Publishing an official fund valuation is a workflow with checks and balances, not all of which is possible using Luminesce.
Assuming an accounting diary entry of type ValuationPoint
exists, you can use the DiaryEntryCode
parameter to retrieve fee accruals at an official valuation point.
select * from Lusid.Fund.ValuationPointData.Fee
where FundScope = 'Growth'
and FundCode = 'Equities'
and DiaryEntryCode = '13June2024-5pm-asAt7pm'
;
Example 3: Retrieve GAV, NAV and other pricing data as well as fee accruals
You must specify the same EndDate
or DiaryEntryCode
for this provider and for Lusid.Fund.ValuationPointData in order to retrieve the correct fee accruals.
select
d.*,
f.Amount, f.Code
from
Lusid.Fund.ValuationPointData d
inner 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'
;