Class HullWhiteOneFactorPiecewiseConstantParametersProvider

  • All Implemented Interfaces:
    Serializable, org.joda.beans.Bean, org.joda.beans.ImmutableBean

    public final class HullWhiteOneFactorPiecewiseConstantParametersProvider
    extends Object
    implements org.joda.beans.ImmutableBean, Serializable
    Hull-White one factor model with piecewise constant volatility.

    Reference: Henrard, M. "The Irony in the derivatives discounting Part II: the crisis", Wilmott Journal, 2010, 2, 301-316

    See Also:
    Serialized Form
    • Method Detail

      • futuresConvexityFactor

        public double futuresConvexityFactor​(LocalDate referenceDate,
                                             LocalDate startDate,
                                             LocalDate endDate)
        Calculates the future convexity factor for the specified period at the future reference date.
        Parameters:
        referenceDate - the reference date
        startDate - the start date of the period
        endDate - the end date of the period
        Returns:
        the convexity factor
      • futuresConvexityFactorAdjoint

        public ValueDerivatives futuresConvexityFactorAdjoint​(LocalDate referenceDate,
                                                              LocalDate startDate,
                                                              LocalDate endDate)
        Calculates the future convexity factor and its derivative for the specified period at the future reference date.
        Parameters:
        referenceDate - the reference date
        startDate - the start date of the period
        endDate - the end date of the period
        Returns:
        the convexity factor
      • relativeTime

        public double relativeTime​(LocalDate date)
        Converts a date to a relative year fraction.

        When the date is after the valuation date, the returned number is negative.

        Parameters:
        date - the date to find the relative year fraction of
        Returns:
        the relative year fraction
      • alpha

        public double alpha​(LocalDate startDate,
                            LocalDate endDate,
                            LocalDate numeraireDate,
                            LocalDate maturityDate)
        Calculates the alpha value for the specified period with respect to the maturity date.

        The alpha is computed with a bond numeraire of numeraireDate.

        Parameters:
        startDate - the start date of the period
        endDate - the end date of the period
        numeraireDate - the numeraire date
        maturityDate - the maturity date
        Returns:
        the alpha
      • alphaAdjoint

        public ValueDerivatives alphaAdjoint​(LocalDate startDate,
                                             LocalDate endDate,
                                             LocalDate numeraireDate,
                                             LocalDate maturityDate)
        Calculates the alpha and its derivative values for the specified period with respect to the maturity date.

        The alpha is computed with a bond numeraire of numeraireDate.

        Parameters:
        startDate - the start date of the period
        endDate - the end date of the period
        numeraireDate - the numeraire date
        maturityDate - the maturity date
        Returns:
        the alpha adjoint
      • getDayCount

        public DayCount getDayCount()
        Gets the day count applicable to the model.
        Returns:
        the value of the property, not null
      • getValuationDateTime

        public ZonedDateTime getValuationDateTime()
        Gets the valuation date.

        The volatilities are calibrated for this date-time.

        Returns:
        the value of the property, not null
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object