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

LUSID representation of a Vanilla Fixed Rate Bond. More...

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

Public Member Functions

 Bond (DateTimeOffset startDate=default(DateTimeOffset), DateTimeOffset maturityDate=default(DateTimeOffset), string domCcy=default(string), FlowConventions flowConventions=default(FlowConventions), decimal principal=default(decimal), decimal couponRate=default(decimal), Dictionary< string, string > identifiers=default(Dictionary< string, string >), int? exDividendDays=default(int?), DateTimeOffset? initialCouponDate=default(DateTimeOffset?), DateTimeOffset? firstCouponPayDate=default(DateTimeOffset?), string calculationType=default(string), List< RoundingConvention > roundingConventions=default(List< RoundingConvention >), ExDividendConfiguration exDividendConfiguration=default(ExDividendConfiguration), decimal? originalIssuePrice=default(decimal?), InstrumentTypeEnum instrumentType=default(InstrumentTypeEnum))
 Initializes a new instance of the Bond 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 (Bond input)
 Returns true if Bond instances are equal More...
 
override int GetHashCode ()
 Gets the hash code More...
 
- Public Member Functions inherited from Lusid.Sdk.Model.LusidInstrument
 LusidInstrument (InstrumentTypeEnum instrumentType=default(InstrumentTypeEnum))
 Initializes a new instance of the LusidInstrument 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 (LusidInstrument input)
 Returns true if LusidInstrument instances are equal More...
 
override int GetHashCode ()
 Gets the hash code More...
 

Protected Member Functions

 Bond ()
 Initializes a new instance of the Bond 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.LusidInstrument
 LusidInstrument ()
 Initializes a new instance of the LusidInstrument class. More...
 
IEnumerable< System.ComponentModel.DataAnnotations.ValidationResult > BaseValidate (ValidationContext validationContext)
 To validate all properties of the instance More...
 

Properties

DateTimeOffset StartDate [get, set]
 The Start date of the bond, this is normally when accrual of the first coupon begins. More...
 
DateTimeOffset MaturityDate [get, set]
 The Maturity date of the bond, this is when the last coupon accrual period ends. Note that while most bonds have their last payment on this date there are some cases where the final payment is the next working day. More...
 
string DomCcy [get, set]
 The domestic currency of the instrument. This should be the same as the Currency set on the FlowConventions. More...
 
FlowConventions FlowConventions [get, set]
 Gets or Sets FlowConventions More...
 
decimal Principal [get, set]
 The face-value or principal for the bond at outset. This might be reduced through its lifetime in the event of amortisation or similar. More...
 
decimal CouponRate [get, set]
 Simple coupon rate. More...
 
Dictionary< string, string > Identifiers [get, set]
 External market codes and identifiers for the bond, e.g. ISIN. More...
 
int? ExDividendDays [get, set]
 Optional. Number of calendar days in the ex-dividend period. If the settlement date falls in the ex-dividend period then the coupon paid is zero and the accrued interest is negative. If set, this must be a non-negative number. If not set, or set to 0, then there is no ex-dividend period. NOTE: This field is deprecated. If you wish to set the ExDividendDays on a bond, please use the ExDividendConfiguration. More...
 
DateTimeOffset? InitialCouponDate [get, set]
 Optional and to be DEPRECATED. If set, this is the date at which the bond begins to accrue interest. Instead, this information should be entered in the field StartDate. More...
 
DateTimeOffset? FirstCouponPayDate [get, set]
 The date that the first coupon of the bond is paid. This is required for bonds that have a long first coupon or short first coupon. The first coupon pay date is used as an anchor to compare with the start date and determine if this is a long/short coupon period. More...
 
string CalculationType [get, set]
 The calculation type applied to the bond coupon amount. This is required for bonds that have a particular type of computing the period coupon, such as simple compounding, irregular coupons etc. The default CalculationType is &#x60;Standard&#x60;, which returns a coupon amount equal to Principal * Coupon Rate / Coupon Frequency. Coupon Frequency is 12M / Payment Frequency. Payment Frequency can be 1M, 3M, 6M, 12M etc. So Coupon Frequency can be 12, 4, 2, 1 respectively. Supported string (enumeration) values are: [Standard, DayCountCoupon, NoCalculationFloater, BrazilFixedCoupon, StandardWithCappedAccruedInterest]. More...
 
List< RoundingConventionRoundingConventions [get, set]
 Rounding conventions for analytics, if any. More...
 
ExDividendConfiguration ExDividendConfiguration [get, set]
 Gets or Sets ExDividendConfiguration More...
 
decimal? OriginalIssuePrice [get, set]
 The price the bond was issued at. This is to be entered as a percentage of par, for example a value of 98.5 would represent 98.5%. More...
 
- Properties inherited from Lusid.Sdk.Model.LusidInstrument
InstrumentTypeEnum InstrumentType [get, set]
 The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan More...
 

Additional Inherited Members

- Public Types inherited from Lusid.Sdk.Model.LusidInstrument
enum class  InstrumentTypeEnum {
  QuotedSecurity = 1 , InterestRateSwap = 2 , FxForward = 3 , Future = 4 ,
  ExoticInstrument = 5 , FxOption = 6 , CreditDefaultSwap = 7 , InterestRateSwaption = 8 ,
  Bond = 9 , EquityOption = 10 , FixedLeg = 11 , FloatingLeg = 12 ,
  BespokeCashFlowsLeg = 13 , Unknown = 14 , TermDeposit = 15 , ContractForDifference = 16 ,
  EquitySwap = 17 , CashPerpetual = 18 , CapFloor = 19 , CashSettled = 20 ,
  CdsIndex = 21 , Basket = 22 , FundingLeg = 23 , FxSwap = 24 ,
  ForwardRateAgreement = 25 , SimpleInstrument = 26 , Repo = 27 , Equity = 28 ,
  ExchangeTradedOption = 29 , ReferenceInstrument = 30 , ComplexBond = 31 , InflationLinkedBond = 32 ,
  InflationSwap = 33 , SimpleCashFlowLoan = 34 , TotalReturnSwap = 35 , InflationLeg = 36 ,
  FundShareClass = 37 , FlexibleLoan = 38
}
 The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan More...
 

Detailed Description

LUSID representation of a Vanilla Fixed Rate Bond.

Constructor & Destructor Documentation

◆ Bond() [1/2]

Lusid.Sdk.Model.Bond.Bond ( )
inlineprotected

Initializes a new instance of the Bond class.

◆ Bond() [2/2]

Lusid.Sdk.Model.Bond.Bond ( DateTimeOffset  startDate = default(DateTimeOffset),
DateTimeOffset  maturityDate = default(DateTimeOffset),
string  domCcy = default(string),
FlowConventions  flowConventions = default(FlowConventions),
decimal  principal = default(decimal),
decimal  couponRate = default(decimal),
Dictionary< string, string >  identifiers = default(Dictionary<string, string>),
int?  exDividendDays = default(int?),
DateTimeOffset?  initialCouponDate = default(DateTimeOffset?),
DateTimeOffset?  firstCouponPayDate = default(DateTimeOffset?),
string  calculationType = default(string),
List< RoundingConvention roundingConventions = default(List<RoundingConvention>),
ExDividendConfiguration  exDividendConfiguration = default(ExDividendConfiguration),
decimal?  originalIssuePrice = default(decimal?),
InstrumentTypeEnum  instrumentType = default(InstrumentTypeEnum) 
)
inline

Initializes a new instance of the Bond class.

Parameters
startDateThe Start date of the bond, this is normally when accrual of the first coupon begins. (required).
maturityDateThe Maturity date of the bond, this is when the last coupon accrual period ends. Note that while most bonds have their last payment on this date there are some cases where the final payment is the next working day. (required).
domCcyThe domestic currency of the instrument. This should be the same as the Currency set on the FlowConventions. (required).
flowConventionsflowConventions (required).
principalThe face-value or principal for the bond at outset. This might be reduced through its lifetime in the event of amortisation or similar. (required).
couponRateSimple coupon rate. (required).
identifiersExternal market codes and identifiers for the bond, e.g. ISIN..
exDividendDaysOptional. Number of calendar days in the ex-dividend period. If the settlement date falls in the ex-dividend period then the coupon paid is zero and the accrued interest is negative. If set, this must be a non-negative number. If not set, or set to 0, then there is no ex-dividend period. NOTE: This field is deprecated. If you wish to set the ExDividendDays on a bond, please use the ExDividendConfiguration..
initialCouponDateOptional and to be DEPRECATED. If set, this is the date at which the bond begins to accrue interest. Instead, this information should be entered in the field StartDate..
firstCouponPayDateThe date that the first coupon of the bond is paid. This is required for bonds that have a long first coupon or short first coupon. The first coupon pay date is used as an anchor to compare with the start date and determine if this is a long/short coupon period..
calculationTypeThe calculation type applied to the bond coupon amount. This is required for bonds that have a particular type of computing the period coupon, such as simple compounding, irregular coupons etc. The default CalculationType is &#x60;Standard&#x60;, which returns a coupon amount equal to Principal * Coupon Rate / Coupon Frequency. Coupon Frequency is 12M / Payment Frequency. Payment Frequency can be 1M, 3M, 6M, 12M etc. So Coupon Frequency can be 12, 4, 2, 1 respectively. Supported string (enumeration) values are: [Standard, DayCountCoupon, NoCalculationFloater, BrazilFixedCoupon, StandardWithCappedAccruedInterest]..
roundingConventionsRounding conventions for analytics, if any..
exDividendConfigurationexDividendConfiguration.
originalIssuePriceThe price the bond was issued at. This is to be entered as a percentage of par, for example a value of 98.5 would represent 98.5%..
instrumentTypeThe available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan (required) (default to "Bond").

Member Function Documentation

◆ BaseValidate()

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

To validate all properties of the instance

Parameters
validationContextValidation context
Returns
Validation Result

◆ Equals() [1/2]

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

Returns true if Bond instances are equal

Parameters
inputInstance of Bond to be compared
Returns
Boolean

◆ Equals() [2/2]

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

Returns true if objects are equal

Parameters
inputObject to be compared
Returns
Boolean

◆ GetHashCode()

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

Gets the hash code

Returns
Hash code

◆ ToJson()

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

Returns the JSON string presentation of the object

Returns
JSON string presentation of the object

Reimplemented from Lusid.Sdk.Model.LusidInstrument.

◆ ToString()

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

Returns the string presentation of the object

Returns
String presentation of the object

Property Documentation

◆ CalculationType

string Lusid.Sdk.Model.Bond.CalculationType
getset

The calculation type applied to the bond coupon amount. This is required for bonds that have a particular type of computing the period coupon, such as simple compounding, irregular coupons etc. The default CalculationType is &#x60;Standard&#x60;, which returns a coupon amount equal to Principal * Coupon Rate / Coupon Frequency. Coupon Frequency is 12M / Payment Frequency. Payment Frequency can be 1M, 3M, 6M, 12M etc. So Coupon Frequency can be 12, 4, 2, 1 respectively. Supported string (enumeration) values are: [Standard, DayCountCoupon, NoCalculationFloater, BrazilFixedCoupon, StandardWithCappedAccruedInterest].

The calculation type applied to the bond coupon amount. This is required for bonds that have a particular type of computing the period coupon, such as simple compounding, irregular coupons etc. The default CalculationType is &#x60;Standard&#x60;, which returns a coupon amount equal to Principal * Coupon Rate / Coupon Frequency. Coupon Frequency is 12M / Payment Frequency. Payment Frequency can be 1M, 3M, 6M, 12M etc. So Coupon Frequency can be 12, 4, 2, 1 respectively. Supported string (enumeration) values are: [Standard, DayCountCoupon, NoCalculationFloater, BrazilFixedCoupon, StandardWithCappedAccruedInterest].

◆ CouponRate

decimal Lusid.Sdk.Model.Bond.CouponRate
getset

Simple coupon rate.

Simple coupon rate.

◆ DomCcy

string Lusid.Sdk.Model.Bond.DomCcy
getset

The domestic currency of the instrument. This should be the same as the Currency set on the FlowConventions.

The domestic currency of the instrument. This should be the same as the Currency set on the FlowConventions.

◆ ExDividendConfiguration

ExDividendConfiguration Lusid.Sdk.Model.Bond.ExDividendConfiguration
getset

◆ ExDividendDays

int? Lusid.Sdk.Model.Bond.ExDividendDays
getset

Optional. Number of calendar days in the ex-dividend period. If the settlement date falls in the ex-dividend period then the coupon paid is zero and the accrued interest is negative. If set, this must be a non-negative number. If not set, or set to 0, then there is no ex-dividend period. NOTE: This field is deprecated. If you wish to set the ExDividendDays on a bond, please use the ExDividendConfiguration.

Optional. Number of calendar days in the ex-dividend period. If the settlement date falls in the ex-dividend period then the coupon paid is zero and the accrued interest is negative. If set, this must be a non-negative number. If not set, or set to 0, then there is no ex-dividend period. NOTE: This field is deprecated. If you wish to set the ExDividendDays on a bond, please use the ExDividendConfiguration.

◆ FirstCouponPayDate

DateTimeOffset? Lusid.Sdk.Model.Bond.FirstCouponPayDate
getset

The date that the first coupon of the bond is paid. This is required for bonds that have a long first coupon or short first coupon. The first coupon pay date is used as an anchor to compare with the start date and determine if this is a long/short coupon period.

The date that the first coupon of the bond is paid. This is required for bonds that have a long first coupon or short first coupon. The first coupon pay date is used as an anchor to compare with the start date and determine if this is a long/short coupon period.

◆ FlowConventions

FlowConventions Lusid.Sdk.Model.Bond.FlowConventions
getset

Gets or Sets FlowConventions

◆ Identifiers

Dictionary<string, string> Lusid.Sdk.Model.Bond.Identifiers
getset

External market codes and identifiers for the bond, e.g. ISIN.

External market codes and identifiers for the bond, e.g. ISIN.

◆ InitialCouponDate

DateTimeOffset? Lusid.Sdk.Model.Bond.InitialCouponDate
getset

Optional and to be DEPRECATED. If set, this is the date at which the bond begins to accrue interest. Instead, this information should be entered in the field StartDate.

Optional and to be DEPRECATED. If set, this is the date at which the bond begins to accrue interest. Instead, this information should be entered in the field StartDate.

◆ MaturityDate

DateTimeOffset Lusid.Sdk.Model.Bond.MaturityDate
getset

The Maturity date of the bond, this is when the last coupon accrual period ends. Note that while most bonds have their last payment on this date there are some cases where the final payment is the next working day.

The Maturity date of the bond, this is when the last coupon accrual period ends. Note that while most bonds have their last payment on this date there are some cases where the final payment is the next working day.

◆ OriginalIssuePrice

decimal? Lusid.Sdk.Model.Bond.OriginalIssuePrice
getset

The price the bond was issued at. This is to be entered as a percentage of par, for example a value of 98.5 would represent 98.5%.

The price the bond was issued at. This is to be entered as a percentage of par, for example a value of 98.5 would represent 98.5%.

◆ Principal

decimal Lusid.Sdk.Model.Bond.Principal
getset

The face-value or principal for the bond at outset. This might be reduced through its lifetime in the event of amortisation or similar.

The face-value or principal for the bond at outset. This might be reduced through its lifetime in the event of amortisation or similar.

◆ RoundingConventions

List<RoundingConvention> Lusid.Sdk.Model.Bond.RoundingConventions
getset

Rounding conventions for analytics, if any.

Rounding conventions for analytics, if any.

◆ StartDate

DateTimeOffset Lusid.Sdk.Model.Bond.StartDate
getset

The Start date of the bond, this is normally when accrual of the first coupon begins.

The Start date of the bond, this is normally when accrual of the first coupon begins.


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