Package org.drip.state.curve
Class BasisSplineFXForward
java.lang.Object
org.drip.state.fx.FXCurve
org.drip.state.curve.BasisSplineFXForward
- All Implemented Interfaces:
Curve
,LatentState
public class BasisSplineFXForward extends FXCurve
BasisSplineFXForward manages the Basis Latent State, using the Basis as the State Response
Representation. It exports the following functionality:
- BasisSplineFXForward Constructor
- Retrieve the FX Spot
Module | Product Core Module |
Library | Fixed Income Analytics |
Project | Latent State Inference and Creation Utilities |
Package | Basis Spline Based Latent States |
- Author:
- Lakshmi Krishnamurthy
-
Constructor Summary
Constructors Constructor Description BasisSplineFXForward(CurrencyPair currencyPair, Span span)
BasisSplineFXForward constructor -
Method Summary
Modifier and Type Method Description double[]
bootstrapBasis(int[] nodeDateArray, ValuationParams valuationParams, MergedDiscountForwardCurve numeratorDiscountCurve, MergedDiscountForwardCurve denominatorDiscountCurve, boolean basisOnDenominator)
Bootstrap the basis to the discount curve inputsMergedDiscountForwardCurve
bootstrapBasisDC(int[] nodeDateArray, ValuationParams valuationParams, MergedDiscountForwardCurve numeratorDiscountCurve, MergedDiscountForwardCurve denominatorDiscountCurve, boolean basisOnDenominator)
Bootstrap the discount curve from the discount curve inputsdouble
fx(int date)
Calculate the FX Forward to the given Datedouble
fxSpot()
Retrieve the FX Spotdouble[]
impliedNodeRates(int[] nodeDateArray, ValuationParams valuationParams, MergedDiscountForwardCurve numeratorDiscountCurve, MergedDiscountForwardCurve denominatorDiscountCurve, boolean basisOnDenominator)
Calculate the rates implied by the discount curve inputsWengertJacobian
jackDForwardDManifestMeasure(java.lang.String manifestMeasure, int date)
Retrieve the Manifest Measure Jacobian of the Forward Rate to the given datedouble
rate(int[] nodeDateArray, ValuationParams valuationParams, MergedDiscountForwardCurve numeratorDiscountCurve, MergedDiscountForwardCurve denominatorDiscountCurve, int date, boolean basisOnDenominator)
Calculate the rate implied by the discount curve inputs to a specified datedouble[]
zeroBasis(int[] nodeDateArray, ValuationParams valuationParams, MergedDiscountForwardCurve numeratorDiscountCurve, MergedDiscountForwardCurve denominatorDiscountCurve, boolean basisOnDenominator)
Calculate the set of Zero basis given the input discount curvesMethods inherited from class org.drip.state.fx.FXCurve
calibComp, currency, currencyPair, customTweakManifestMeasure, customTweakQuantificationMetric, epoch, fx, fx, jackDForwardDManifestMeasure, jackDForwardDManifestMeasure, label, manifestMeasure, parallelShiftManifestMeasure, parallelShiftQuantificationMetric, setCCIS, shiftManifestMeasure
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
BasisSplineFXForward
BasisSplineFXForward constructor- Parameters:
currencyPair
- The Currency Pairspan
- The Span over which the Basis Representation is valid- Throws:
java.lang.Exception
- Thrown if the Inputs are Invalid
-
-
Method Details
-
fx
public double fx(int date) throws java.lang.ExceptionDescription copied from class:FXCurve
Calculate the FX Forward to the given Date -
fxSpot
public double fxSpot()Retrieve the FX Spot- Returns:
- The FX Spot
-
zeroBasis
public double[] zeroBasis(int[] nodeDateArray, ValuationParams valuationParams, MergedDiscountForwardCurve numeratorDiscountCurve, MergedDiscountForwardCurve denominatorDiscountCurve, boolean basisOnDenominator)Description copied from class:FXCurve
Calculate the set of Zero basis given the input discount curves- Specified by:
zeroBasis
in classFXCurve
- Parameters:
nodeDateArray
- Array of Date NodesvaluationParams
- Valuation ParametersnumeratorDiscountCurve
- Discount Curve NumeratordenominatorDiscountCurve
- Discount Curve DenominatorbasisOnDenominator
- True if the basis is calculated on the denominator discount curve- Returns:
- Array of the computed basis
-
bootstrapBasis
public double[] bootstrapBasis(int[] nodeDateArray, ValuationParams valuationParams, MergedDiscountForwardCurve numeratorDiscountCurve, MergedDiscountForwardCurve denominatorDiscountCurve, boolean basisOnDenominator)Description copied from class:FXCurve
Bootstrap the basis to the discount curve inputs- Specified by:
bootstrapBasis
in classFXCurve
- Parameters:
nodeDateArray
- Array of Date NodesvaluationParams
- Valuation ParametersnumeratorDiscountCurve
- Discount Curve NumeratordenominatorDiscountCurve
- Discount Curve DenominatorbasisOnDenominator
- True if the basis is calculated on the denominator discount curve- Returns:
- Array of the computed basis
-
impliedNodeRates
public double[] impliedNodeRates(int[] nodeDateArray, ValuationParams valuationParams, MergedDiscountForwardCurve numeratorDiscountCurve, MergedDiscountForwardCurve denominatorDiscountCurve, boolean basisOnDenominator)Description copied from class:FXCurve
Calculate the rates implied by the discount curve inputs- Specified by:
impliedNodeRates
in classFXCurve
- Parameters:
nodeDateArray
- Array of Date NodesvaluationParams
- Valuation ParametersnumeratorDiscountCurve
- Discount Curve NumeratordenominatorDiscountCurve
- Discount Curve DenominatorbasisOnDenominator
- True if the basis is calculated on the denominator discount curve- Returns:
- Array of the computed implied rates
-
bootstrapBasisDC
public MergedDiscountForwardCurve bootstrapBasisDC(int[] nodeDateArray, ValuationParams valuationParams, MergedDiscountForwardCurve numeratorDiscountCurve, MergedDiscountForwardCurve denominatorDiscountCurve, boolean basisOnDenominator)Description copied from class:FXCurve
Bootstrap the discount curve from the discount curve inputs- Specified by:
bootstrapBasisDC
in classFXCurve
- Parameters:
nodeDateArray
- Array of Date NodesvaluationParams
- Valuation ParametersnumeratorDiscountCurve
- Discount Curve NumeratordenominatorDiscountCurve
- Discount Curve DenominatorbasisOnDenominator
- True if the basis is calculated on the denominator discount curve- Returns:
- Array of the computed basis
-
rate
public double rate(int[] nodeDateArray, ValuationParams valuationParams, MergedDiscountForwardCurve numeratorDiscountCurve, MergedDiscountForwardCurve denominatorDiscountCurve, int date, boolean basisOnDenominator) throws java.lang.ExceptionDescription copied from class:FXCurve
Calculate the rate implied by the discount curve inputs to a specified date- Specified by:
rate
in classFXCurve
- Parameters:
nodeDateArray
- Array of Date NodesvaluationParams
- ValuationParamsnumeratorDiscountCurve
- Discount Curve NumeratordenominatorDiscountCurve
- Discount Curve Denominatordate
- Date to which the implied rate is soughtbasisOnDenominator
- True if the implied rate is calculated on the denominator discount curve- Returns:
- Implied rate
- Throws:
java.lang.Exception
- Thrown if the implied rate cannot be calculated
-
jackDForwardDManifestMeasure
Description copied from class:FXCurve
Retrieve the Manifest Measure Jacobian of the Forward Rate to the given date- Specified by:
jackDForwardDManifestMeasure
in classFXCurve
- Parameters:
manifestMeasure
- Manifest Measuredate
- Date- Returns:
- The Manifest Measure Jacobian of the Forward Rate to the given date
-