Class SwaptionSurfaceExpirySimpleMoneynessParameterMetadata

  • All Implemented Interfaces:
    ParameterMetadata, java.io.Serializable, org.joda.beans.Bean, org.joda.beans.ImmutableBean

    public final class SwaptionSurfaceExpirySimpleMoneynessParameterMetadata
    extends java.lang.Object
    implements ParameterMetadata, org.joda.beans.ImmutableBean, java.io.Serializable
    Surface node metadata for a surface node for swaptions with a specific time to expiry and simple moneyness.

    This typically represents a node of swaption volatility surface parameterized by expiry and simple moneyness.

    See Also:
    Serialized Form
    • Method Detail

      • of

        public static SwaptionSurfaceExpirySimpleMoneynessParameterMetadata of​(double yearFraction,
                                                                               double simpleMoneyness)
        Creates node metadata using swap convention, year fraction and simple moneyness.
        Parameters:
        yearFraction - the year fraction
        simpleMoneyness - the simple moneyness
        Returns:
        node metadata
      • of

        public static SwaptionSurfaceExpirySimpleMoneynessParameterMetadata of​(double yearFraction,
                                                                               double simpleMoneyness,
                                                                               java.lang.String label)
        Creates node using swap convention, year fraction, simple moneyness and label.
        Parameters:
        yearFraction - the year fraction
        simpleMoneyness - the simple moneyness
        label - the label to use
        Returns:
        the metadata
      • getIdentifier

        public Pair<java.lang.Double,​java.lang.Double> getIdentifier()
        Description copied from interface: ParameterMetadata
        Returns an object used to identify the parameter.

        A good choice of identifier is one that makes sense to the user and can easily be created as part of a scenario definition. For example, many nodes types are naturally identified by a tenor.

        The identifier must satisfy the following criteria:

        • It must be non-null
        • It should be unique within a single data set
        • It should have a sensible implementation of hashCode() and equals().
        Otherwise the choice of identifier is free and the system makes no assumptions about it.
        Specified by:
        getIdentifier in interface ParameterMetadata
        Returns:
        an object used to uniquely identify the parameter within the data
      • getYearFraction

        public double getYearFraction()
        Gets the year fraction of the surface node.

        This is the time to expiry that the node on the surface is defined as. There is not necessarily a direct relationship with a date from an underlying instrument.

        Returns:
        the value of the property
      • getSimpleMoneyness

        public double getSimpleMoneyness()
        Gets the simple moneyness of the surface node.

        This is defined as strike - forward.

        Returns:
        the value of the property
      • getLabel

        public java.lang.String getLabel()
        Gets the label that describes the node.
        Specified by:
        getLabel in interface ParameterMetadata
        Returns:
        the value of the property, not empty
      • 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