public abstract class FXCurve extends java.lang.Object implements Curve
| Modifier and Type | Method and Description |
|---|---|
abstract double[] |
bootstrapBasis(int[] aiDateNode,
ValuationParams valParams,
MergedDiscountForwardCurve dcNum,
MergedDiscountForwardCurve dcDenom,
boolean bBasisOnDenom)
Bootstrap the basis to the discount curve inputs
|
abstract MergedDiscountForwardCurve |
bootstrapBasisDC(int[] aiDateNode,
ValuationParams valParams,
MergedDiscountForwardCurve dcNum,
MergedDiscountForwardCurve dcDenom,
boolean bBasisOnDenom)
Bootstrap the discount curve from the discount curve inputs
|
CalibratableComponent[] |
calibComp()
Retrieve the Calibration Components
|
java.lang.String |
currency()
Get the Currency
|
CurrencyPair |
currencyPair()
Return the CurrencyPair
|
LatentState |
customTweakManifestMeasure(java.lang.String strManifestMeasure,
ManifestMeasureTweak rvtp)
Create a LatentState Instance from the Manifest Measure Tweak Parameters
|
LatentState |
customTweakQuantificationMetric(ManifestMeasureTweak rvtp)
Create a LatentState Instance from the Quantification Metric Tweak Parameters
|
JulianDate |
epoch()
Get the Epoch Date
|
abstract double |
fx(int iDate)
Calculate the FX Forward to the given Date
|
double |
fx(JulianDate dt)
Calculate the FX Forward to the given date
|
double |
fx(java.lang.String strTenor)
Calculate the FX Forward to the given date
|
abstract double[] |
impliedNodeRates(int[] aiDateNode,
ValuationParams valParams,
MergedDiscountForwardCurve dcNum,
MergedDiscountForwardCurve dcDenom,
boolean bBasisOnDenom)
Calculate the rates implied by the discount curve inputs
|
abstract WengertJacobian |
jackDForwardDManifestMeasure(java.lang.String strManifestMeasure,
int iDate)
Retrieve the Manifest Measure Jacobian of the Forward Rate to the given date
|
WengertJacobian |
jackDForwardDManifestMeasure(java.lang.String strManifestMeasure,
JulianDate dt)
Retrieve the Manifest Measure Jacobian of the Forward Rate to the given date
|
WengertJacobian |
jackDForwardDManifestMeasure(java.lang.String strManifestMeasure,
java.lang.String strTenor)
Retrieve the Manifest Measure Jacobian of the Forward Rate to the date implied by the given Tenor
|
LatentStateLabel |
label()
Get the Curve Latent State Identifier Label
|
CaseInsensitiveTreeMap<java.lang.Double> |
manifestMeasure(java.lang.String strInstr)
Retrieve the Manifest Measure Map of the given Instrument used to construct the Curve
|
LatentState |
parallelShiftManifestMeasure(java.lang.String strManifestMeasure,
double dblShift)
Create a LatentState Instance from the Manifest Measure Parallel Shift
|
LatentState |
parallelShiftQuantificationMetric(double dblShift)
Create a LatentState Instance from the Quantification Metric Parallel Shift
|
abstract double |
rate(int[] aiDateNode,
ValuationParams valParams,
MergedDiscountForwardCurve dcNum,
MergedDiscountForwardCurve dcDenom,
int iDate,
boolean bBasisOnDenom)
Calculate the rate implied by the discount curve inputs to a specified date
|
boolean |
setCCIS(CurveConstructionInputSet ccis)
Set the Curve Construction Input Set Parameters
|
LatentState |
shiftManifestMeasure(int iSpanIndex,
java.lang.String strManifestMeasure,
double dblShift)
Create a LatentState Instance from the Shift of the Specified Manifest Measure
|
abstract double[] |
zeroBasis(int[] aiDateNode,
ValuationParams valParams,
MergedDiscountForwardCurve dcNum,
MergedDiscountForwardCurve dcDenom,
boolean bBasisOnDenom)
Calculate the set of Zero basis given the input discount curves
|
public abstract double fx(int iDate)
throws java.lang.Exception
iDate - Datejava.lang.Exception - Thrown if the FX Forward cannot be calculatedpublic abstract double[] zeroBasis(int[] aiDateNode,
ValuationParams valParams,
MergedDiscountForwardCurve dcNum,
MergedDiscountForwardCurve dcDenom,
boolean bBasisOnDenom)
aiDateNode - Array of Date NodesvalParams - Valuation ParametersdcNum - Discount Curve NumeratordcDenom - Discount Curve DenominatorbBasisOnDenom - True if the basis is calculated on the denominator discount curvepublic abstract double[] bootstrapBasis(int[] aiDateNode,
ValuationParams valParams,
MergedDiscountForwardCurve dcNum,
MergedDiscountForwardCurve dcDenom,
boolean bBasisOnDenom)
aiDateNode - Array of Date NodesvalParams - Valuation ParametersdcNum - Discount Curve NumeratordcDenom - Discount Curve DenominatorbBasisOnDenom - True if the basis is calculated on the denominator discount curvepublic abstract MergedDiscountForwardCurve bootstrapBasisDC(int[] aiDateNode, ValuationParams valParams, MergedDiscountForwardCurve dcNum, MergedDiscountForwardCurve dcDenom, boolean bBasisOnDenom)
aiDateNode - Array of Date NodesvalParams - Valuation ParametersdcNum - Discount Curve NumeratordcDenom - Discount Curve DenominatorbBasisOnDenom - True if the basis is calculated on the denominator discount curvepublic abstract double[] impliedNodeRates(int[] aiDateNode,
ValuationParams valParams,
MergedDiscountForwardCurve dcNum,
MergedDiscountForwardCurve dcDenom,
boolean bBasisOnDenom)
aiDateNode - Array of Date NodesvalParams - Valuation ParametersdcNum - Discount Curve NumeratordcDenom - Discount Curve DenominatorbBasisOnDenom - True if the basis is calculated on the denominator discount curvepublic abstract double rate(int[] aiDateNode,
ValuationParams valParams,
MergedDiscountForwardCurve dcNum,
MergedDiscountForwardCurve dcDenom,
int iDate,
boolean bBasisOnDenom)
throws java.lang.Exception
aiDateNode - Array of Date NodesvalParams - ValuationParamsdcNum - Discount Curve NumeratordcDenom - Discount Curve DenominatoriDate - Date to which the implied rate is soughtbBasisOnDenom - True if the implied rate is calculated on the denominator discount curvejava.lang.Exception - Thrown if the implied rate cannot be calculatedpublic LatentStateLabel label()
Curvepublic java.lang.String currency()
Curvepublic JulianDate epoch()
Curvepublic CurrencyPair currencyPair()
public double fx(JulianDate dt) throws java.lang.Exception
dt - Datejava.lang.Exception - Thrown if the FX Forward cannot be calculatedpublic double fx(java.lang.String strTenor)
throws java.lang.Exception
strTenor - The Tenorjava.lang.Exception - Thrown if the FX Forward cannot be calculatedpublic boolean setCCIS(CurveConstructionInputSet ccis)
Curvepublic CalibratableComponent[] calibComp()
Curvepublic CaseInsensitiveTreeMap<java.lang.Double> manifestMeasure(java.lang.String strInstr)
CurvemanifestMeasure in interface CurvestrInstr - The Calibration Instrument's Code whose Manifest Measure Map is soughtpublic LatentState parallelShiftManifestMeasure(java.lang.String strManifestMeasure, double dblShift)
LatentStateparallelShiftManifestMeasure in interface LatentStatestrManifestMeasure - The Specified Manifest MeasuredblShift - Parallel shift of the Manifest Measurepublic LatentState shiftManifestMeasure(int iSpanIndex, java.lang.String strManifestMeasure, double dblShift)
LatentStateshiftManifestMeasure in interface LatentStateiSpanIndex - Index into the Span that identifies the InstrumentstrManifestMeasure - The Specified Manifest MeasuredblShift - Shift of the Manifest Measurepublic LatentState customTweakManifestMeasure(java.lang.String strManifestMeasure, ManifestMeasureTweak rvtp)
LatentStatecustomTweakManifestMeasure in interface LatentStatestrManifestMeasure - The Specified Manifest Measurervtp - Manifest Measure Tweak Parameterspublic LatentState parallelShiftQuantificationMetric(double dblShift)
LatentStateparallelShiftQuantificationMetric in interface LatentStatedblShift - Parallel shift of the Quantification Metricpublic LatentState customTweakQuantificationMetric(ManifestMeasureTweak rvtp)
LatentStatecustomTweakQuantificationMetric in interface LatentStatervtp - Quantification Metric Tweak Parameterspublic abstract WengertJacobian jackDForwardDManifestMeasure(java.lang.String strManifestMeasure, int iDate)
strManifestMeasure - Manifest MeasureiDate - Datepublic WengertJacobian jackDForwardDManifestMeasure(java.lang.String strManifestMeasure, JulianDate dt)
strManifestMeasure - Manifest Measuredt - Datepublic WengertJacobian jackDForwardDManifestMeasure(java.lang.String strManifestMeasure, java.lang.String strTenor)
strManifestMeasure - Manifest MeasurestrTenor - Tenor