Class ImmutableIborFutureContractSpec

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

    public final class ImmutableIborFutureContractSpec
    extends Object
    implements IborFutureContractSpec, org.joda.beans.ImmutableBean, Serializable
    A contract specification for exchange traded Ibor Futures.

    The contract specification defines how the future is traded. A specific future is created by specifying the year-month.

    See Also:
    Serialized Form
    • Method Detail

      • createTrade

        public IborFutureTrade createTrade​(LocalDate tradeDate,
                                           SecurityId securityId,
                                           SequenceDate sequenceDate,
                                           double quantity,
                                           double price,
                                           ReferenceData refData)
        Description copied from interface: IborFutureContractSpec
        Creates a trade based on this convention.

        This returns a trade based on the instructions in the SequenceDate. The sequence date points at the expiry of the future, which is how they are referred to in the market.

        Specified by:
        createTrade in interface IborFutureContractSpec
        Parameters:
        tradeDate - the trade date
        securityId - the identifier of the security
        sequenceDate - the date to be used from the sequence identifying the expiry of the future
        quantity - the number of contracts traded, positive if buying, negative if selling
        price - the trade price of the future
        refData - the reference data, used to resolve the trade dates
        Returns:
        the trade
      • createPosition

        public IborFuturePosition createPosition​(SecurityId securityId,
                                                 YearMonth expiry,
                                                 double quantity,
                                                 ReferenceData refData)
        Description copied from interface: IborFutureContractSpec
        Creates a position based on this convention.
        Specified by:
        createPosition in interface IborFutureContractSpec
        Parameters:
        securityId - the identifier of the security
        expiry - the expiry year month
        quantity - the number of contracts traded, positive if buying, negative if selling
        refData - the reference data, used to resolve the trade dates
        Returns:
        the position
      • meta

        public static org.joda.beans.TypedMetaBean<ImmutableIborFutureContractSpec> meta()
        The meta-bean for ImmutableIborFutureContractSpec.
        Returns:
        the meta-bean, not null
      • getIndex

        public IborIndex getIndex()
        Gets 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'.

        Specified by:
        getIndex in interface IborFutureContractSpec
        Returns:
        the value of the property, not null
      • getDateSequence

        public DateSequence getDateSequence()
        Gets the sequence of dates that the future is based on.

        This is used to calculate the reference date of the future that is the start date of the underlying synthetic deposit.

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

        public BusinessDayAdjustment getBusinessDayAdjustment()
        Gets the business day adjustment to apply to the reference date.

        The reference date, which is often the third Wednesday of the month, will be adjusted as defined here.

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

        public double getNotional()
        Gets the notional deposit that the contract models.

        This is the full notional of the deposit, such as 1 million dollars. The notional expressed here must be positive. The currency of the notional is specified by the index.

        Specified by:
        getNotional in interface IborFutureContractSpec
        Returns:
        the value of the property
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object