Class IborRateSwapLegConvention.Builder

    • Method Detail

      • get

        public java.lang.Object get​(java.lang.String propertyName)
        Specified by:
        get in interface org.joda.beans.BeanBuilder<IborRateSwapLegConvention>
        Overrides:
        get in class org.joda.beans.impl.direct.DirectFieldsBeanBuilder<IborRateSwapLegConvention>
      • index

        public IborRateSwapLegConvention.Builder index​(IborIndex index)
        Sets the Ibor index.

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

        Parameters:
        index - the new value, not null
        Returns:
        this, for chaining, not null
      • currency

        public IborRateSwapLegConvention.Builder currency​(Currency currency)
        Sets the leg currency, optional with defaulting getter.

        This is the currency of the swap leg 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.

        This will default to the currency of the index if not specified.

        Parameters:
        currency - the new value
        Returns:
        this, for chaining, not null
      • dayCount

        public IborRateSwapLegConvention.Builder dayCount​(DayCount dayCount)
        Sets the day count convention applicable, optional with defaulting getter.

        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.

        This will default to the day count of the index if not specified.

        Parameters:
        dayCount - the new value
        Returns:
        this, for chaining, not null
      • accrualFrequency

        public IborRateSwapLegConvention.Builder accrualFrequency​(Frequency accrualFrequency)
        Sets the periodic frequency of accrual.

        Interest will be accrued over periods at the specified periodic frequency, such as every 3 months.

        This will default to the tenor of the index if not specified.

        Parameters:
        accrualFrequency - the new value
        Returns:
        this, for chaining, not null
      • accrualBusinessDayAdjustment

        public IborRateSwapLegConvention.Builder accrualBusinessDayAdjustment​(BusinessDayAdjustment accrualBusinessDayAdjustment)
        Sets the business day adjustment to apply to accrual schedule dates.

        Each date in the calculated schedule is determined without taking into account weekends and holidays. The adjustment specified here is used to convert those dates to valid business days.

        The start date and end date may have their own business day adjustment rules. If those are not present, then this adjustment is used instead.

        This will default to 'ModifiedFollowing' using the index fixing calendar if not specified.

        Parameters:
        accrualBusinessDayAdjustment - the new value
        Returns:
        this, for chaining, not null
      • startDateBusinessDayAdjustment

        public IborRateSwapLegConvention.Builder startDateBusinessDayAdjustment​(BusinessDayAdjustment startDateBusinessDayAdjustment)
        Sets the business day adjustment to apply to the start date, optional with defaulting getter.

        The start date property is an unadjusted date and as such might be a weekend or holiday. The adjustment specified here is used to convert the start date to a valid business day.

        This will default to the accrualDatesBusinessDayAdjustment if not specified.

        Parameters:
        startDateBusinessDayAdjustment - the new value
        Returns:
        this, for chaining, not null
      • endDateBusinessDayAdjustment

        public IborRateSwapLegConvention.Builder endDateBusinessDayAdjustment​(BusinessDayAdjustment endDateBusinessDayAdjustment)
        Sets the business day adjustment to apply to the end date, optional with defaulting getter.

        The end date property is an unadjusted date and as such might be a weekend or holiday. The adjustment specified here is used to convert the end date to a valid business day.

        This will default to the accrualDatesBusinessDayAdjustment if not specified.

        Parameters:
        endDateBusinessDayAdjustment - the new value
        Returns:
        this, for chaining, not null
      • stubConvention

        public IborRateSwapLegConvention.Builder stubConvention​(StubConvention stubConvention)
        Sets the convention defining how to handle stubs, optional with defaulting getter.

        The stub convention is used during schedule construction to determine whether the irregular remaining period occurs at the start or end of the schedule. It also determines whether the irregular period is shorter or longer than the regular period.

        This will default to 'SmartInitial' if not specified.

        Parameters:
        stubConvention - the new value
        Returns:
        this, for chaining, not null
      • rollConvention

        public IborRateSwapLegConvention.Builder rollConvention​(RollConvention rollConvention)
        Sets the convention defining how to roll dates, optional with defaulting getter.

        The schedule periods are determined at the high level by repeatedly adding the frequency to the start date, or subtracting it from the end date. The roll convention provides the detailed rule to adjust the day-of-month or day-of-week.

        This will default to 'None' if not specified.

        Parameters:
        rollConvention - the new value
        Returns:
        this, for chaining, not null
      • fixingRelativeTo

        public IborRateSwapLegConvention.Builder fixingRelativeTo​(FixingRelativeTo fixingRelativeTo)
        Sets the base date that each fixing is made relative to, optional with defaulting getter.

        The fixing date is relative to either the start or end of each reset period.

        Note that in most cases, the reset frequency matches the accrual frequency and thus there is only one fixing for the accrual period.

        This will default to 'PeriodStart' if not specified.

        Parameters:
        fixingRelativeTo - the new value
        Returns:
        this, for chaining, not null
      • fixingDateOffset

        public IborRateSwapLegConvention.Builder fixingDateOffset​(DaysAdjustment fixingDateOffset)
        Sets the offset of the fixing date from each adjusted reset date.

        The offset is applied to the base date specified by fixingRelativeTo. The offset is typically a negative number of business days. The data model permits the offset to differ from that of the index, however the two are typically the same.

        This will default to the fixing date offset of the index if not specified.

        Parameters:
        fixingDateOffset - the new value
        Returns:
        this, for chaining, not null
      • paymentFrequency

        public IborRateSwapLegConvention.Builder paymentFrequency​(Frequency paymentFrequency)
        Sets the periodic frequency of payments, optional with defaulting getter.

        Regular payments will be made at the specified periodic frequency. The frequency must be the same as, or a multiple of, the accrual periodic frequency.

        Compounding applies if the payment frequency does not equal the accrual frequency.

        This will default to the accrual frequency if not specified.

        Parameters:
        paymentFrequency - the new value
        Returns:
        this, for chaining, not null
      • paymentDateOffset

        public IborRateSwapLegConvention.Builder paymentDateOffset​(DaysAdjustment paymentDateOffset)
        Sets the offset of payment from the base date, optional with defaulting getter.

        The offset is applied to the unadjusted date specified by paymentRelativeTo. Offset can be based on calendar days or business days.

        This will default to 'None' if not specified.

        Parameters:
        paymentDateOffset - the new value
        Returns:
        this, for chaining, not null
      • compoundingMethod

        public IborRateSwapLegConvention.Builder compoundingMethod​(CompoundingMethod compoundingMethod)
        Sets the compounding method to use when there is more than one accrual period in each payment period, optional with defaulting getter.

        Compounding is used when combining accrual periods.

        This will default to 'None' if not specified.

        Parameters:
        compoundingMethod - the new value
        Returns:
        this, for chaining, not null
      • notionalExchange

        public IborRateSwapLegConvention.Builder notionalExchange​(boolean notionalExchange)
        Sets the flag indicating whether to exchange the notional.

        If 'true', the notional there is both an initial exchange and a final exchange of notional.

        This will default to 'false' if not specified.

        Parameters:
        notionalExchange - the new value
        Returns:
        this, for chaining, not null
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class org.joda.beans.impl.direct.DirectFieldsBeanBuilder<IborRateSwapLegConvention>