Interface Product
-
- All Known Subinterfaces:
EtdSecurity
,FxOptionProduct
,FxProduct
,SecuritizedProduct
- All Known Implementing Classes:
Bill
,BondFuture
,BondFutureOption
,BulletPayment
,CapitalIndexedBond
,Cds
,CdsIndex
,Cms
,Dsf
,EtdFutureSecurity
,EtdOptionSecurity
,FixedCouponBond
,FixedCouponBondOption
,Fra
,FxNdf
,FxSingle
,FxSingleBarrierOption
,FxSwap
,FxVanillaOption
,GenericSecurity
,IborCapFloor
,IborFixingDeposit
,IborFuture
,IborFutureOption
,OvernightFuture
,Swap
,Swaption
,TermDeposit
public interface Product
The product details of a financial instrument.A product is a high level abstraction applicable to many different types. For example, an Interest Rate Swap is a product, as is a Forward Rate Agreement (FRA).
A product exists independently from a
Trade
. It represents the economics of the financial instrument regardless of the trade date or counterparties.Implementations must be immutable and thread-safe beans.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description ImmutableSet<Currency>
allCurrencies()
Returns the set of currencies the product refers to.default ImmutableSet<Currency>
allPaymentCurrencies()
Returns the set of currencies that the product pays in.default boolean
isCrossCurrency()
Checks if this product is cross-currency.
-
-
-
Method Detail
-
isCrossCurrency
default boolean isCrossCurrency()
Checks if this product is cross-currency.A cross currency product is defined as one that refers to two or more currencies. Any product with direct or indirect FX exposure will be cross-currency.
For example, a fixed/Ibor swap in USD observing USD-LIBOR is not cross currency, but one that observes EURIBOR is cross currency.
- Returns:
- true if cross currency
-
allPaymentCurrencies
default ImmutableSet<Currency> allPaymentCurrencies()
Returns the set of currencies that the product pays in.This returns the complete set of payment currencies. This will typically return one or two currencies.
- Returns:
- the set of payment currencies
-
allCurrencies
ImmutableSet<Currency> allCurrencies()
Returns the set of currencies the product refers to.This returns the complete set of currencies, not just the payment currencies. For example, the sets will differ when one of the currencies is non-deliverable.
- Returns:
- the set of currencies the product refers to
-
-