Class ResolvedDsf

  • All Implemented Interfaces:
    ResolvedProduct, java.io.Serializable, Bean, ImmutableBean

    public final class ResolvedDsf
    extends java.lang.Object
    implements ResolvedProduct, ImmutableBean, java.io.Serializable
    A Deliverable Swap Future, resolved for pricing.

    This is the resolved form of Dsf and is an input to the pricers. Applications will typically create a ResolvedDsf from a Dsf using Dsf.resolve(ReferenceData).

    A ResolvedDsf is bound to data that changes over time, such as holiday calendars. If the data changes, such as the addition of a new holiday, the resolved form will not be updated. Care must be taken when placing the resolved form in a cache or persistence layer.

    Price

    The price of a DSF is based on the present value (NPV) of the underlying swap on the delivery date. For example, a price of 100.182 represents a present value of $100,182.00, if the notional is $100,000. This price can also be viewed as a percentage present value - (100 + percentPv), or 0.182% in this example.

    Strata uses decimal prices for DSFs in the trade model, pricers and market data. The decimal price is based on the decimal multiplier equivalent to the implied percentage. Thus the market price of 100.182 is represented in Strata by 1.00182.

    See Also:
    Serialized Form
    • Method Detail

      • getCurrency

        public Currency getCurrency()
        Gets the currency of the underlying swap.

        The underlying swap must have a single currency.

        Returns:
        the currency of the swap
      • meta

        public static ResolvedDsf.Meta meta()
        The meta-bean for ResolvedDsf.
        Returns:
        the meta-bean, not null
      • builder

        public static ResolvedDsf.Builder builder()
        Returns a builder used to create an instance of the bean.
        Returns:
        the builder, not null
      • getSecurityId

        public SecurityId getSecurityId()
        Gets the security identifier.

        This identifier uniquely identifies the security within the system.

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

        public double getNotional()
        Gets the notional of the futures.

        This is also called face value or contract value.

        Returns:
        the value of the property
      • getDeliveryDate

        public java.time.LocalDate getDeliveryDate()
        Gets the delivery date.

        The underlying swap is delivered on this date.

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

        public java.time.LocalDate getLastTradeDate()
        Gets the last date of trading.

        This date must be before the delivery date of the underlying swap.

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

        public ResolvedSwap getUnderlyingSwap()
        Gets the underlying swap.

        The delivery date of the future is typically the first accrual date of the underlying swap. The swap should be a receiver swap of notional 1.

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

        public ResolvedDsf.Builder toBuilder()
        Returns a builder that allows this bean to be mutated.
        Returns:
        the mutable builder, not null
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object