Class FxSingleTrade
- java.lang.Object
-
- com.opengamma.strata.product.fx.FxSingleTrade
-
- All Implemented Interfaces:
CalculationTarget
,Resolvable<ResolvedFxSingleTrade>
,FxTrade
,PortfolioItem
,ProductTrade
,ResolvableTrade<ResolvedFxSingleTrade>
,Trade
,Serializable
,org.joda.beans.Bean
,org.joda.beans.ImmutableBean
public final class FxSingleTrade extends Object implements FxTrade, ResolvableTrade<ResolvedFxSingleTrade>, org.joda.beans.ImmutableBean, Serializable
A foreign exchange trade, such as an FX forward or FX spot.An Over-The-Counter (OTC) trade in an
FxSingle
.An FX is a financial instrument that represents the exchange of an equivalent amount in two different currencies between counterparties on a specific date. For example, it might represent the payment of USD 1,000 and the receipt of EUR 932.
FX spot and FX forward are essentially equivalent, simply with a different way to obtain the payment date; they are both represented using this class.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
FxSingleTrade.Builder
The bean-builder forFxSingleTrade
.static class
FxSingleTrade.Meta
The meta-bean forFxSingleTrade
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static FxSingleTrade.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.FxSingle
getProduct()
Gets the product that was agreed when the trade occurred.int
hashCode()
static FxSingleTrade.Meta
meta()
The meta-bean forFxSingleTrade
.FxSingleTrade.Meta
metaBean()
static FxSingleTrade
of(TradeInfo info, FxSingle product)
Obtains an instance of a foreign exchange trade.ResolvedFxSingleTrade
resolve(ReferenceData refData)
Resolves this trade using the specified reference data.PortfolioItemSummary
summarize()
Summarizes the portfolio item.FxSingleTrade.Builder
toBuilder()
Returns a builder that allows this bean to be mutated.String
toString()
FxSingleTrade
withInfo(PortfolioItemInfo info)
Returns an instance with the specified info.-
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
-
-
-
-
Method Detail
-
of
public static FxSingleTrade of(TradeInfo info, FxSingle product)
Obtains an instance of a foreign exchange trade.- Parameters:
info
- the trade infoproduct
- the product- Returns:
- the trade
-
withInfo
public FxSingleTrade withInfo(PortfolioItemInfo info)
Description copied from interface:ProductTrade
Returns an instance with the specified info.- Specified by:
withInfo
in interfaceFxTrade
- Specified by:
withInfo
in interfacePortfolioItem
- Specified by:
withInfo
in interfaceProductTrade
- Specified by:
withInfo
in interfaceResolvableTrade<ResolvedFxSingleTrade>
- Specified by:
withInfo
in interfaceTrade
- Parameters:
info
- the new info- Returns:
- the instance with the specified info
-
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 ResolvedFxSingleTrade 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<ResolvedFxSingleTrade>
- Specified by:
resolve
in interfaceResolvableTrade<ResolvedFxSingleTrade>
- Parameters:
refData
- the reference data to use when resolving- Returns:
- the resolved trade
-
meta
public static FxSingleTrade.Meta meta()
The meta-bean forFxSingleTrade
.- Returns:
- the meta-bean, not null
-
builder
public static FxSingleTrade.Builder builder()
Returns a builder used to create an instance of the bean.- Returns:
- the builder, not null
-
metaBean
public FxSingleTrade.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.
- Specified by:
getInfo
in interfacePortfolioItem
- Specified by:
getInfo
in interfaceTrade
- Returns:
- the value of the property, not null
-
getProduct
public FxSingle getProduct()
Gets the product that was agreed when the trade occurred.The product captures the contracted financial details of the trade.
- Specified by:
getProduct
in interfaceFxTrade
- Specified by:
getProduct
in interfaceProductTrade
- Returns:
- the value of the property, not null
-
toBuilder
public FxSingleTrade.Builder toBuilder()
Returns a builder that allows this bean to be mutated.- Returns:
- the mutable builder, not null
-
-