A movement has a movement type that controls how it is categorised and when it is applied.
For example, the built-in Buy
transaction type provided with LUSID—intended to signal a purchase of an instrument such as an equity or bond—has two movements:
The first has a movement type of
StockMovement
to update the number of units of the target instrument holding (ie. BP) on the transaction date and the number of settled units on the transaction date.The second has a movement type of
CashCommitment
to create a separate, temporary cash holding on the transaction date, and to update the main cash holding (ie. GBP) on the settlement date. The temporary holding reflects the commitment to settling the transaction.
At the time of writing, the following movement types are available:
Movement type | Effect on holding on transaction date | Effect on holding on settlement date |
---|---|---|
| Updates the number of units in the target instrument holding (with a holding type of | Updates the number of settled units. |
| Creates a temporary cash holding of type | Updates the main cash holding (holding type
Note: There is no functional difference between these three movement types. They simply report activity using different labels on the transaction date. |
| Creates a temporary cash holding of type | |
| Creates a temporary cash holding of type | |
| Creates two temporary cash holdings of type | Updates the main cash holdings (holding type |
| Creates two temporary cash holdings of type | Updates the main cash holdings (holding type |
| This movement type has no effect on the units of a holding. Instead, it can be used to adjust the notional cost basis of a holding in a Future or CFD instrument up or down as part of a mark-to-market valuation strategy for realizing daily PnL. For a demonstration, see this Jupyter Notebook. | |
| These movement types have no effect on a holding. Instead, they can be used to model carry activity in an AtoB report. | |
| ||
| These movement types have no effect on a holding. Instead, they can be used to generate balanced pairs of journal entry lines for an ABOR. | |
|
The following movement types are for advanced use only in conjunction with Technical Support:
Traded
Settlement
The following movement types are now deprecated:
ForwardFx. Please useCashFxForward
.Commitment. Please useCashCommitment
.Receivable. Please useCashReceivable
.Accrual. Please useCashAccrual
.CashSettlement. Please use one ofCashCommitment
,CashReceivable
,CashAccrual
.FutureCash. Please useCashForward
.UnsettledCashTypes. Please use one of theCash*
types.