Class BondFutureSecurity.Builder

  • All Implemented Interfaces:
    org.joda.beans.BeanBuilder<BondFutureSecurity>
    Enclosing class:
    BondFutureSecurity

    public static final class BondFutureSecurity.Builder
    extends org.joda.beans.impl.direct.DirectFieldsBeanBuilder<BondFutureSecurity>
    The bean-builder for BondFutureSecurity.
    • Method Detail

      • info

        public BondFutureSecurity.Builder info​(SecurityInfo info)
        Sets the standard security information.

        This includes the security identifier.

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

        public BondFutureSecurity.Builder currency​(Currency currency)
        Sets the currency that the future is traded in.
        Parameters:
        currency - the new value, not null
        Returns:
        this, for chaining, not null
      • deliveryBasketIds

        public BondFutureSecurity.Builder deliveryBasketIds​(List<SecurityId> deliveryBasketIds)
        Sets the basket of deliverable bonds.

        The underlying which will be delivered in the future time is chosen from a basket of underling securities. This must not be empty.

        All of the underlying bonds must have the same notional and currency.

        Parameters:
        deliveryBasketIds - the new value, not empty
        Returns:
        this, for chaining, not null
      • deliveryBasketIds

        public BondFutureSecurity.Builder deliveryBasketIds​(SecurityId... deliveryBasketIds)
        Sets the deliveryBasketIds property in the builder from an array of objects.
        Parameters:
        deliveryBasketIds - the new value, not empty
        Returns:
        this, for chaining, not null
      • conversionFactors

        public BondFutureSecurity.Builder conversionFactors​(List<Double> conversionFactors)
        Sets the conversion factor for each bond in the basket.

        The price of each underlying security in the basket is rescaled by the conversion factor. This must not be empty, and its size must be the same as the size of deliveryBasketIds.

        All of the underlying bonds must have the same notional and currency.

        Parameters:
        conversionFactors - the new value, not empty
        Returns:
        this, for chaining, not null
      • conversionFactors

        public BondFutureSecurity.Builder conversionFactors​(Double... conversionFactors)
        Sets the conversionFactors property in the builder from an array of objects.
        Parameters:
        conversionFactors - the new value, not empty
        Returns:
        this, for chaining, not null
      • lastTradeDate

        public BondFutureSecurity.Builder lastTradeDate​(LocalDate lastTradeDate)
        Sets the last trading date.

        The future security is traded until this date.

        Parameters:
        lastTradeDate - the new value, not null
        Returns:
        this, for chaining, not null
      • firstNoticeDate

        public BondFutureSecurity.Builder firstNoticeDate​(LocalDate firstNoticeDate)
        Sets the first notice date.

        The first date on which the delivery of the underlying is authorized.

        Parameters:
        firstNoticeDate - the new value, not null
        Returns:
        this, for chaining, not null
      • lastNoticeDate

        public BondFutureSecurity.Builder lastNoticeDate​(LocalDate lastNoticeDate)
        Sets the last notice date.

        The last date on which the delivery of the underlying is authorized.

        Parameters:
        lastNoticeDate - the new value, not null
        Returns:
        this, for chaining, not null
      • firstDeliveryDate

        public BondFutureSecurity.Builder firstDeliveryDate​(LocalDate firstDeliveryDate)
        Sets the first delivery date.

        The first date on which the underlying is delivered.

        If not specified, the date will be computed from firstNoticeDate by using settlementDateOffset in the first element of the delivery basket when the future is resolved.

        Parameters:
        firstDeliveryDate - the new value
        Returns:
        this, for chaining, not null
      • lastDeliveryDate

        public BondFutureSecurity.Builder lastDeliveryDate​(LocalDate lastDeliveryDate)
        Sets the last delivery date.

        The last date on which the underlying is delivered.

        If not specified, the date will be computed from lastNoticeDate by using settlementDateOffset in the first element of the delivery basket when the future is resolved.

        Parameters:
        lastDeliveryDate - the new value
        Returns:
        this, for chaining, not null
      • rounding

        public BondFutureSecurity.Builder rounding​(Rounding rounding)
        Sets the definition of how to round the futures price, defaulted to no rounding.

        The price is represented in decimal form, not percentage form. As such, the decimal places expressed by the rounding refers to this decimal form. For example, the common market price of 99.7125 for a 0.2875% rate is represented as 0.997125 which has 6 decimal places.

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

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