Class BondFutureTrade
- java.lang.Object
-
- com.opengamma.strata.product.bond.BondFutureTrade
-
- All Implemented Interfaces:
CalculationTarget,Resolvable<ResolvedBondFutureTrade>,PortfolioItem,ProductTrade,ResolvableTrade<ResolvedBondFutureTrade>,SecuritizedProductPortfolioItem<BondFuture>,SecuritizedProductTrade<BondFuture>,SecurityQuantity,SecurityQuantityTrade,Trade,Serializable,org.joda.beans.Bean,org.joda.beans.ImmutableBean
public final class BondFutureTrade extends Object implements SecuritizedProductTrade<BondFuture>, ResolvableTrade<ResolvedBondFutureTrade>, org.joda.beans.ImmutableBean, Serializable
A trade representing a futures contract based on a fixed coupon bond.A trade in an underlying
BondFuture.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 classBondFutureTrade.BuilderThe bean-builder forBondFutureTrade.static classBondFutureTrade.MetaThe meta-bean forBondFutureTrade.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static BondFutureTrade.Builderbuilder()Returns a builder used to create an instance of the bean.booleanequals(Object obj)TradeInfogetInfo()Gets the additional trade information, defaulted to an empty instance.doublegetPrice()Gets the price that was traded, in decimal form.BondFuturegetProduct()Gets the future that was traded.doublegetQuantity()Gets the quantity that was traded.inthashCode()static BondFutureTrade.Metameta()The meta-bean forBondFutureTrade.BondFutureTrade.MetametaBean()ResolvedBondFutureTraderesolve(ReferenceData refData)Resolves this trade using the specified reference data.PortfolioItemSummarysummarize()Summarizes the portfolio item.BondFutureTrade.BuildertoBuilder()Returns a builder that allows this bean to be mutated.StringtoString()BondFutureTradewithInfo(PortfolioItemInfo info)Returns an instance with the specified info.BondFutureTradewithPrice(double price)Returns an instance with the specified price.BondFutureTradewithQuantity(double quantity)Returns an instance with the specified quantity.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.opengamma.strata.product.PortfolioItem
getId
-
Methods inherited from interface com.opengamma.strata.product.SecuritizedProductPortfolioItem
getCurrency, getSecurityId
-
-
-
-
Method Detail
-
withInfo
public BondFutureTrade withInfo(PortfolioItemInfo info)
Description copied from interface:SecuritizedProductTradeReturns an instance with the specified info.- Specified by:
withInfoin interfacePortfolioItem- Specified by:
withInfoin interfaceProductTrade- Specified by:
withInfoin interfaceResolvableTrade<ResolvedBondFutureTrade>- Specified by:
withInfoin interfaceSecuritizedProductTrade<BondFuture>- Specified by:
withInfoin interfaceSecurityQuantityTrade- Specified by:
withInfoin interfaceTrade- Parameters:
info- the new info- Returns:
- the instance with the specified info
-
withQuantity
public BondFutureTrade withQuantity(double quantity)
Description copied from interface:SecuritizedProductTradeReturns an instance with the specified quantity.- Specified by:
withQuantityin interfaceSecuritizedProductPortfolioItem<BondFuture>- Specified by:
withQuantityin interfaceSecuritizedProductTrade<BondFuture>- Specified by:
withQuantityin interfaceSecurityQuantityTrade- Parameters:
quantity- the new quantity- Returns:
- the instance with the specified quantity
-
withPrice
public BondFutureTrade withPrice(double price)
Description copied from interface:SecuritizedProductTradeReturns an instance with the specified price.- Specified by:
withPricein interfaceSecuritizedProductTrade<BondFuture>- Specified by:
withPricein interfaceSecurityQuantityTrade- Parameters:
price- the new price- Returns:
- the instance with the specified price
-
summarize
public PortfolioItemSummary summarize()
Description copied from interface:PortfolioItemSummarizes the portfolio item.This provides a summary, including a human readable description.
- Specified by:
summarizein interfacePortfolioItem- Specified by:
summarizein interfaceTrade- Returns:
- the summary of the item
-
resolve
public ResolvedBondFutureTrade resolve(ReferenceData refData)
Description copied from interface:ResolvableTradeResolves this trade using the specified reference data.This converts this trade to the equivalent resolved form. All
ReferenceDataIdidentifiers in this instance will be resolved. The resultingResolvedTradeis optimized for pricing.Resolved objects may be 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.
- Specified by:
resolvein interfaceResolvable<ResolvedBondFutureTrade>- Specified by:
resolvein interfaceResolvableTrade<ResolvedBondFutureTrade>- Parameters:
refData- the reference data to use when resolving- Returns:
- the resolved trade
-
meta
public static BondFutureTrade.Meta meta()
The meta-bean forBondFutureTrade.- Returns:
- the meta-bean, not null
-
builder
public static BondFutureTrade.Builder builder()
Returns a builder used to create an instance of the bean.- Returns:
- the builder, not null
-
metaBean
public BondFutureTrade.Meta metaBean()
- Specified by:
metaBeanin interfaceorg.joda.beans.Bean
-
getInfo
public TradeInfo getInfo()
Gets the additional trade information, defaulted to an empty instance.This allows additional information to be attached to the trade. The trade date is required when calling
resolve(ReferenceData).- Specified by:
getInfoin interfacePortfolioItem- Specified by:
getInfoin interfaceTrade- Returns:
- the value of the property, not null
-
getProduct
public BondFuture getProduct()
Gets the future that was traded.The product captures the contracted financial details of the trade.
- Specified by:
getProductin interfaceProductTrade- Specified by:
getProductin interfaceSecuritizedProductPortfolioItem<BondFuture>- Returns:
- the value of the property, not null
-
getQuantity
public double getQuantity()
Gets the quantity that was traded.This is the number of contracts that were traded. This will be positive if buying and negative if selling.
- Specified by:
getQuantityin interfaceSecurityQuantity- Returns:
- the value of the property
-
getPrice
public double getPrice()
Gets the price that was traded, in decimal form.This is the price agreed when the trade occurred.
- Specified by:
getPricein interfaceSecurityQuantityTrade- Returns:
- the value of the property
-
toBuilder
public BondFutureTrade.Builder toBuilder()
Returns a builder that allows this bean to be mutated.- Returns:
- the mutable builder, not null
-
-