Class OvernightInArrearsCapletFloorletPeriod
- java.lang.Object
-
- com.opengamma.strata.product.capfloor.OvernightInArrearsCapletFloorletPeriod
-
- All Implemented Interfaces:
Serializable,org.joda.beans.Bean,org.joda.beans.ImmutableBean
public final class OvernightInArrearsCapletFloorletPeriod extends Object implements org.joda.beans.ImmutableBean, Serializable
A period over which an caplet/floorlet on overnight composition in-arrears is paid.The payoff depend on the level of the compounded rate over the period. The option is of Asian type with the averaging mechanism given by the composition.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classOvernightInArrearsCapletFloorletPeriod.BuilderThe bean-builder forOvernightInArrearsCapletFloorletPeriod.static classOvernightInArrearsCapletFloorletPeriod.MetaThe meta-bean forOvernightInArrearsCapletFloorletPeriod.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static OvernightInArrearsCapletFloorletPeriod.Builderbuilder()Returns a builder used to create an instance of the bean.booleanequals(Object obj)OptionalDoublegetCaplet()Gets the optional caplet strike.CurrencygetCurrency()Gets the primary currency of the payment period.LocalDategetEndDate()Gets the end date of the payment period.OptionalDoublegetFloorlet()Gets the optional floorlet strike.OvernightIndexgetIndex()Gets the Ibor index.doublegetNotional()Gets the notional amount, positive if receiving, negative if paying.OvernightCompoundedRateComputationgetOvernightRate()Gets the rate to be observed.LocalDategetPaymentDate()Gets the date that payment occurs.PutCallgetPutCall()Gets put or call.LocalDategetStartDate()Gets the start date of the payment period.doublegetStrike()Gets the strike value.LocalDategetUnadjustedEndDate()Gets the unadjusted end date.LocalDategetUnadjustedStartDate()Gets the unadjusted start date.doublegetYearFraction()Gets the year fraction that the accrual period represents.inthashCode()static OvernightInArrearsCapletFloorletPeriod.Metameta()The meta-bean forOvernightInArrearsCapletFloorletPeriod.OvernightInArrearsCapletFloorletPeriod.MetametaBean()CurrencyAmountpayoff(double rate)Returns the caplet/floorlet payoff for a given compounded rate.OvernightInArrearsCapletFloorletPeriod.BuildertoBuilder()Returns a builder that allows this bean to be mutated.StringtoString()
-
-
-
Method Detail
-
getIndex
public OvernightIndex getIndex()
Gets the Ibor index.- Returns:
- the ibor index
-
getStrike
public double getStrike()
Gets the strike value.- Returns:
- the strike
-
getPutCall
public PutCall getPutCall()
Gets put or call.CALL is returned for a caplet, whereas PUT is returned for a floorlet.
- Returns:
- put or call
-
payoff
public CurrencyAmount payoff(double rate)
Returns the caplet/floorlet payoff for a given compounded rate.- Parameters:
rate- the compounded rate- Returns:
- the payoff
-
meta
public static OvernightInArrearsCapletFloorletPeriod.Meta meta()
The meta-bean forOvernightInArrearsCapletFloorletPeriod.- Returns:
- the meta-bean, not null
-
builder
public static OvernightInArrearsCapletFloorletPeriod.Builder builder()
Returns a builder used to create an instance of the bean.- Returns:
- the builder, not null
-
metaBean
public OvernightInArrearsCapletFloorletPeriod.Meta metaBean()
- Specified by:
metaBeanin interfaceorg.joda.beans.Bean
-
getCurrency
public Currency getCurrency()
Gets the primary currency of the payment period.The amounts of the notional are usually expressed in terms of this currency, however they can be converted from amounts in a different currency.
- Returns:
- the value of the property, not null
-
getNotional
public double getNotional()
Gets the notional amount, positive if receiving, negative if paying.The notional amount applicable during the period. The currency of the notional is specified by
currency.- Returns:
- the value of the property
-
getStartDate
public LocalDate getStartDate()
Gets the start date of the payment period.This is the first date in the period. If the schedule adjusts for business days, then this is the adjusted date.
- Returns:
- the value of the property, not null
-
getEndDate
public LocalDate getEndDate()
Gets the end date of the payment period.This is the last date in the period. If the schedule adjusts for business days, then this is the adjusted date.
- Returns:
- the value of the property, not null
-
getUnadjustedStartDate
public LocalDate getUnadjustedStartDate()
Gets the unadjusted start date.The start date before any business day adjustment is applied.
When building, this will default to the start date if not specified.
- Returns:
- the value of the property, not null
-
getUnadjustedEndDate
public LocalDate getUnadjustedEndDate()
Gets the unadjusted end date.The end date before any business day adjustment is applied.
When building, this will default to the end date if not specified.
- Returns:
- the value of the property, not null
-
getYearFraction
public double getYearFraction()
Gets the year fraction that the accrual period represents.The value is usually calculated using a
DayCountwhich may be different to that of the index. Typically the value will be close to 1 for one year and close to 0.5 for six months. The fraction may be greater than 1, but not less than 0.- Returns:
- the value of the property
-
getPaymentDate
public LocalDate getPaymentDate()
Gets the date that payment occurs.If the schedule adjusts for business days, then this is the adjusted date.
- Returns:
- the value of the property, not null
-
getCaplet
public OptionalDouble getCaplet()
Gets the optional caplet strike.This defines the strike value of a caplet.
If the period is not a caplet, this field will be absent.
- Returns:
- the optional value of the property, not null
-
getFloorlet
public OptionalDouble getFloorlet()
Gets the optional floorlet strike.This defines the strike value of a floorlet.
If the period is not a floorlet, this field will be absent.
- Returns:
- the optional value of the property, not null
-
getOvernightRate
public OvernightCompoundedRateComputation getOvernightRate()
Gets the rate to be observed.The value of the period is based on this overnight compounded rate.
- Returns:
- the value of the property, not null
-
toBuilder
public OvernightInArrearsCapletFloorletPeriod.Builder toBuilder()
Returns a builder that allows this bean to be mutated.- Returns:
- the mutable builder, not null
-
-