Class FlatForwardVolatilityCurve

All Implemented Interfaces:
Curve, ExplicitBootCurve, LatentState

public class FlatForwardVolatilityCurve
extends ExplicitBootVolatilityCurve
FlatForwardVolatilityCurve manages the Volatility Latent State, using the Forward Volatility as the State Response Representation.
Module Product Core Module
Library Fixed Income Analytics
Project Latent State Inference and Creation Utilities
Package Nonlinear (i.e., Boot) Latent State Construction
Author:
Lakshmi Krishnamurthy
  • Constructor Details

    • FlatForwardVolatilityCurve

      public FlatForwardVolatilityCurve​(int epochDate, VolatilityLabel volatilityLabel, java.lang.String currency, int[] pillarDateArray, double[] impliedVolatilityArray) throws java.lang.Exception
      FlatForwardVolatilityCurve Constructor
      Parameters:
      epochDate - Epoch Date
      volatilityLabel - Volatility Label
      currency - Currency
      pillarDateArray - Array of the Pillar Dates
      impliedVolatilityArray - Array of the corresponding Implied Volatility Nodes
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
  • Method Details

    • impliedVol

      public double impliedVol​(int date) throws java.lang.Exception
      Description copied from class: VolatilityCurve
      Compute the Deterministic Implied Volatility at the Date Node from the Volatility Term Structure
      Specified by:
      impliedVol in class VolatilityCurve
      Parameters:
      date - The Date Node
      Returns:
      The Deterministic Implied Volatility at the Date Node from the Volatility Term Structure
      Throws:
      java.lang.Exception - Thrown if the Deterministic Implied Volatility cannot be computed
    • node

      public double node​(int date) throws java.lang.Exception
      Description copied from class: NodeStructure
      Get the Market Node at the given Predictor Ordinate
      Specified by:
      node in class NodeStructure
      Parameters:
      date - The Predictor Ordinate
      Returns:
      The Node evaluated from the Term Structure
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
    • vol

      public double vol​(int date) throws java.lang.Exception
      Description copied from class: VolatilityCurve
      Compute the Deterministic Implied Volatility at the Date Node from the Volatility Term Structure
      Specified by:
      vol in class VolatilityCurve
      Parameters:
      date - The Date Node
      Returns:
      The Deterministic Implied Volatility at the Date Node from the Volatility Term Structure
      Throws:
      java.lang.Exception - Thrown if the Deterministic Implied Volatility cannot be computed
    • nodeDerivative

      public double nodeDerivative​(int date, int order) throws java.lang.Exception
      Description copied from class: NodeStructure
      Get the Market Node Derivative at the given Predictor Ordinate
      Specified by:
      nodeDerivative in class NodeStructure
      Parameters:
      date - The Predictor Ordinate
      order - Order of the Derivative
      Returns:
      The Node Derivative evaluated from the Term Structure
      Throws:
      java.lang.Exception - Thrown if the Inputs are Invalid
    • setNodeValue

      public boolean setNodeValue​(int nodeIndex, double value)
      Description copied from interface: ExplicitBootCurve
      Set the Value/Slope at the Node specified by the Index
      Parameters:
      nodeIndex - Node Index
      value - Node Value
      Returns:
      Success (true), failure (false)
    • bumpNodeValue

      public boolean bumpNodeValue​(int nodeIndex, double value)
      Description copied from interface: ExplicitBootCurve
      Bump the node value at the node specified the index by the value
      Parameters:
      nodeIndex - node index
      value - node bump value
      Returns:
      Success (true), failure (false)
    • setFlatValue

      public boolean setFlatValue​(double value)
      Description copied from interface: ExplicitBootCurve
      Set the flat value across all the nodes
      Parameters:
      value - node value
      Returns:
      Success (true), failure (false)