Skip to content

Class: QuantityChangeInstruction

Instructions required to create a Quantity Change Primitive Event, which can be either an increase, a decrease or a replacement. An increase adds a new trade lot to the original trade, whereas a decrease subtracts from an existing trade lot's quantity. A replacement updates the quantity of an existing trade lot to the new value.

URI: common_domain_model:QuantityChangeInstruction

 classDiagram
    class QuantityChangeInstruction
    click QuantityChangeInstruction href "../QuantityChangeInstruction/"
      QuantityChangeInstruction : change





        QuantityChangeInstruction --> "1..*" PriceQuantity : change
        click PriceQuantity href "../PriceQuantity/"



      QuantityChangeInstruction : direction





        QuantityChangeInstruction --> "1" QuantityChangeDirectionEnum : direction
        click QuantityChangeDirectionEnum href "../QuantityChangeDirectionEnum/"



      QuantityChangeInstruction : lotIdentifier





        QuantityChangeInstruction --> "*" Identifier : lotIdentifier
        click Identifier href "../Identifier/"



Slots

Name Cardinality and Range Description Inheritance
change 1..*
PriceQuantity
Quantity by which the trade is being increased, decreased or replaced, and th... direct
direction 1
QuantityChangeDirectionEnum
Direction of the quantity change specified as either an increase, decrease or... direct
lotIdentifier *
Identifier
Identifier for the new lot (in case of increase) or for the existing lot to b... direct

Usages

used by used in type used
PrimitiveInstruction quantityChange range QuantityChangeInstruction

In Subsets

Comments

  • Rosetta func: Create_QuantityChange — A specification of the inputs, outputs and constraints when calculating the after state of a Quantity Change Primitive Event
  • Rosetta func: Create_OnDemandRateChangePriceChangeInstruction — Creates a price change instruction for an on-demand rate change, based on a new rate provided as a single number by matching it to a single rate price.

Identifier and Mapping Information

Annotations

property value
rosetta_functions [{"name":"Create_QuantityChange","description":"A specification of the inputs, outputs and constraints when calculating the after state of a Quantity Change Primitive Event","inputs":[{"name":"instruction","type":"QuantityChangeInstruction","cardinality":"1..1"},{"name":"tradeState","type":"TradeState","cardinality":"1..1"}],"output":{"name":"quantityChange","type":"TradeState","cardinality":"1..1"}},{"name":"Create_OnDemandRateChangePriceChangeInstruction","description":"Creates a price change instruction for an on-demand rate change, based on a new rate provided as a single number by matching it to a single rate price.","inputs":[{"name":"priceQuantity","type":"PriceQuantity","cardinality":"1..*"},{"name":"newRate","type":"number","cardinality":"1..1"}],"output":{"name":"quantityChangeInstruction","type":"QuantityChangeInstruction","cardinality":"1..1"}}]

Schema Source

Mappings

Mapping Type Mapped Value
self common_domain_model:QuantityChangeInstruction
native common_domain_model:QuantityChangeInstruction

LinkML Source

Direct

name: QuantityChangeInstruction
annotations:
  rosetta_functions:
    tag: rosetta_functions
    value: '[{"name":"Create_QuantityChange","description":"A specification of the
      inputs, outputs and constraints when calculating the after state of a Quantity
      Change Primitive Event","inputs":[{"name":"instruction","type":"QuantityChangeInstruction","cardinality":"1..1"},{"name":"tradeState","type":"TradeState","cardinality":"1..1"}],"output":{"name":"quantityChange","type":"TradeState","cardinality":"1..1"}},{"name":"Create_OnDemandRateChangePriceChangeInstruction","description":"Creates
      a price change instruction for an on-demand rate change, based on a new rate
      provided as a single number by matching it to a single rate price.","inputs":[{"name":"priceQuantity","type":"PriceQuantity","cardinality":"1..*"},{"name":"newRate","type":"number","cardinality":"1..1"}],"output":{"name":"quantityChangeInstruction","type":"QuantityChangeInstruction","cardinality":"1..1"}}]'
description: Instructions required to create a Quantity Change Primitive Event, which
  can be either an increase, a decrease or a replacement. An increase adds a new trade
  lot to the original trade, whereas a decrease subtracts from an existing trade lot's
  quantity. A replacement updates the quantity of an existing trade lot to the new
  value.
comments:
- 'Rosetta func: Create_QuantityChange  A specification of the inputs, outputs and
  constraints when calculating the after state of a Quantity Change Primitive Event'
- 'Rosetta func: Create_OnDemandRateChangePriceChangeInstruction  Creates a price
  change instruction for an on-demand rate change, based on a new rate provided as
  a single number by matching it to a single rate price.'
in_subset:
- cdm_event_common
from_schema: https://w3id.org/lmodel/common-domain-model
slots:
- change
- direction
- lotIdentifier
slot_usage:
  lotIdentifier:
    name: lotIdentifier
    description: Identifier for the new lot (in case of increase) or for the existing
      lot to be changed(in case of decrease or replacement). This optional attribute
      is mandatory in case of a decrease or replacement if the initial trade state
      contains multiple trade lots.
    multivalued: true

Induced

name: QuantityChangeInstruction
annotations:
  rosetta_functions:
    tag: rosetta_functions
    value: '[{"name":"Create_QuantityChange","description":"A specification of the
      inputs, outputs and constraints when calculating the after state of a Quantity
      Change Primitive Event","inputs":[{"name":"instruction","type":"QuantityChangeInstruction","cardinality":"1..1"},{"name":"tradeState","type":"TradeState","cardinality":"1..1"}],"output":{"name":"quantityChange","type":"TradeState","cardinality":"1..1"}},{"name":"Create_OnDemandRateChangePriceChangeInstruction","description":"Creates
      a price change instruction for an on-demand rate change, based on a new rate
      provided as a single number by matching it to a single rate price.","inputs":[{"name":"priceQuantity","type":"PriceQuantity","cardinality":"1..*"},{"name":"newRate","type":"number","cardinality":"1..1"}],"output":{"name":"quantityChangeInstruction","type":"QuantityChangeInstruction","cardinality":"1..1"}}]'
description: Instructions required to create a Quantity Change Primitive Event, which
  can be either an increase, a decrease or a replacement. An increase adds a new trade
  lot to the original trade, whereas a decrease subtracts from an existing trade lot's
  quantity. A replacement updates the quantity of an existing trade lot to the new
  value.
comments:
- 'Rosetta func: Create_QuantityChange  A specification of the inputs, outputs and
  constraints when calculating the after state of a Quantity Change Primitive Event'
- 'Rosetta func: Create_OnDemandRateChangePriceChangeInstruction  Creates a price
  change instruction for an on-demand rate change, based on a new rate provided as
  a single number by matching it to a single rate price.'
in_subset:
- cdm_event_common
from_schema: https://w3id.org/lmodel/common-domain-model
slot_usage:
  lotIdentifier:
    name: lotIdentifier
    description: Identifier for the new lot (in case of increase) or for the existing
      lot to be changed(in case of decrease or replacement). This optional attribute
      is mandatory in case of a decrease or replacement if the initial trade state
      contains multiple trade lots.
    multivalued: true
attributes:
  change:
    name: change
    description: Quantity by which the trade is being increased, decreased or replaced,
      and the price at which such quantity change is agreed. The quantity change should
      always be specified as a positive number, with the direction (increase/decrease/replacement)
      being specified by the direction enumeration. A fee can also be associated to
      the quantity change by specifying a Price component of type CashPrice, including
      the corresponding settlement date and direction.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: QuantityChangeInstruction
    domain_of:
    - QuantityChangeInstruction
    range: PriceQuantity
    required: true
    multivalued: true
    inlined: true
    inlined_as_list: true
  direction:
    name: direction
    description: Direction of the quantity change specified as either an increase,
      decrease or replacement.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: QuantityChangeInstruction
    domain_of:
    - QuantityChangeInstruction
    - DirectionRating
    range: QuantityChangeDirectionEnum
    required: true
  lotIdentifier:
    name: lotIdentifier
    description: Identifier for the new lot (in case of increase) or for the existing
      lot to be changed(in case of decrease or replacement). This optional attribute
      is mandatory in case of a decrease or replacement if the initial trade state
      contains multiple trade lots.
    from_schema: https://w3id.org/lmodel/common-domain-model
    rank: 1000
    owner: QuantityChangeInstruction
    domain_of:
    - ExecutionInstruction
    - QuantityChangeInstruction
    - TradeLot
    range: Identifier
    multivalued: true