PrimitiveInstruction
Type CDM 7.2.0A Primitive Instruction describes the inputs required to pass into the corresponding PrimitiveEvent function.
Attributes
All 13 declared on PrimitiveInstruction. Cardinality in amber is required.
| Name | Type | Card. | Description |
|---|---|---|---|
| contractFormation | ContractFormationInstruction | 0..1 | Specifies instructions describing an contract formation primitive event. |
| execution | ExecutionInstruction | 0..1 | Specifies instructions describing an execution primitive event. |
| exercise | ExerciseInstruction | 0..1 | Specifies instructions describing an exercise primitive event. |
| partyChange | PartyChangeInstruction | 0..1 | Specifies instructions describing a party change primitive event. |
| quantityChange | QuantityChangeInstruction | 0..1 | Specifies instructions describing an quantity change primitive event. |
| reset | ResetInstruction | 0..1 | Specifies instructions describing a reset event. |
| split | SplitInstruction | 0..1 | Specifies instructions to split a trade into multiple branches. |
| termsChange | TermsChangeInstruction | 0..1 | Specifies instructions describing a terms change primitive event. |
| transfer | TransferInstruction | 0..1 | Specifies instructions describing a transfer primitive event. |
| indexTransition | IndexTransitionInstruction | 0..1 | Specifies inputs needed to process a Index Transition business event. |
| stockSplit | StockSplitInstruction | 0..1 | Specifies inputs needed to process a Stock Split business event. |
| observation | ObservationInstruction | 0..1 | Specifies inputs needed to process an observation. |
| valuation | ValuationInstruction | 0..1 | Specifies inputs needed to process an update of a valuation. |
Referenced by
3 types hold a PrimitiveInstruction as an attribute.
Functions
Model functions that produce or consume this type. These are the CDM's own behaviour — the logic a correct implementation has to match.
| Function | Role | Description |
|---|---|---|
| Create_RollPrimitiveInstruction | returns | Creates the primitive instructions for a trade roll. A trade roll consists in closing an existing trade and entering into a new one which has the same characteristics as the old one, except with an extended termination date and (possibly) a different price. |
| Create_OnDemandRateChangePrimitiveInstruction | returns | Creates a full primitive instruction for an on-demand rate change event. A rate change consists in closing the original trade and opening a new one with the same details as the original one, but with a new rate (price) and effective date. The business event logic checks that there is only 1 rate price in the original trade to be updated. |
| Create_CancellationPrimitiveInstruction | returns | Creates a primitive instruction for early cancellation. |
| Create_ShapingInstruction | returns | Creates a set of instructions to shape a trade based on shaped quantities and a package ID. The original trade is closed and split into (smaller) shaped trades based on a set of trade lots containing the shaped quantities and an identifier for each shaped trade. A package component is created based on the package ID and the list of identifiers for the shaped trades. That package component is then added onto the execution details of every shaped trade. |
| Create_PartialDeliveryPrimitiveInstruction | returns | Creates the primitive instruction for partial delivery of a repo transaction at settlement. |
| Create_RepricePrimitiveInstruction | returns | Creates the primitive instructions for a repricing that alters the cash amount of the trade. Transaction value and variation margin are processed separately as are transfers of cash and securities. |
| Create_AdjustmentPrimitiveInstruction | returns | Creates the primitive instructions for a repricing that alters the collateral quantity and value of the trade. Transaction value and variation margin are processed separately as are transfers of cash and securities. |
| Create_SubstitutionPrimitiveInstruction | returns | Creates the primitive instructions for a substitution of collateral by replacing the assetpayout of the trade. |
| Create_OnDemandInterestPaymentPrimitiveInstruction | returns | An instruction to make a interium interest payment by adding a payout leg to the deal. |
| Create_TerminationInstruction | returns | Creates the relevant primitive instruction for a termination, which consists in a quantity change to bring the quantity to zero. |
| MapPrimitiveInstruction | returns | — |
| MapTradeToPrimitiveInstruction | returns | — |
| Create_Split | takes | Defines the logic for splitting a trade into separate copies. The split instruction contains a breakdown into N set of primitive instructions. Each set contains the primitive instructions to be applied to each post-split trade, eventually producing N trades. The split function underpins a number of business events such as clearing or allocation. |
| NewTradeInstructionOnlyExists | takes | — |
| Create_TradeState | takes | — |
Showing 12 of each. All 1286 functions →
Open PrimitiveInstruction in the Model Browser
Walk the tree and the reference graph interactively, and switch releases to see how the type has changed. Free, no signup.