Class ScenarioLocalVolatilityBuilder

java.lang.Object
org.drip.state.creator.ScenarioLocalVolatilityBuilder

public class ScenarioLocalVolatilityBuilder
extends java.lang.Object
ScenarioLocalVolatilityBuilder implements the construction of the Local Volatility surface using the input option instruments, their Call Prices, and a wide variety of custom build schemes. It implements the following Functions:
  • Create a Volatility Curve from the Calibration Instruments
  • Build an Instance of the Volatility Surface using custom wire span and surface splines
  • Construct a Scenario Market Surface off of cubic polynomial wire spline and cubic polynomial surface Spline

Module Product Core Module
Library Fixed Income Analytics
Project Latent State Inference and Creation Utilities
Package Scenario State Curve/Surface Builders
Author:
Lakshmi Krishnamurthy
  • Constructor Details

    • ScenarioLocalVolatilityBuilder

      public ScenarioLocalVolatilityBuilder()
  • Method Details

    • NonlinearBuild

      public static final VolatilityCurve NonlinearBuild​(java.lang.String name, JulianDate spotDate, LatentStateLabel underlyingLatentStateLabel, FRAStandardCapFloor[] fraStandardCapFloorArray, double[] calibrationQuoteArray, java.lang.String[] calibrationMeasureArray, MergedDiscountForwardCurve discountCurve, ForwardCurve forwardCurve, LatentStateFixingsContainer latentStateFixingsContainer)
      Create a Volatility Curve from the Calibration Instruments
      Parameters:
      name - Volatility Curve name
      spotDate - Spot Date
      underlyingLatentStateLabel - Underlying Latent State Label
      fraStandardCapFloorArray - Array of the FRA Cap Floor Instruments
      calibrationQuoteArray - Input Calibration Quotes
      calibrationMeasureArray - Input Calibration Measures
      discountCurve - Base Discount Curve
      forwardCurve - Forward Curve
      latentStateFixingsContainer - Latent State Fixings Container
      Returns:
      The Calibrated Volatility Curve
    • CustomSplineWireSurface

      public static final MarketSurface CustomSplineWireSurface​(java.lang.String name, JulianDate startDate, java.lang.String currency, double riskFreeRate, double[] strikeArray, double[] maturityArray, double[][] callPriceGrid, SegmentCustomBuilderControl wireSpanSegmentCustomBuilderControl, SegmentCustomBuilderControl surfaceSegmentCustomBuilderControl)
      Build an Instance of the Volatility Surface using custom wire span and surface splines
      Parameters:
      name - Name of the Volatility Surface
      startDate - Start/Epoch Julian Date
      currency - Currency
      riskFreeRate - Risk Free Discounting Rate
      strikeArray - Array of Strikes
      maturityArray - Array of Maturities
      callPriceGrid - Double Array of the Call Prices
      wireSpanSegmentCustomBuilderControl - The Wire Span Segment Customizer
      surfaceSegmentCustomBuilderControl - The Surface Segment Customizer
      Returns:
      Instance of the Market Node Surface
    • CubicPolynomialWireSurface

      public static final MarketSurface CubicPolynomialWireSurface​(java.lang.String name, JulianDate startDate, java.lang.String currency, double riskFreeRate, double[] strikeArray, java.lang.String[] tenorArray, double[][] nodeGrid)
      Construct a Scenario Market Surface off of cubic polynomial wire spline and cubic polynomial surface Spline.
      Parameters:
      name - Name of the Volatility Surface
      startDate - Start/Epoch Julian Date
      currency - Currency
      riskFreeRate - Risk Free Discounting Rate
      strikeArray - Array of Strikes
      tenorArray - Array of Maturity Tenors
      nodeGrid - Double Array of the Surface Nodes
      Returns:
      Instance of the Market Node Surface