A holding is the amount of an instrument held in a portfolio at a point in time. The LUSID Movements Engine calculates holdings from the history of Transactions and Holding Adjustments in a portfolio.

The calculation of holdings is controlled by the SubHoldingKeys configured for the portfolio. This allows, for example, a portfolio to be configured to segregate holdings based on a “Strategy” tag.

A holding can be of the following types: -

  • Position - A holding in an instrument
  • Cash Balance - A cash balance
  • Cash Commitment - Future cash payment from the portfolio
  • Cash Receivable - Future cash flow into the portfolio
  • Forward FX - One side of an FX Forward trade (similiar to a Cash Commitment/Receivable but valuated using forward rates instead of spot rates)

Holdings have the following fields:

Field Type Description
InstrumentUid string The unique Lusid Instrument Id (LUID) of the instrument that the holding is in.
SubHoldingKeys map The sub-holding properties which identify the holding. Each property will be from the 'Transaction' domain. These are configured when a transaction portfolio is created.
Properties map The properties which have been requested to be decorated onto the holding. These will be from the 'Instrument' or 'Holding' domain.
HoldingType string The type of the holding e.g. Position, Balance, CashCommitment, Receivable, ForwardFX etc.
Units decimal The total number of units of the holding.
SettledUnits decimal The total number of settled units of the holding.
Cost currencyandamount The total cost of the holding in the transaction currency.
CostPortfolioCcy currencyandamount The total cost of the holding in the portfolio currency.
Transaction transaction The transaction associated with an unsettled holding.