Class BondFuture.Builder

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

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

      • get

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

        public BondFuture.Builder set​(org.joda.beans.MetaProperty<?> property,
                                      Object value)
        Specified by:
        set in interface org.joda.beans.BeanBuilder<BondFuture>
        Overrides:
        set in class org.joda.beans.impl.direct.DirectFieldsBeanBuilder<BondFuture>
      • securityId

        public BondFuture.Builder securityId​(SecurityId securityId)
        Sets the security identifier.

        This identifier uniquely identifies the security within the system.

        Parameters:
        securityId - the new value, not null
        Returns:
        this, for chaining, not null
      • deliveryBasket

        public BondFuture.Builder deliveryBasket​(List<FixedCouponBond> deliveryBasket)
        Sets the basket of deliverable bonds.

        The underling 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:
        deliveryBasket - the new value, not empty
        Returns:
        this, for chaining, not null
      • deliveryBasket

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

        public BondFuture.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 deliveryBasket.

        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 BondFuture.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 BondFuture.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 BondFuture.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 BondFuture.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 BondFuture.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 BondFuture.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 BondFuture.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<BondFuture>