Class IssuerCurveDiscountFactors
- java.lang.Object
-
- com.opengamma.strata.pricer.bond.IssuerCurveDiscountFactors
-
- All Implemented Interfaces:
Serializable
,org.joda.beans.Bean
,org.joda.beans.ImmutableBean
public final class IssuerCurveDiscountFactors extends Object implements org.joda.beans.ImmutableBean, Serializable
Provides access to discount factors for an issuer curve.The discount factor represents the time value of money for the specified issuer and currency when comparing the valuation date to the specified date.
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
IssuerCurveDiscountFactors.Meta
The meta-bean forIssuerCurveDiscountFactors
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description double
discountFactor(LocalDate date)
Gets the discount factor.boolean
equals(Object obj)
Currency
getCurrency()
Gets the currency.DiscountFactors
getDiscountFactors()
Gets the underlying discount factors for a single currency.LegalEntityGroup
getLegalEntityGroup()
Gets the legal entity group.LocalDate
getValuationDate()
Gets the valuation date.int
hashCode()
static IssuerCurveDiscountFactors.Meta
meta()
The meta-bean forIssuerCurveDiscountFactors
.IssuerCurveDiscountFactors.Meta
metaBean()
static IssuerCurveDiscountFactors
of(DiscountFactors discountFactors, LegalEntityGroup legalEntityGroup)
Obtains an instance based on discount factors and legal entity group.CurrencyParameterSensitivities
parameterSensitivity(IssuerCurveZeroRateSensitivity pointSensitivity)
Calculates the curve parameter sensitivity from the point sensitivity.String
toString()
IssuerCurveZeroRateSensitivity
zeroRatePointSensitivity(LocalDate date)
Calculates the zero rate point sensitivity at the specified date.IssuerCurveZeroRateSensitivity
zeroRatePointSensitivity(LocalDate date, Currency sensitivityCurrency)
Calculates the zero rate point sensitivity at the specified date specifying the currency of the sensitivity.
-
-
-
Method Detail
-
of
public static IssuerCurveDiscountFactors of(DiscountFactors discountFactors, LegalEntityGroup legalEntityGroup)
Obtains an instance based on discount factors and legal entity group.- Parameters:
discountFactors
- the discount factorslegalEntityGroup
- the legal entity group- Returns:
- the issuer curve discount factors
-
getCurrency
public Currency getCurrency()
Gets the currency.The currency that discount factors are provided for.
- Returns:
- the currency
-
getValuationDate
public LocalDate getValuationDate()
Gets the valuation date.The raw data in this provider is calibrated for this date.
- Returns:
- the valuation date
-
discountFactor
public double discountFactor(LocalDate date)
Gets the discount factor.The discount factor represents the time value of money for the specified currency and legal entity when comparing the valuation date to the specified date.
If the valuation date is on or after the specified date, the discount factor is 1.
- Parameters:
date
- the date to discount to- Returns:
- the discount factor
-
zeroRatePointSensitivity
public IssuerCurveZeroRateSensitivity zeroRatePointSensitivity(LocalDate date)
Calculates the zero rate point sensitivity at the specified date.This returns a sensitivity instance referring to the zero rate sensitivity of the curve used to determine the discount factor. The sensitivity typically has the value
(-discountFactor * relativeYearFraction)
. The sensitivity refers to the result ofdiscountFactor(LocalDate)
.- Parameters:
date
- the date to discount to- Returns:
- the point sensitivity of the zero rate
- Throws:
RuntimeException
- if the result cannot be calculated
-
zeroRatePointSensitivity
public IssuerCurveZeroRateSensitivity zeroRatePointSensitivity(LocalDate date, Currency sensitivityCurrency)
Calculates the zero rate point sensitivity at the specified date specifying the currency of the sensitivity.This returns a sensitivity instance referring to the zero rate sensitivity of the curve used to determine the discount factor. The sensitivity typically has the value
(-discountFactor * relativeYearFraction)
. The sensitivity refers to the result ofdiscountFactor(LocalDate)
.This method allows the currency of the sensitivity to differ from the currency of the curve.
- Parameters:
date
- the date to discount tosensitivityCurrency
- the currency of the sensitivity- Returns:
- the point sensitivity of the zero rate
- Throws:
RuntimeException
- if the result cannot be calculated
-
parameterSensitivity
public CurrencyParameterSensitivities parameterSensitivity(IssuerCurveZeroRateSensitivity pointSensitivity)
Calculates the curve parameter sensitivity from the point sensitivity.This is used to convert a single point sensitivity to curve parameter sensitivity. The calculation typically involves multiplying the point and unit sensitivities.
- Parameters:
pointSensitivity
- the point sensitivity to convert- Returns:
- the parameter sensitivity
- Throws:
RuntimeException
- if the result cannot be calculated
-
meta
public static IssuerCurveDiscountFactors.Meta meta()
The meta-bean forIssuerCurveDiscountFactors
.- Returns:
- the meta-bean, not null
-
metaBean
public IssuerCurveDiscountFactors.Meta metaBean()
- Specified by:
metaBean
in interfaceorg.joda.beans.Bean
-
getDiscountFactors
public DiscountFactors getDiscountFactors()
Gets the underlying discount factors for a single currency.This contains curve, curve currency, valuation date and day count convention. The discount factor, its point sensitivity and curve sensitivity are computed by this
DiscountFactors
.- Returns:
- the value of the property, not null
-
getLegalEntityGroup
public LegalEntityGroup getLegalEntityGroup()
Gets the legal entity group.The group defines the legal entity that the discount factors are for.
- Returns:
- the value of the property, not null
-
-