Interface OvernightIndex
-
- All Superinterfaces:
FloatingRate
,FloatingRateIndex
,Index
,Named
,RateIndex
- All Known Implementing Classes:
ImmutableOvernightIndex
public interface OvernightIndex extends RateIndex, Named
An Overnight index, such as Sonia or Eonia.An index represented by this class relates to lending over one night. The rate typically refers to "Today/Tomorrow" but might refer to "Tomorrow/Next".
The index is defined by four dates. The fixing date is the date on which the index is to be observed. The publication date is the date on which the fixed rate is actually published. The effective date is the date on which the implied deposit starts. The maturity date is the date on which the implied deposit ends.
The most common implementations are provided in
OvernightIndices
.All implementations of this interface must be immutable and thread-safe.
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description LocalDate
calculateEffectiveFromFixing(LocalDate fixingDate, ReferenceData refData)
Calculates the effective date from the fixing date.LocalDate
calculateFixingFromEffective(LocalDate effectiveDate, ReferenceData refData)
Calculates the fixing date from the effective date.LocalDate
calculateMaturityFromEffective(LocalDate effectiveDate, ReferenceData refData)
Calculates the maturity date from the effective date.LocalDate
calculateMaturityFromFixing(LocalDate fixingDate, ReferenceData refData)
Calculates the maturity date from the fixing date.LocalDate
calculatePublicationFromFixing(LocalDate fixingDate, ReferenceData refData)
Calculates the publication date from the fixing date.static ExtendedEnum<OvernightIndex>
extendedEnum()
Gets the extended enum helper.int
getEffectiveDateOffset()
Gets the number of days to add to the fixing date to obtain the effective date.String
getName()
Gets the name that uniquely identifies this index.int
getPublicationDateOffset()
Gets the number of days to add to the fixing date to obtain the publication date.static OvernightIndex
of(String uniqueName)
Obtains an instance from the specified unique name.-
Methods inherited from interface com.opengamma.strata.basics.index.FloatingRateIndex
getCurrency, getDayCount, getDefaultFixedLegDayCount, getFloatingRateName, isActive
-
Methods inherited from interface com.opengamma.strata.basics.index.RateIndex
getFixingCalendar, getTenor
-
-
-
-
Method Detail
-
of
static OvernightIndex of(String uniqueName)
Obtains an instance from the specified unique name.- Parameters:
uniqueName
- the unique name- Returns:
- the index
- Throws:
IllegalArgumentException
- if the name is not known
-
extendedEnum
static ExtendedEnum<OvernightIndex> extendedEnum()
Gets the extended enum helper.This helper allows instances of the index to be looked up. It also provides the complete set of available instances.
- Returns:
- the extended enum helper
-
getPublicationDateOffset
int getPublicationDateOffset()
Gets the number of days to add to the fixing date to obtain the publication date.In most cases, the fixing rate is available on the fixing date. In a few cases, publication of the fixing rate is delayed until the following business day. This property is zero if publication is on the fixing date, or one if it is the next day.
- Returns:
- the publication date offset
-
getEffectiveDateOffset
int getEffectiveDateOffset()
Gets the number of days to add to the fixing date to obtain the effective date.In most cases, the settlement date and start of the implied deposit is on the fixing date. In a few cases, the settlement date is the following business day. This property is zero if settlement is on the fixing date, or one if it is the next day. Maturity is always one business day after the settlement date.
- Returns:
- the effective date offset
-
calculatePublicationFromFixing
LocalDate calculatePublicationFromFixing(LocalDate fixingDate, ReferenceData refData)
Calculates the publication date from the fixing date.The fixing date is the date on which the index is to be observed. The publication date is the date on which the fixed rate is actually published.
No error is thrown if the input date is not a valid fixing date. Instead, the fixing date is moved to the next valid fixing date and then processed.
- Parameters:
fixingDate
- the fixing daterefData
- the reference data, used to resolve the holiday calendar- Returns:
- the publication date
-
calculateEffectiveFromFixing
LocalDate calculateEffectiveFromFixing(LocalDate fixingDate, ReferenceData refData)
Calculates the effective date from the fixing date.The fixing date is the date on which the index is to be observed. The effective date is the date on which the implied deposit starts.
No error is thrown if the input date is not a valid fixing date. Instead, the fixing date is moved to the next valid fixing date and then processed.
- Parameters:
fixingDate
- the fixing daterefData
- the reference data, used to resolve the holiday calendar- Returns:
- the effective date
-
calculateMaturityFromFixing
LocalDate calculateMaturityFromFixing(LocalDate fixingDate, ReferenceData refData)
Calculates the maturity date from the fixing date.The fixing date is the date on which the index is to be observed. The maturity date is the date on which the implied deposit ends.
No error is thrown if the input date is not a valid fixing date. Instead, the fixing date is moved to the next valid fixing date and then processed.
- Parameters:
fixingDate
- the fixing daterefData
- the reference data, used to resolve the holiday calendar- Returns:
- the maturity date
-
calculateFixingFromEffective
LocalDate calculateFixingFromEffective(LocalDate effectiveDate, ReferenceData refData)
Calculates the fixing date from the effective date.The fixing date is the date on which the index is to be observed. The effective date is the date on which the implied deposit starts.
No error is thrown if the input date is not a valid effective date. Instead, the effective date is moved to the next valid effective date and then processed.
- Parameters:
effectiveDate
- the effective daterefData
- the reference data, used to resolve the holiday calendar- Returns:
- the fixing date
-
calculateMaturityFromEffective
LocalDate calculateMaturityFromEffective(LocalDate effectiveDate, ReferenceData refData)
Calculates the maturity date from the effective date.The effective date is the date on which the implied deposit starts. The maturity date is the date on which the implied deposit ends.
No error is thrown if the input date is not a valid effective date. Instead, the effective date is moved to the next valid effective date and then processed.
- Parameters:
effectiveDate
- the effective daterefData
- the reference data, used to resolve the holiday calendar- Returns:
- the maturity date
-
getName
String getName()
Gets the name that uniquely identifies this index.This name is used in serialization and can be parsed using
of(String)
.
-
-