Class ResolvedBondFuture
- java.lang.Object
-
- com.opengamma.strata.product.bond.ResolvedBondFuture
-
- All Implemented Interfaces:
ResolvedProduct
,Serializable
,org.joda.beans.Bean
,org.joda.beans.ImmutableBean
public final class ResolvedBondFuture extends Object implements ResolvedProduct, org.joda.beans.ImmutableBean, Serializable
A futures contract based on a basket of fixed coupon bonds, resolved for pricing.This is the resolved form of
BondFuture
and is an input to the pricers. Applications will typically create aResolvedBondFuture
from aBondFuture
usingBondFuture.resolve(ReferenceData)
.A
ResolvedBondFuture
is bound to data that changes over time, such as holiday calendars. If the data changes, such as the addition of a new holiday, the resolved form will not be updated. Care must be taken when placing the resolved form in a cache or persistence layer.Price
Strata uses decimal prices for bond futures in the trade model, pricers and market data. This is coherent with the pricing ofFixedCouponBond
. The bond futures delivery is a bond for an amount computed from the bond future price, a conversion factor and the accrued interest.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ResolvedBondFuture.Builder
The bean-builder forResolvedBondFuture
.static class
ResolvedBondFuture.Meta
The meta-bean forResolvedBondFuture
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ResolvedBondFuture.Builder
builder()
Returns a builder used to create an instance of the bean.boolean
equals(Object obj)
ImmutableList<Double>
getConversionFactors()
Gets the conversion factor for each bond in the basket.Currency
getCurrency()
Obtains the currency of the underlying fixed coupon bonds.ImmutableList<ResolvedFixedCouponBond>
getDeliveryBasket()
Gets the basket of deliverable bonds.LocalDate
getFirstDeliveryDate()
Gets the first delivery date.LocalDate
getFirstNoticeDate()
Gets the first notice date.LocalDate
getLastDeliveryDate()
Gets the last delivery date.LocalDate
getLastNoticeDate()
Gets the last notice date.LocalDate
getLastTradeDate()
Gets the last trading date.double
getNotional()
Obtains the notional of underlying fixed coupon bonds.Rounding
getRounding()
Gets the definition of how to round the futures price, defaulted to no rounding.SecurityId
getSecurityId()
Gets the security identifier.int
hashCode()
static ResolvedBondFuture.Meta
meta()
The meta-bean forResolvedBondFuture
.ResolvedBondFuture.Meta
metaBean()
ResolvedBondFuture.Builder
toBuilder()
Returns a builder that allows this bean to be mutated.String
toString()
-
-
-
Method Detail
-
getCurrency
public Currency getCurrency()
Obtains the currency of the underlying fixed coupon bonds.All of the bonds in the delivery basket have the same currency.
- Returns:
- the currency
-
getNotional
public double getNotional()
Obtains the notional of underlying fixed coupon bonds.All of the bonds in the delivery basket have the same notional. The currency of the notional is specified by
getCurrency()
.- Returns:
- the notional
-
meta
public static ResolvedBondFuture.Meta meta()
The meta-bean forResolvedBondFuture
.- Returns:
- the meta-bean, not null
-
builder
public static ResolvedBondFuture.Builder builder()
Returns a builder used to create an instance of the bean.- Returns:
- the builder, not null
-
metaBean
public ResolvedBondFuture.Meta metaBean()
- Specified by:
metaBean
in interfaceorg.joda.beans.Bean
-
getSecurityId
public SecurityId getSecurityId()
Gets the security identifier.This identifier uniquely identifies the security within the system.
- Returns:
- the value of the property, not null
-
getDeliveryBasket
public ImmutableList<ResolvedFixedCouponBond> getDeliveryBasket()
Gets 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.
- Returns:
- the value of the property, not empty
-
getConversionFactors
public ImmutableList<Double> getConversionFactors()
Gets 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.
- Returns:
- the value of the property, not empty
-
getLastTradeDate
public LocalDate getLastTradeDate()
Gets the last trading date.The future security is traded until this date.
- Returns:
- the value of the property, not null
-
getFirstNoticeDate
public LocalDate getFirstNoticeDate()
Gets the first notice date.The first date on which the delivery of the underlying is authorized.
- Returns:
- the value of the property, not null
-
getLastNoticeDate
public LocalDate getLastNoticeDate()
Gets the last notice date.The last date on which the delivery of the underlying is authorized.
- Returns:
- the value of the property, not null
-
getFirstDeliveryDate
public LocalDate getFirstDeliveryDate()
Gets the first delivery date.The first date on which the underlying is delivered.
- Returns:
- the value of the property, not null
-
getLastDeliveryDate
public LocalDate getLastDeliveryDate()
Gets the last delivery date.The last date on which the underlying is delivered.
- Returns:
- the value of the property, not null
-
getRounding
public Rounding getRounding()
Gets 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.
- Returns:
- the value of the property, not null
-
toBuilder
public ResolvedBondFuture.Builder toBuilder()
Returns a builder that allows this bean to be mutated.- Returns:
- the mutable builder, not null
-
-