Class BondFuture.Builder
- java.lang.Object
-
- org.joda.beans.impl.direct.DirectFieldsBeanBuilder<BondFuture>
-
- com.opengamma.strata.product.bond.BondFuture.Builder
-
- All Implemented Interfaces:
org.joda.beans.BeanBuilder<BondFuture>
- Enclosing class:
- BondFuture
public static final class BondFuture.Builder extends org.joda.beans.impl.direct.DirectFieldsBeanBuilder<BondFuture>
The bean-builder forBondFuture.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description BondFuturebuild()BondFuture.BuilderconversionFactors(Double... conversionFactors)Sets theconversionFactorsproperty in the builder from an array of objects.BondFuture.BuilderconversionFactors(List<Double> conversionFactors)Sets the conversion factor for each bond in the basket.BondFuture.BuilderdeliveryBasket(FixedCouponBond... deliveryBasket)Sets thedeliveryBasketproperty in the builder from an array of objects.BondFuture.BuilderdeliveryBasket(List<FixedCouponBond> deliveryBasket)Sets the basket of deliverable bonds.BondFuture.BuilderfirstDeliveryDate(LocalDate firstDeliveryDate)Sets the first delivery date.BondFuture.BuilderfirstNoticeDate(LocalDate firstNoticeDate)Sets the first notice date.Objectget(String propertyName)BondFuture.BuilderlastDeliveryDate(LocalDate lastDeliveryDate)Sets the last delivery date.BondFuture.BuilderlastNoticeDate(LocalDate lastNoticeDate)Sets the last notice date.BondFuture.BuilderlastTradeDate(LocalDate lastTradeDate)Sets the last trading date.BondFuture.Builderrounding(Rounding rounding)Sets the definition of how to round the futures price, defaulted to no rounding.BondFuture.BuildersecurityId(SecurityId securityId)Sets the security identifier.BondFuture.Builderset(String propertyName, Object newValue)BondFuture.Builderset(org.joda.beans.MetaProperty<?> property, Object value)StringtoString()
-
-
-
Method Detail
-
get
public Object get(String propertyName)
- Specified by:
getin interfaceorg.joda.beans.BeanBuilder<BondFuture>- Overrides:
getin classorg.joda.beans.impl.direct.DirectFieldsBeanBuilder<BondFuture>
-
set
public BondFuture.Builder set(String propertyName, Object newValue)
-
set
public BondFuture.Builder set(org.joda.beans.MetaProperty<?> property, Object value)
- Specified by:
setin interfaceorg.joda.beans.BeanBuilder<BondFuture>- Overrides:
setin classorg.joda.beans.impl.direct.DirectFieldsBeanBuilder<BondFuture>
-
build
public BondFuture build()
-
securityId
public BondFuture.Builder securityId(SecurityId securityId)
Sets the security identifier.This identifier uniquely identifies the security within the system.
- Parameters:
securityId- the new value, not null- Returns:
- this, for chaining, not null
-
deliveryBasket
public BondFuture.Builder deliveryBasket(List<FixedCouponBond> deliveryBasket)
Sets the basket of deliverable bonds.The underling which will be delivered in the future time is chosen from a basket of underling securities. This must not be empty.
All of the underlying bonds must have the same notional and currency.
- Parameters:
deliveryBasket- the new value, not empty- Returns:
- this, for chaining, not null
-
deliveryBasket
public BondFuture.Builder deliveryBasket(FixedCouponBond... deliveryBasket)
Sets thedeliveryBasketproperty in the builder from an array of objects.- Parameters:
deliveryBasket- the new value, not empty- Returns:
- this, for chaining, not null
-
conversionFactors
public BondFuture.Builder conversionFactors(List<Double> conversionFactors)
Sets the conversion factor for each bond in the basket.The price of each underlying security in the basket is rescaled by the conversion factor. This must not be empty, and its size must be the same as the size of
deliveryBasket.All of the underlying bonds must have the same notional and currency.
- Parameters:
conversionFactors- the new value, not empty- Returns:
- this, for chaining, not null
-
conversionFactors
public BondFuture.Builder conversionFactors(Double... conversionFactors)
Sets theconversionFactorsproperty in the builder from an array of objects.- Parameters:
conversionFactors- the new value, not empty- Returns:
- this, for chaining, not null
-
lastTradeDate
public BondFuture.Builder lastTradeDate(LocalDate lastTradeDate)
Sets the last trading date.The future security is traded until this date.
- Parameters:
lastTradeDate- the new value, not null- Returns:
- this, for chaining, not null
-
firstNoticeDate
public BondFuture.Builder firstNoticeDate(LocalDate firstNoticeDate)
Sets the first notice date.The first date on which the delivery of the underlying is authorized.
- Parameters:
firstNoticeDate- the new value, not null- Returns:
- this, for chaining, not null
-
lastNoticeDate
public BondFuture.Builder lastNoticeDate(LocalDate lastNoticeDate)
Sets the last notice date.The last date on which the delivery of the underlying is authorized.
- Parameters:
lastNoticeDate- the new value, not null- Returns:
- this, for chaining, not null
-
firstDeliveryDate
public BondFuture.Builder firstDeliveryDate(LocalDate firstDeliveryDate)
Sets the first delivery date.The first date on which the underlying is delivered.
If not specified, the date will be computed from
firstNoticeDateby usingsettlementDateOffsetin the first element of the delivery basket when the future is resolved.- Parameters:
firstDeliveryDate- the new value- Returns:
- this, for chaining, not null
-
lastDeliveryDate
public BondFuture.Builder lastDeliveryDate(LocalDate lastDeliveryDate)
Sets the last delivery date.The last date on which the underlying is delivered.
If not specified, the date will be computed from
lastNoticeDateby usingsettlementDateOffsetin the first element of the delivery basket when the future is resolved.- Parameters:
lastDeliveryDate- the new value- Returns:
- this, for chaining, not null
-
rounding
public BondFuture.Builder rounding(Rounding rounding)
Sets the definition of how to round the futures price, defaulted to no rounding.The price is represented in decimal form, not percentage form. As such, the decimal places expressed by the rounding refers to this decimal form. For example, the common market price of 99.7125 for a 0.2875% rate is represented as 0.997125 which has 6 decimal places.
- Parameters:
rounding- the new value, not null- Returns:
- this, for chaining, not null
-
toString
public String toString()
- Overrides:
toStringin classorg.joda.beans.impl.direct.DirectFieldsBeanBuilder<BondFuture>
-
-