LUSID C# SDK
Public Member Functions | Protected Member Functions | Properties | List of all members
Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent Class Reference

Event representing the partial closure of a repurchase agreement. Each event reduces the outstanding notional and generates a corresponding receive-leg cashflow. The final maturity cashflow is adjusted accordingly. If multiple events are created, their effects compound. Once the total repaid amount reaches the original purchase price, no further receive-leg cashflows are generated. Any event exceeding the remaining notional is marked with a diagnostic to indicate it is invalid due to excessive repayment. For example, for a repo with a 5% rate, 1% haircut and collateral value of 100 (purchase price = 99), a partial closure of cash amount 10 followed by one of 100 results in only the first event producing a cashflow. The second, exceeding the remaining balance, is ignored and flagged with a diagnostic. The remaining balance is settled at maturity of the repurchase agreement. Specific to a FlexibleRepo instrument. More...

Inheritance diagram for Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent:
Inheritance graph
[legend]

Public Member Functions

 FlexibleRepoPartialClosureEvent (DateTimeOffset entitlementDate=default(DateTimeOffset), DateTimeOffset settlementDate=default(DateTimeOffset), decimal amount=default(decimal), string amountType=default(string), List< PartialClosureConstituent > partialClosureConstituents=default(List< PartialClosureConstituent >), InstrumentEventTypeEnum instrumentEventType=default(InstrumentEventTypeEnum))
 Initializes a new instance of the FlexibleRepoPartialClosureEvent class. More...
 
override string ToString ()
 Returns the string presentation of the object More...
 
override string ToJson ()
 Returns the JSON string presentation of the object More...
 
override bool Equals (object input)
 Returns true if objects are equal More...
 
bool Equals (FlexibleRepoPartialClosureEvent input)
 Returns true if FlexibleRepoPartialClosureEvent instances are equal More...
 
override int GetHashCode ()
 Gets the hash code More...
 
- Public Member Functions inherited from Lusid.Sdk.Model.InstrumentEvent
 InstrumentEvent (InstrumentEventTypeEnum instrumentEventType=default(InstrumentEventTypeEnum))
 Initializes a new instance of the InstrumentEvent class. More...
 
override string ToString ()
 Returns the string presentation of the object More...
 
override bool Equals (object input)
 Returns true if objects are equal More...
 
bool Equals (InstrumentEvent input)
 Returns true if InstrumentEvent instances are equal More...
 
override int GetHashCode ()
 Gets the hash code More...
 

Protected Member Functions

 FlexibleRepoPartialClosureEvent ()
 Initializes a new instance of the FlexibleRepoPartialClosureEvent class. More...
 
IEnumerable< System.ComponentModel.DataAnnotations.ValidationResult > BaseValidate (ValidationContext validationContext)
 To validate all properties of the instance More...
 
- Protected Member Functions inherited from Lusid.Sdk.Model.InstrumentEvent
 InstrumentEvent ()
 Initializes a new instance of the InstrumentEvent class. More...
 
IEnumerable< System.ComponentModel.DataAnnotations.ValidationResult > BaseValidate (ValidationContext validationContext)
 To validate all properties of the instance More...
 

Properties

DateTimeOffset EntitlementDate [get, set]
 Required property. The date on which the counterparties become entitled to exchange cash as part of a partial closure of the repurchase agreement. The date must be before or on the settlement date, and on or before the maturity date of the repo. This is a required field, unless otherwise supplied via &quot;EventDateStamps&quot; in the instrument event upsert request. More...
 
DateTimeOffset SettlementDate [get, set]
 Required property. The date on which the exchange of cash is settled. The date must be on or after the entitlement date, and on or before the maturity date of the repo. This is a required field, unless otherwise supplied via &quot;EventDateStamps&quot; in the instrument event upsert request. More...
 
decimal Amount [get, set]
 The amount of cash to be exchanged as part of a partial closure of the repurchase agreement. Either the absolute cash amount or a percentage of the remaining amount, depending on the AmountType. More...
 
string AmountType [get, set]
 AmountType of the cash amount to be exchanged as part of a partial closure of the repurchase agreement. Either percentage or absolute cash amount. Available values: Percentage, Units. More...
 
List< PartialClosureConstituentPartialClosureConstituents [get, set]
 List of the collateral instruments involved in this partial closure, along with how they are affected. More...
 
- Properties inherited from Lusid.Sdk.Model.InstrumentEvent
InstrumentEventTypeEnum InstrumentEventType [get, set]
 The Type of Event. Available values: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent, FutureMarkToMarketEvent, AdjustGlobalCommitmentEvent, ContractInitialisationEvent, DrawdownEvent, LoanInterestRepaymentEvent, UpdateDepositAmountEvent, LoanPrincipalRepaymentEvent, DepositInterestPaymentEvent, DepositCloseEvent, LoanFacilityContractRolloverEvent, RepurchaseOfferEvent, RepoPartialClosureEvent, RepoCashFlowEvent, FlexibleRepoInterestPaymentEvent, FlexibleRepoCashFlowEvent, FlexibleRepoCollateralEvent, ConversionEvent, FlexibleRepoPartialClosureEvent, FlexibleRepoFullClosureEvent, CapletFloorletCashFlowEvent, EarlyCloseOutEvent, DepositRollEvent, ConsentEvent, DrawingEvent, CapitalGainsDistributionEvent. More...
 

Additional Inherited Members

- Public Types inherited from Lusid.Sdk.Model.InstrumentEvent
enum class  InstrumentEventTypeEnum {
  TransitionEvent = 1 , InformationalEvent = 2 , OpenEvent = 3 , CloseEvent = 4 ,
  StockSplitEvent = 5 , BondDefaultEvent = 6 , CashDividendEvent = 7 , AmortisationEvent = 8 ,
  CashFlowEvent = 9 , ExerciseEvent = 10 , ResetEvent = 11 , TriggerEvent = 12 ,
  RawVendorEvent = 13 , InformationalErrorEvent = 14 , BondCouponEvent = 15 , DividendReinvestmentEvent = 16 ,
  AccumulationEvent = 17 , BondPrincipalEvent = 18 , DividendOptionEvent = 19 , MaturityEvent = 20 ,
  FxForwardSettlementEvent = 21 , ExpiryEvent = 22 , ScripDividendEvent = 23 , StockDividendEvent = 24 ,
  ReverseStockSplitEvent = 25 , CapitalDistributionEvent = 26 , SpinOffEvent = 27 , MergerEvent = 28 ,
  FutureExpiryEvent = 29 , SwapCashFlowEvent = 30 , SwapPrincipalEvent = 31 , CreditPremiumCashFlowEvent = 32 ,
  CdsCreditEvent = 33 , CdxCreditEvent = 34 , MbsCouponEvent = 35 , MbsPrincipalEvent = 36 ,
  BonusIssueEvent = 37 , MbsPrincipalWriteOffEvent = 38 , MbsInterestDeferralEvent = 39 , MbsInterestShortfallEvent = 40 ,
  TenderEvent = 41 , CallOnIntermediateSecuritiesEvent = 42 , IntermediateSecuritiesDistributionEvent = 43 , OptionExercisePhysicalEvent = 44 ,
  OptionExerciseCashEvent = 45 , ProtectionPayoutCashFlowEvent = 46 , TermDepositInterestEvent = 47 , TermDepositPrincipalEvent = 48 ,
  EarlyRedemptionEvent = 49 , FutureMarkToMarketEvent = 50 , AdjustGlobalCommitmentEvent = 51 , ContractInitialisationEvent = 52 ,
  DrawdownEvent = 53 , LoanInterestRepaymentEvent = 54 , UpdateDepositAmountEvent = 55 , LoanPrincipalRepaymentEvent = 56 ,
  DepositInterestPaymentEvent = 57 , DepositCloseEvent = 58 , LoanFacilityContractRolloverEvent = 59 , RepurchaseOfferEvent = 60 ,
  RepoPartialClosureEvent = 61 , RepoCashFlowEvent = 62 , FlexibleRepoInterestPaymentEvent = 63 , FlexibleRepoCashFlowEvent = 64 ,
  FlexibleRepoCollateralEvent = 65 , ConversionEvent = 66 , FlexibleRepoPartialClosureEvent = 67 , FlexibleRepoFullClosureEvent = 68 ,
  CapletFloorletCashFlowEvent = 69 , EarlyCloseOutEvent = 70 , DepositRollEvent = 71 , ConsentEvent = 72 ,
  DrawingEvent = 73 , CapitalGainsDistributionEvent = 74
}
 The Type of Event. Available values: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent, FutureMarkToMarketEvent, AdjustGlobalCommitmentEvent, ContractInitialisationEvent, DrawdownEvent, LoanInterestRepaymentEvent, UpdateDepositAmountEvent, LoanPrincipalRepaymentEvent, DepositInterestPaymentEvent, DepositCloseEvent, LoanFacilityContractRolloverEvent, RepurchaseOfferEvent, RepoPartialClosureEvent, RepoCashFlowEvent, FlexibleRepoInterestPaymentEvent, FlexibleRepoCashFlowEvent, FlexibleRepoCollateralEvent, ConversionEvent, FlexibleRepoPartialClosureEvent, FlexibleRepoFullClosureEvent, CapletFloorletCashFlowEvent, EarlyCloseOutEvent, DepositRollEvent, ConsentEvent, DrawingEvent, CapitalGainsDistributionEvent. More...
 

Detailed Description

Event representing the partial closure of a repurchase agreement. Each event reduces the outstanding notional and generates a corresponding receive-leg cashflow. The final maturity cashflow is adjusted accordingly. If multiple events are created, their effects compound. Once the total repaid amount reaches the original purchase price, no further receive-leg cashflows are generated. Any event exceeding the remaining notional is marked with a diagnostic to indicate it is invalid due to excessive repayment. For example, for a repo with a 5% rate, 1% haircut and collateral value of 100 (purchase price &#x3D; 99), a partial closure of cash amount 10 followed by one of 100 results in only the first event producing a cashflow. The second, exceeding the remaining balance, is ignored and flagged with a diagnostic. The remaining balance is settled at maturity of the repurchase agreement. Specific to a FlexibleRepo instrument.

Constructor & Destructor Documentation

◆ FlexibleRepoPartialClosureEvent() [1/2]

Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.FlexibleRepoPartialClosureEvent ( )
inlineprotected

Initializes a new instance of the FlexibleRepoPartialClosureEvent class.

◆ FlexibleRepoPartialClosureEvent() [2/2]

Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.FlexibleRepoPartialClosureEvent ( DateTimeOffset  entitlementDate = default(DateTimeOffset),
DateTimeOffset  settlementDate = default(DateTimeOffset),
decimal  amount = default(decimal),
string  amountType = default(string),
List< PartialClosureConstituent partialClosureConstituents = default(List<PartialClosureConstituent>),
InstrumentEventTypeEnum  instrumentEventType = default(InstrumentEventTypeEnum) 
)
inline

Initializes a new instance of the FlexibleRepoPartialClosureEvent class.

Parameters
entitlementDateRequired property. The date on which the counterparties become entitled to exchange cash as part of a partial closure of the repurchase agreement. The date must be before or on the settlement date, and on or before the maturity date of the repo. This is a required field, unless otherwise supplied via &quot;EventDateStamps&quot; in the instrument event upsert request..
settlementDateRequired property. The date on which the exchange of cash is settled. The date must be on or after the entitlement date, and on or before the maturity date of the repo. This is a required field, unless otherwise supplied via &quot;EventDateStamps&quot; in the instrument event upsert request..
amountThe amount of cash to be exchanged as part of a partial closure of the repurchase agreement. Either the absolute cash amount or a percentage of the remaining amount, depending on the AmountType. (required).
amountTypeAmountType of the cash amount to be exchanged as part of a partial closure of the repurchase agreement. Either percentage or absolute cash amount. Available values: Percentage, Units. (required).
partialClosureConstituentsList of the collateral instruments involved in this partial closure, along with how they are affected. (required).
instrumentEventTypeThe Type of Event. Available values: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent, FutureMarkToMarketEvent, AdjustGlobalCommitmentEvent, ContractInitialisationEvent, DrawdownEvent, LoanInterestRepaymentEvent, UpdateDepositAmountEvent, LoanPrincipalRepaymentEvent, DepositInterestPaymentEvent, DepositCloseEvent, LoanFacilityContractRolloverEvent, RepurchaseOfferEvent, RepoPartialClosureEvent, RepoCashFlowEvent, FlexibleRepoInterestPaymentEvent, FlexibleRepoCashFlowEvent, FlexibleRepoCollateralEvent, ConversionEvent, FlexibleRepoPartialClosureEvent, FlexibleRepoFullClosureEvent, CapletFloorletCashFlowEvent, EarlyCloseOutEvent, DepositRollEvent, ConsentEvent, DrawingEvent, CapitalGainsDistributionEvent. (required) (default to "FlexibleRepoPartialClosureEvent").

Member Function Documentation

◆ BaseValidate()

IEnumerable<System.ComponentModel.DataAnnotations.ValidationResult> Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.BaseValidate ( ValidationContext  validationContext)
inlineprotected

To validate all properties of the instance

Parameters
validationContextValidation context
Returns
Validation Result

◆ Equals() [1/2]

bool Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.Equals ( FlexibleRepoPartialClosureEvent  input)
inline

Returns true if FlexibleRepoPartialClosureEvent instances are equal

Parameters
inputInstance of FlexibleRepoPartialClosureEvent to be compared
Returns
Boolean

◆ Equals() [2/2]

override bool Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.Equals ( object  input)
inline

Returns true if objects are equal

Parameters
inputObject to be compared
Returns
Boolean

◆ GetHashCode()

override int Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.GetHashCode ( )
inline

Gets the hash code

Returns
Hash code

◆ ToJson()

override string Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.ToJson ( )
inlinevirtual

Returns the JSON string presentation of the object

Returns
JSON string presentation of the object

Reimplemented from Lusid.Sdk.Model.InstrumentEvent.

◆ ToString()

override string Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.ToString ( )
inline

Returns the string presentation of the object

Returns
String presentation of the object

Property Documentation

◆ Amount

decimal Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.Amount
getset

The amount of cash to be exchanged as part of a partial closure of the repurchase agreement. Either the absolute cash amount or a percentage of the remaining amount, depending on the AmountType.

The amount of cash to be exchanged as part of a partial closure of the repurchase agreement. Either the absolute cash amount or a percentage of the remaining amount, depending on the AmountType.

◆ AmountType

string Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.AmountType
getset

AmountType of the cash amount to be exchanged as part of a partial closure of the repurchase agreement. Either percentage or absolute cash amount. Available values: Percentage, Units.

AmountType of the cash amount to be exchanged as part of a partial closure of the repurchase agreement. Either percentage or absolute cash amount. Available values: Percentage, Units.

◆ EntitlementDate

DateTimeOffset Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.EntitlementDate
getset

Required property. The date on which the counterparties become entitled to exchange cash as part of a partial closure of the repurchase agreement. The date must be before or on the settlement date, and on or before the maturity date of the repo. This is a required field, unless otherwise supplied via &quot;EventDateStamps&quot; in the instrument event upsert request.

Required property. The date on which the counterparties become entitled to exchange cash as part of a partial closure of the repurchase agreement. The date must be before or on the settlement date, and on or before the maturity date of the repo. This is a required field, unless otherwise supplied via &quot;EventDateStamps&quot; in the instrument event upsert request.

◆ PartialClosureConstituents

List<PartialClosureConstituent> Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.PartialClosureConstituents
getset

List of the collateral instruments involved in this partial closure, along with how they are affected.

List of the collateral instruments involved in this partial closure, along with how they are affected.

◆ SettlementDate

DateTimeOffset Lusid.Sdk.Model.FlexibleRepoPartialClosureEvent.SettlementDate
getset

Required property. The date on which the exchange of cash is settled. The date must be on or after the entitlement date, and on or before the maturity date of the repo. This is a required field, unless otherwise supplied via &quot;EventDateStamps&quot; in the instrument event upsert request.

Required property. The date on which the exchange of cash is settled. The date must be on or after the entitlement date, and on or before the maturity date of the repo. This is a required field, unless otherwise supplied via &quot;EventDateStamps&quot; in the instrument event upsert request.


The documentation for this class was generated from the following file: