Interface InitialMargin

All Superinterfaces:
com.rosetta.model.lib.RosettaModelObject
All Known Subinterfaces:
InitialMargin.InitialMarginBuilder
All Known Implementing Classes:
InitialMargin.InitialMarginBuilderImpl, InitialMargin.InitialMarginImpl

@RosettaDataType(value="InitialMargin", builder=InitialMarginBuilderImpl.class, version="5.30.0") @RuneDataType(value="InitialMargin", model="cdm", builder=InitialMarginBuilderImpl.class, version="5.30.0") public interface InitialMargin extends com.rosetta.model.lib.RosettaModelObject
Defines initial margin applied to a repo transaction. Initial margin is an agreed premium to the Purchase Price of a repo to determine the required Market Value of the collateral to be delivered on the Purchase Date. It reflects quality of the collateral. Its aim is to calculate the risk-adjusted or liquidation value of collateral.
Version:
5.30.0
  • Field Details

  • Method Details

    • getMarginType

      MarginTypeEnum getMarginType()
      An element defining the type of assets (cash or securities) specified to apply as margin to the repo transaction. See GMRA 2011 paragraph 2(h) for 'Cash Margin' and GMRA 2011 paragraph 2(cc) for 'Margin Securities'.
    • getMargin

      List<? extends InitialMarginCalculation> getMargin()
      Initial margin calculation for a collateral asset. Initial margin requirements may be specified for multiple pieces of collateral.
    • getMarginThreshold

      Money getMarginThreshold()
      An element defining a margin threshold which is the Net Exposure of a trade below which parties agree they will not call a margin from each other.
    • getMinimumTransferAmount

      Money getMinimumTransferAmount()
      An element defining a minimum transfer amount which is the minimum margin call parties will make once the margin threshold (or margin ratio threshold / haircut threshold) has been exceeded.
    • build

      InitialMargin build()
      Build Methods
      Specified by:
      build in interface com.rosetta.model.lib.RosettaModelObject
    • toBuilder

      Specified by:
      toBuilder in interface com.rosetta.model.lib.RosettaModelObject
    • builder

    • metaData

      default com.rosetta.model.lib.meta.RosettaMetaData<? extends InitialMargin> metaData()
      Utility Methods
      Specified by:
      metaData in interface com.rosetta.model.lib.RosettaModelObject
    • getType

      @RuneAttribute("@type") default Class<? extends InitialMargin> getType()
      Specified by:
      getType in interface com.rosetta.model.lib.RosettaModelObject
    • process

      default void process(com.rosetta.model.lib.path.RosettaPath path, com.rosetta.model.lib.process.Processor processor)
      Specified by:
      process in interface com.rosetta.model.lib.RosettaModelObject