Reading and writing LUSID investment data (Lusid.ABC)

You can use the Lusid.* providers supplied by FINBOURNE to interact with investment data stored in LUSID itself.

Providing you have suitable access control permissions, you can:

  • Retrieve entities such as portfolios, instruments and transactions from LUSID—and optionally also properties decorated onto those entities—for analysis.

  • Calculate holdings, valuations and performance returns on demand. You can also access system information such as logs, scopes and property types.

  • Write certain types of investment data back into LUSID. You must construct a valid table of data in your Luminesce query and use a special toWrite parameter on the provider to actually write data to LUSID. The query returns a table indicating whether each record has been successfully upserted or not.

Instruments

See a list of all the supported instrument types. Not all have read/write providers yet.

To interact with...

Read using the ... provider

Write using the ... provider

Instruments of any type (basic definition, not full economic)

Lusid.Instrument

Lusid.Instrument.Writer

Bonds

Lusid.Instrument.Bond

Lusid.Instrument.Bond.Writer

Complex bonds

Lusid.Instrument.ComplexBond

Lusid.Instrument.ComplexBond.Writer

Inflation-linked bonds

Lusid.Instrument.InflationLinkedBond

Lusid.Instrument.InflationLinkedBond.Writer

Amortising loans

Lusid.Instrument.SimpleCashFlowLoan

Lusid.Instrument.SimpleCashFlowLoan.Writer

CapFloors

Lusid.Instrument.CapFloor

Lusid.Instrument.CapFloor.Writer

CFDs

Lusid.Instrument.ContractForDifference

Lusid.Instrument.ContractForDifference.Writer

CDSs

Lusid.Instrument.CreditDefaultSwap

Lusid.Instrument.CreditDefaultSwap.Writer

Equities

Lusid.Instrument.Equity

Lusid.Instrument.Equity.Writer

Equity options

Lusid.Instrument.EquityOption

Lusid.Instrument.EquityOption.Writer

Equity swaps

Lusid.Instrument.EquitySwap

Lusid.Instrument.EquitySwap.Writer

Exchange-traded options

Lusid.Instrument.ExchangeTradedOption

Lusid.Instrument.ExchangeTradedOption.Writer

Forward rate agreements

Lusid.Instrument.ForwardRateAgreement

Lusid.Instrument.ForwardRateAgreement.Writer

Funding legs

Lusid.Instrument.FundingLeg

Lusid.Instrument.FundingLeg.Writer

Fund share classes

Lusid.Instrument.FundShareClass

Lusid.Instrument.FundShareClass.Writer

Futures

Lusid.Instrument.Future

Lusid.Instrument.Future.Writer

FX forwards

Lusid.Instrument.FxForward

Lusid.Instrument.FxForward.Writer

FX options

Lusid.Instrument.FxOption

Lusid.Instrument.FxOption.Writer

FX swaps

Lusid.Instrument.FxSwap

Lusid.Instrument.FxSwap.Writer

Interest rate swaps

Lusid.Instrument.InterestRateSwap

Lusid.Instrument.InterestRateSwap.Writer

Interest rate swaptions

Lusid.Instrument.InterestRateSwaption

Lusid.Instrument.InterestRateSwaption.Writer

Repos

Lusid.Instrument.Repo

Lusid.Instrument.Repo.Writer

Term deposits

Lusid.Instrument.TermDeposit

Lusid.Instrument.TermDeposit.Writer

Simple instruments (no full economic definition)

Lusid.Instrument.SimpleInstrument

Lusid.Instrument.SimpleInstrument.Writer

Portfolios

To interact with...

Read using the ... provider

Write using the ... provider

Portfolios of any kind

Lusid.Portfolio

Lusid.Portfolio.Writer

Input transactions added to a transaction portfolio

Lusid.Portfolio.Txn

Lusid.Portfolio.Txn.Writer

Instrument resolution for transactions and holdings

Lusid.Portfolio.ResolveInstrument

Output transactions

Lusid.Portfolio.Txn.Output

Constituents in a reference portfolio

Lusid.Portfolio.Constituent

Lusid.Portfolio.Constituent.Writer

Holdings in a transaction portfolio

Lusid.Portfolio.Holding

Lusid.Portfolio.Holding.Writer

All the portfolios in a portfolio group

Lusid.PortfolioGroup

Lusid.PortfolioGroup.Writer

Performance returns for portfolios

Lusid.Portfolio.Return

Lusid.Portfolio.Return.Writer

Aggregated performance returns

Lusid.Portfolio.AggregatedReturn

Change history

Lusid.Portfolio.Change

Custodian accounts

Lusid.Portfolio.CustodianAccount

Lusid.Portfolio.CustodianAccount.Writer

Corporate actions

To interact with...

Read using the ... provider

Write using the ... provider

Corporate actions

Lusid.CorporateAction

Lusid.CorporateAction.Writer

Corporate action sources

Lusid.CorporateAction.Source

Lusid.CorporateAction.Source.Writer

Market data

To interact with...

Read using the ... provider

Write using the ... provider

Prices and spot rates in the LUSID Quote Store

Lusid.Instrument.Quote

Lusid.Instrument.Quote.Writer

Valuation and reconciliation

To interact with...

Read using the ... provider

Write using the ... provider

Valuation reports

Lusid.Portfolio.Valuation

A2B reports (PnL)

Lusid.Portfolio.AtoB

Bucketed cash flows

Lusid.Portfolio.BucketedCashFlow

Cash ladders

Lusid.Portfolio.CashLadder

Recipes

Lusid.Valuation.Recipe

Metrics/queryable keys

Lusid.Portfolio.Valuation.Measure

Manifests

Lusid.Logs.Valuations.Manifest

Holding or valuation reconciliations

Lusid.Portfolio.Reconciliation.Generic

Financial reports/fund accounting/ABOR

To interact with...

Read using the ... provider

Write using the ... provider

Funds

Lusid.Fund

Lusid.Fund.Writer

Fund configuration modules

Lusid.FundConfiguration

Lusid.FundConfiguration.Writer

Fund valuation points

Lusid.Fund.ValuationPoint

Lusid.Fund.ValuationPoint.Writer

Fee types

Lusid.FeeType

Lusid.FeeType.Writer

Fees for funds

Lusid.Fund.Fee

Lusid.Fund.Fee.Writer

ABORs (Accounting book of records)

Lusid.Abor

Lusid.Abor.Writer

Accounting diaries in ABORs

Lusid.AccountingDiary

Lusid.AccountingDiary.Writer

ABOR configuration modules

Lusid.AborConfiguration

Lusid.AborConfiguration.Writer

Charts of accounts (CoAs)

Lusid.ChartOfAccounts

Lusid.ChartOfAccounts.Writer

General ledger accounts in CoAs

Lusid.ChartOfAccounts.Account

Lusid.ChartOfAccounts.Account.Writer

Posting modules in CoAs

Lusid.PostingModule

Lusid.PostingModule.Writer

Posting rules in posting modules

Lusid.PostingModule.Rule

Lusid.PostingModule.Rule.Writer

Cleardown modules in CoAs

Lusid.CleardownModule

Lusid.CleardownModule.Writer

Cleardown rules in cleardown modules

Lusid.CleardownModule.Rule

Lusid.CleardownModule.Rule.Writer

General ledger profiles in CoAs

Lusid.GeneralLedgerProfile

Lusid.GeneralLedgerProfile.Writer

Mappings in general ledger profiles

Lusid.GeneralLedgerProfile.Mapping

Lusid.GeneralLedgerProfile.Mapping.Writer

Journal entry lines

Lusid.Abor.JELine

Trial balances

Lusid.Abor.TrialBalance

Fund-level valuation summary (GAV and NAV)

Lusid.Fund.ValuationPointData

Fund-level fee accruals (to calculate NAV from GAV)

Lusid.Fund.ValuationPointData.Fee

Fund-level valuation breakdown

Lusid.Fund.ValuationPointData.Breakdown

Share class-level valuation summary

Lusid.Fund.ValuationPointData.ShareClass

Share class-level valuation breakdown

Lusid.Fund.ValuationPointData.ShareClass.Breakdown

Share class-level fee accruals

Lusid.Fund.ValuatonPointData.ShareClass.Fees

Properties

You can either use the dedicated property providers below, or alternatively configure the entity providers in the tables above to first 'inline' properties and/or identifiers so you can then interact with them in the same way as entity data fields. Tips for using Luminesce to write properties.

To interact with...

Read using the ... provider

Write using the ... provider

Properties on instruments, portfolios, portfolio groups, legal entities and person entities

Lusid.Property

Lusid.Property.Writer

Instrument properties (and market identifiers)

Lusid.Instrument.Property

Not currently available. Use Lusid.Property.Writer instead.

Holding properties

Lusid.Portfolio.Holding.Property

Not available. Use Lusid.Portfolio.Holding.Writer instead, having inlined properties first.

Transaction properties

Lusid.Portfolio.Txn.Property

Lusid.Portfolio.Txn.Property.Writer

Property types and derived property types

Lusid.Property.Definition

Lusid.Property.Definition.Writer

Data types

Lusid.DataType

Lusid.DataType.Writer

Scopes, transaction types, cut labels and calendars

Order management system (OMS)

People, legal entities and relationships

Custom entities

By default, Luminesce knows nothing about your custom entities, so providers for them do not exist out-of-the-box. You must create a read/write provider pair for each type of custom entity you wish to interact with. Find out more about this.

To interact with...

Read using the ... provider

Write using the ... provider

Custom entity types

Lusid.CustomEntity.Definition

Lusid.CustomEntity.Definition.Writer

Access metadata for custom entities

Lusid.CustomEntity.AccessMetadata

Lusid.CustomEntity.AccessMetadata.Writer

Structured Result Store data

To interact with...

Read using the ... provider

Write using the ... provider

Structured result store data

Lusid.UnitResult.StructuredResult

Lusid.UnitResult.StructuredResult.Writer

Atomised results (virtual documents)

Lusid.UnitResult.AtomisedResult

Logs

To interact with...

Read using the ... provider

Write using the ... provider

HTTP 5xx server error responses

Lusid.Logs.Error

HTTP 4xx client error responses

Lusid.Logs.Failure

Requests to any application in the FINBOURNE platform

Lusid.Logs.AppRequest

Successful requests to LUSID only

Lusid.Logs.Request

Request and response contents

Lusid.Logs.RequestResponse

Access requests (policy and license-related failures)

Lusid.Logs.Metrics.Entitlement