## Class IborFixingDeposit

• All Implemented Interfaces:
Resolvable<ResolvedIborFixingDeposit>, Product, Serializable, org.joda.beans.Bean, org.joda.beans.ImmutableBean

public final class IborFixingDeposit
extends Object
implements Product, Resolvable<ResolvedIborFixingDeposit>, org.joda.beans.ImmutableBean, Serializable
An Ibor fixing deposit.

An Ibor fixing deposit is a fictitious financial instrument that provides a floating rate of interest on notional amount for a specific term, which is effectively an exchange of a fixed rate and a floating rate based on an Ibor index on the term end date.

For example, an Ibor fixing deposit involves the exchange of the difference between the fixed rate of 1% and the 'GBP-LIBOR-3M' rate for the principal in 3 months time.

Serialized Form
• ### Nested Class Summary

Nested Classes
Modifier and Type Class Description
static class  IborFixingDeposit.Builder
The bean-builder for IborFixingDeposit.
static class  IborFixingDeposit.Meta
The meta-bean for IborFixingDeposit.
• ### Method Summary

All Methods
Modifier and Type Method Description
ImmutableSet<Currency> allCurrencies()
Returns the set of currencies the product refers to.
static IborFixingDeposit.Builder builder()
Returns a builder used to create an instance of the bean.
boolean equals​(Object obj)
Optional<BusinessDayAdjustment> getBusinessDayAdjustment()
Gets the business day adjustment to apply to the start and end date, optional.
BuySell getBuySell()
Gets whether the Ibor fixing deposit is 'Buy' or 'Sell'.
Currency getCurrency()
Gets the primary currency, defaulted to the currency of the index.
DayCount getDayCount()
Gets the day count convention applicable, defaulted to the day count of the index.
LocalDate getEndDate()
Gets the end date of the deposit.
double getFixedRate()
Gets the fixed interest rate to be paid.
DaysAdjustment getFixingDateOffset()
Gets the offset of the fixing date from the start date.
IborIndex getIndex()
Gets the Ibor index.
double getNotional()
Gets the notional amount.
LocalDate getStartDate()
Gets the start date of the deposit.
int hashCode()
static IborFixingDeposit.Meta meta()
The meta-bean for IborFixingDeposit.
IborFixingDeposit.Meta metaBean()
ResolvedIborFixingDeposit resolve​(ReferenceData refData)
Resolves this object using the specified reference data.
IborFixingDeposit.Builder toBuilder()
Returns a builder that allows this bean to be mutated.
String toString()
• ### Methods inherited from class java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait
• ### Methods inherited from interface org.joda.beans.Bean

property, propertyNames
• ### Methods inherited from interface com.opengamma.strata.product.Product

allPaymentCurrencies, isCrossCurrency
• ### Method Detail

• #### allCurrencies

public ImmutableSet<Currency> allCurrencies()
Description copied from interface: Product
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.

Specified by:
allCurrencies in interface Product
Returns:
the set of currencies the product refers to
• #### resolve

public ResolvedIborFixingDeposit resolve​(ReferenceData refData)
Description copied from interface: Resolvable
Resolves this object using the specified reference data.

This converts the object implementing this interface to the equivalent resolved form. All ReferenceDataId identifiers in this instance will be resolved. The resolved form will typically be a type that 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 interface Resolvable<ResolvedIborFixingDeposit>
Parameters:
refData - the reference data to use when resolving
Returns:
the resolved instance
• #### meta

public static IborFixingDeposit.Meta meta()
The meta-bean for IborFixingDeposit.
Returns:
the meta-bean, not null
• #### builder

public static IborFixingDeposit.Builder builder()
Returns a builder used to create an instance of the bean.
Returns:
the builder, not null
• #### metaBean

public IborFixingDeposit.Meta metaBean()
Specified by:
metaBean in interface org.joda.beans.Bean

public BuySell getBuySell()
Gets whether the Ibor fixing deposit is 'Buy' or 'Sell'.

A value of 'Buy' implies that the floating rate is paid to the counterparty, with the fixed rate being received. A value of 'Sell' implies that the floating rate is received from the counterparty, with the fixed rate being paid.

Returns:
the value of the property, not null
• #### getCurrency

public Currency getCurrency()
Gets the primary currency, defaulted to the currency of the index.

This is the currency of the deposit and the currency that payment is made in. The data model permits this currency to differ from that of the index, however the two are typically the same.

When building, this will default to the currency of the index if not specified.

Returns:
the value of the property, not null
• #### getNotional

public double getNotional()
Gets the notional amount.

The notional expressed here must be non-negative. The currency of the notional is specified by currency.

Returns:
the value of the property
• #### getStartDate

public LocalDate getStartDate()
Gets the start date of the deposit.

Interest accrues from this date. This date is typically set to be a valid business day. Optionally, the businessDayAdjustment property may be set to provide a rule for adjustment.

Returns:
the value of the property, not null
• #### getEndDate

public LocalDate getEndDate()
Gets the end date of the deposit.

Interest accrues until this date. This date is typically set to be a valid business day. Optionally, the businessDayAdjustment property may be set to provide a rule for adjustment. This date must be after the start date.

Returns:
the value of the property, not null

public Optional<BusinessDayAdjustment> getBusinessDayAdjustment()
Gets the business day adjustment to apply to the start and end date, optional.

The start and end date are typically defined as valid business days and thus do not need to be adjusted. If this optional property is present, then the start and end date will be adjusted as defined here.

Returns:
the optional value of the property, not null
• #### getIndex

public IborIndex getIndex()
Gets the Ibor index.

The floating rate to be paid or received is based on this index It will be a well known market index such as 'GBP-LIBOR-3M'.

See buySell to determine whether this rate is paid or received.

Returns:
the value of the property, not null
• #### getFixingDateOffset

public DaysAdjustment getFixingDateOffset()
Gets the offset of the fixing date from the start date.

The offset is applied to the start date and is typically minus 2 business days. The data model permits the offset to differ from that of the index, however the two are typically the same.

When building, this will default to the fixing date offset of the index if not specified.

Returns:
the value of the property, not null
• #### getDayCount

public DayCount getDayCount()
Gets the day count convention applicable, defaulted to the day count of the index.

This is used to convert dates to a numerical value. The data model permits the day count to differ from that of the index, however the two are typically the same.

When building, this will default to the day count of the index if not specified.

Returns:
the value of the property, not null
• #### getFixedRate

public double getFixedRate()
Gets the fixed interest rate to be paid. A 5% rate will be expressed as 0.05.
Returns:
the value of the property
• #### toBuilder

public IborFixingDeposit.Builder toBuilder()
Returns a builder that allows this bean to be mutated.
Returns:
the mutable builder, not null
• #### equals

public boolean equals​(Object obj)
Overrides:
equals in class Object
• #### hashCode

public int hashCode()
Overrides:
hashCode in class Object
• #### toString

public String toString()
Overrides:
toString in class Object