Class OvernightFutureTrade
- java.lang.Object
-
- com.opengamma.strata.product.index.OvernightFutureTrade
-
- All Implemented Interfaces:
CalculationTarget
,Resolvable<ResolvedOvernightFutureTrade>
,PortfolioItem
,ProductTrade
,ResolvableTrade<ResolvedOvernightFutureTrade>
,SecuritizedProductPortfolioItem<OvernightFuture>
,SecuritizedProductTrade<OvernightFuture>
,SecurityQuantity
,SecurityQuantityTrade
,Trade
,Serializable
,org.joda.beans.Bean
,org.joda.beans.ImmutableBean
public final class OvernightFutureTrade extends Object implements SecuritizedProductTrade<OvernightFuture>, ResolvableTrade<ResolvedOvernightFutureTrade>, org.joda.beans.ImmutableBean, Serializable
A trade representing a futures contract based on an Overnight index.A trade in an underlying
OvernightFuture
.For example, the purchase of 2 contracts of the widely traded "Fed Fund futures contract".
Price
The price of an Overnight rate future is based on the interest rate of the underlying index. It is defined as(100 - percentRate)
.Strata uses decimal prices for Overnight rate futures in the trade model, pricers and market data. The decimal price is based on the decimal rate equivalent to the percentage. For example, a price of 99.32 implies an interest rate of 0.68% which is represented in Strata by 0.9932.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
OvernightFutureTrade.Builder
The bean-builder forOvernightFutureTrade
.static class
OvernightFutureTrade.Meta
The meta-bean forOvernightFutureTrade
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static OvernightFutureTrade.Builder
builder()
Returns a builder used to create an instance of the bean.boolean
equals(Object obj)
TradeInfo
getInfo()
Gets the additional trade information, defaulted to an empty instance.double
getPrice()
Gets the price that was traded, in decimal form.OvernightFuture
getProduct()
Gets the future that was traded.double
getQuantity()
Gets the quantity that was traded.int
hashCode()
static OvernightFutureTrade.Meta
meta()
The meta-bean forOvernightFutureTrade
.OvernightFutureTrade.Meta
metaBean()
ResolvedOvernightFutureTrade
resolve(ReferenceData refData)
Resolves this trade using the specified reference data.PortfolioItemSummary
summarize()
Summarizes the portfolio item.OvernightFutureTrade.Builder
toBuilder()
Returns a builder that allows this bean to be mutated.String
toString()
OvernightFutureTrade
withInfo(PortfolioItemInfo info)
Returns an instance with the specified info.OvernightFutureTrade
withPrice(double price)
Returns an instance with the specified price.OvernightFutureTrade
withQuantity(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 OvernightFutureTrade withInfo(PortfolioItemInfo info)
Description copied from interface:SecuritizedProductTrade
Returns an instance with the specified info.- Specified by:
withInfo
in interfacePortfolioItem
- Specified by:
withInfo
in interfaceProductTrade
- Specified by:
withInfo
in interfaceResolvableTrade<ResolvedOvernightFutureTrade>
- Specified by:
withInfo
in interfaceSecuritizedProductTrade<OvernightFuture>
- Specified by:
withInfo
in interfaceSecurityQuantityTrade
- Specified by:
withInfo
in interfaceTrade
- Parameters:
info
- the new info- Returns:
- the instance with the specified info
-
withQuantity
public OvernightFutureTrade withQuantity(double quantity)
Description copied from interface:SecuritizedProductTrade
Returns an instance with the specified quantity.- Specified by:
withQuantity
in interfaceSecuritizedProductPortfolioItem<OvernightFuture>
- Specified by:
withQuantity
in interfaceSecuritizedProductTrade<OvernightFuture>
- Specified by:
withQuantity
in interfaceSecurityQuantityTrade
- Parameters:
quantity
- the new quantity- Returns:
- the instance with the specified quantity
-
withPrice
public OvernightFutureTrade withPrice(double price)
Description copied from interface:SecuritizedProductTrade
Returns an instance with the specified price.- Specified by:
withPrice
in interfaceSecuritizedProductTrade<OvernightFuture>
- Specified by:
withPrice
in interfaceSecurityQuantityTrade
- Parameters:
price
- the new price- Returns:
- the instance with the specified price
-
summarize
public PortfolioItemSummary summarize()
Description copied from interface:PortfolioItem
Summarizes the portfolio item.This provides a summary, including a human readable description.
- Specified by:
summarize
in interfacePortfolioItem
- Specified by:
summarize
in interfaceTrade
- Returns:
- the summary of the item
-
resolve
public ResolvedOvernightFutureTrade resolve(ReferenceData refData)
Description copied from interface:ResolvableTrade
Resolves this trade using the specified reference data.This converts this trade to the equivalent resolved form. All
ReferenceDataId
identifiers in this instance will be resolved. The resultingResolvedTrade
is 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:
resolve
in interfaceResolvable<ResolvedOvernightFutureTrade>
- Specified by:
resolve
in interfaceResolvableTrade<ResolvedOvernightFutureTrade>
- Parameters:
refData
- the reference data to use when resolving- Returns:
- the resolved trade
-
meta
public static OvernightFutureTrade.Meta meta()
The meta-bean forOvernightFutureTrade
.- Returns:
- the meta-bean, not null
-
builder
public static OvernightFutureTrade.Builder builder()
Returns a builder used to create an instance of the bean.- Returns:
- the builder, not null
-
metaBean
public OvernightFutureTrade.Meta metaBean()
- Specified by:
metaBean
in 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:
getInfo
in interfacePortfolioItem
- Specified by:
getInfo
in interfaceTrade
- Returns:
- the value of the property, not null
-
getProduct
public OvernightFuture getProduct()
Gets the future that was traded.The product captures the contracted financial details of the trade.
- Specified by:
getProduct
in interfaceProductTrade
- Specified by:
getProduct
in interfaceSecuritizedProductPortfolioItem<OvernightFuture>
- 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:
getQuantity
in 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.
Strata uses decimal prices for Overnight rate futures in the trade model, pricers and market data. The decimal price is based on the decimal rate equivalent to the percentage. For example, a price of 99.32 implies an interest rate of 0.68% which is represented in Strata by 0.9932.
- Specified by:
getPrice
in interfaceSecurityQuantityTrade
- Returns:
- the value of the property
-
toBuilder
public OvernightFutureTrade.Builder toBuilder()
Returns a builder that allows this bean to be mutated.- Returns:
- the mutable builder, not null
-
-