Class SwaptionSurfaceExpiryStrikeParameterMetadata

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

    public final class SwaptionSurfaceExpiryStrikeParameterMetadata
    extends java.lang.Object
    implements ParameterMetadata, ImmutableBean, java.io.Serializable
    Surface node metadata for a surface node for swaptions with a specific time to expiry and strike.

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

    See Also:
    Serialized Form
    • Method Detail

      • of

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

        public static SwaptionSurfaceExpiryStrikeParameterMetadata of​(double yearFraction,
                                                                      double strike,
                                                                      java.lang.String label)
        Creates node using swap convention, year fraction, strike and label.
        Parameters:
        yearFraction - the year fraction
        strike - 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
      • getStrike

        public double getStrike()
        Gets the strike of the surface node.
        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