Package cdm.product.template
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
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceBuilder Interfacestatic classBuilder Implementation of InitialMarginstatic classImmutable Implementation of InitialMargin -
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionbuild()Build Methodsbuilder()List<? extends InitialMarginCalculation> Initial margin calculation for a collateral asset.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.An element defining the type of assets (cash or securities) specified to apply as margin to the repo transaction.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.default Class<? extends InitialMargin> getType()default com.rosetta.model.lib.meta.RosettaMetaData<? extends InitialMargin> metaData()Utility Methodsdefault voidprocess(com.rosetta.model.lib.path.RosettaPath path, com.rosetta.model.lib.process.Processor processor) Methods inherited from interface com.rosetta.model.lib.RosettaModelObject
processRosetta, processRosetta
-
Field Details
-
metaData
-
-
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:
buildin interfacecom.rosetta.model.lib.RosettaModelObject
-
toBuilder
InitialMargin.InitialMarginBuilder toBuilder()- Specified by:
toBuilderin interfacecom.rosetta.model.lib.RosettaModelObject
-
builder
-
metaData
Utility Methods- Specified by:
metaDatain interfacecom.rosetta.model.lib.RosettaModelObject
-
getType
- Specified by:
getTypein interfacecom.rosetta.model.lib.RosettaModelObject
-
process
default void process(com.rosetta.model.lib.path.RosettaPath path, com.rosetta.model.lib.process.Processor processor) - Specified by:
processin interfacecom.rosetta.model.lib.RosettaModelObject
-