public final class FxNdf extends Object implements FxProduct, Resolvable<ResolvedFxNdf>, org.joda.beans.ImmutableBean, Serializable
An NDF is a financial instrument that returns the difference between a fixed FX rate agreed at the inception of the trade and the FX rate at maturity. It is primarily used to handle FX requirements for currencies that have settlement restrictions. For example, the forward may be between USD and CNY (Chinese Yuan).
| Modifier and Type | Class and Description |
|---|---|
static class |
FxNdf.Builder
The bean-builder for
FxNdf. |
static class |
FxNdf.Meta
The meta-bean for
FxNdf. |
| Modifier and Type | Method and Description |
|---|---|
ImmutableSet<Currency> |
allPaymentCurrencies()
Returns the set of currencies that the product pays in.
|
static FxNdf.Builder |
builder()
Returns a builder used to create an instance of the bean.
|
boolean |
equals(Object obj) |
FxRate |
getAgreedFxRate()
Gets the FX rate agreed for the value date at the inception of the trade.
|
CurrencyPair |
getCurrencyPair()
Gets the currency pair that the FX trade is based on, in conventional order.
|
FxIndex |
getIndex()
Gets the index defining the FX rate to observe on the fixing date.
|
Currency |
getNonDeliverableCurrency()
Gets the non-deliverable currency.
|
LocalDate |
getPaymentDate()
Gets the date that the forward settles.
|
Currency |
getSettlementCurrency()
Gets the settlement currency.
|
CurrencyAmount |
getSettlementCurrencyNotional()
Gets the notional amount in the settlement currency, positive if receiving, negative if paying.
|
int |
hashCode() |
static FxNdf.Meta |
meta()
The meta-bean for
FxNdf. |
FxNdf.Meta |
metaBean() |
ResolvedFxNdf |
resolve(ReferenceData refData) |
FxNdf.Builder |
toBuilder()
Returns a builder that allows this bean to be mutated.
|
String |
toString() |
clone, finalize, getClass, notify, notifyAll, wait, wait, waitallCurrencies, isCrossCurrencypublic CurrencyPair getCurrencyPair()
FxProductThis represents the main currency pair of the FX. If the trade settles in a third currency, that is not recorded here.
getCurrencyPair in interface FxProductpublic ImmutableSet<Currency> allPaymentCurrencies()
ProductThis returns the complete set of payment currencies. This will typically return one or two currencies.
allPaymentCurrencies in interface Productpublic Currency getSettlementCurrency()
public Currency getNonDeliverableCurrency()
Returns the currency that is not the settlement currency.
public ResolvedFxNdf resolve(ReferenceData refData)
resolve in interface Resolvable<ResolvedFxNdf>public static FxNdf.Meta meta()
FxNdf.public static FxNdf.Builder builder()
public FxNdf.Meta metaBean()
metaBean in interface org.joda.beans.Beanpublic CurrencyAmount getSettlementCurrencyNotional()
The amount is signed. A positive amount indicates the payment is to be received. A negative amount indicates the payment is to be paid.
This must be specified in one of the two currencies of the forward.
public FxRate getAgreedFxRate()
The settlement amount is based on the difference between this rate and the
rate observed on the fixing date using the index.
The forward is between the two currencies defined by the rate.
public FxIndex getIndex()
The index is used to settle the trade by providing the actual FX rate on the fixing date. The value of the trade is based on the difference between the actual rate and the agreed rate.
The forward is between the two currencies defined by the index.
public LocalDate getPaymentDate()
On this date, the settlement amount will be exchanged. This date should be a valid business day.
public FxNdf.Builder toBuilder()
Copyright 2009-Present by OpenGamma Inc. and individual contributors
Apache v2 licensed
Additional documentation can be found at strata.opengamma.io.