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. |