public class BermudanSwaption extends AbstractLIBORMonteCarloProduct implements RegressionBasisFunctionsProvider
LIBORModelMonteCarloSimulationModel| Constructor and Description |
|---|
BermudanSwaption(boolean[] isPeriodStartDateExerciseDate,
double[] fixingDates,
double[] periodLength,
double[] paymentDates,
double[] periodNotionals,
double[] swaprates) |
BermudanSwaption(boolean[] isPeriodStartDateExerciseDate,
double[] fixingDates,
double[] periodLength,
double[] paymentDates,
double[] periodNotionals,
double[] swaprates,
boolean isCallable) |
BermudanSwaption(boolean[] isPeriodStartDateExerciseDate,
double[] fixingDates,
double[] periodLength,
double[] paymentDates,
double[] periodNotionals,
double[] swaprates,
boolean isCallable,
RegressionBasisFunctionsProvider regressionBasisFunctionsProvider) |
| Modifier and Type | Method and Description |
|---|---|
RandomVariable[] |
getBasisFunctions(double fixingDate,
LIBORModelMonteCarloSimulationModel model)
Return the basis functions for the regression suitable for this product.
|
RandomVariable[] |
getBasisFunctions(double fixingDate,
MonteCarloSimulationModel model)
Return the basis functions for the regression suitable for this product.
|
ConditionalExpectationEstimator |
getConditionalExpectationEstimator(double fixingDate,
LIBORModelMonteCarloSimulationModel model)
Return the conditional expectation estimator suitable for this product.
|
double[] |
getExerciseTimes() |
double |
getFinalMaturity() |
double[] |
getFixingDates(double evaluationTime) |
boolean |
getIsCallable() |
double[] |
getPaymentDates() |
double[] |
getPeriodLengths() |
double[] |
getPeriodNotionals() |
SimpleSwap |
getSwap() |
double[] |
getSwapRates() |
RandomVariable |
getValue(double evaluationTime,
LIBORModelMonteCarloSimulationModel model)
This method returns the value random variable of the product within the specified model, evaluated at a given evalutationTime.
|
Map<String,Object> |
getValues(double evaluationTime,
LIBORModelMonteCarloSimulationModel model)
This method returns the valuation of the product within the specified model, evaluated at a given evalutationTime.
|
getFactorDrift, getValue, getValueForModifiedDatagetCurrency, getValue, getValue, getValues, getValues, getValues, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetCurrency, getValue, getValue, getValues, getValues, getValues, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedDatapublic BermudanSwaption(boolean[] isPeriodStartDateExerciseDate,
double[] fixingDates,
double[] periodLength,
double[] paymentDates,
double[] periodNotionals,
double[] swaprates,
boolean isCallable,
RegressionBasisFunctionsProvider regressionBasisFunctionsProvider)
isPeriodStartDateExerciseDate - If true, we may exercise at period startfixingDates - Vector of fixing datesperiodLength - Period lengths (must have same length as fixing dates)paymentDates - Vector of payment dates (must have same length as fixing dates)periodNotionals - Period notionals (must have same length as fixing dates)swaprates - Vector of strikes (must have same length as fixing dates)isCallable - If true, the product represent the Bermudan right to enter into a swap. If false the product represents the Bermudan right to terminate a running swap.regressionBasisFunctionsProvider - Used to determine the regression basis functions for the conditional expectation operator.public BermudanSwaption(boolean[] isPeriodStartDateExerciseDate,
double[] fixingDates,
double[] periodLength,
double[] paymentDates,
double[] periodNotionals,
double[] swaprates,
boolean isCallable)
isPeriodStartDateExerciseDate - If true, we may exercise at period startfixingDates - Vector of fixing datesperiodLength - Period lengths (must have same length as fixing dates)paymentDates - Vector of payment dates (must have same length as fixing dates)periodNotionals - Period notionals (must have same length as fixing dates)swaprates - Vector of strikes (must have same length as fixing dates)isCallable - If true, the product represent the Bemrudan right to enter into a swap. If false the product represents the Bermudan right to terminate a running swap.public BermudanSwaption(boolean[] isPeriodStartDateExerciseDate,
double[] fixingDates,
double[] periodLength,
double[] paymentDates,
double[] periodNotionals,
double[] swaprates)
isPeriodStartDateExerciseDate - If true, we may exercise at period startfixingDates - Vector of fixing datesperiodLength - Period lengths (must have same length as fixing dates)paymentDates - Vector of payment dates (must have same length as fixing dates)periodNotionals - Period notionals (must have same length as fixing dates)swaprates - Vector of strikes (must have same length as fixing dates)public Map<String,Object> getValues(double evaluationTime, LIBORModelMonteCarloSimulationModel model) throws CalculationException
TermStructureMonteCarloProductgetValues in interface TermStructureMonteCarloProductgetValues in class AbstractLIBORMonteCarloProductevaluationTime - The time on which this products value should be observed.model - The model used to price the product.CalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public RandomVariable getValue(double evaluationTime, LIBORModelMonteCarloSimulationModel model) throws CalculationException
getValue in interface TermStructureMonteCarloProductgetValue in class AbstractLIBORMonteCarloProductevaluationTime - The time on which this products value should be observed.model - The model used to price the product.CalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public ConditionalExpectationEstimator getConditionalExpectationEstimator(double fixingDate, LIBORModelMonteCarloSimulationModel model) throws CalculationException
fixingDate - The condition time.model - The modelCalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public RandomVariable[] getBasisFunctions(double fixingDate, MonteCarloSimulationModel model) throws CalculationException
getBasisFunctions in interface RegressionBasisFunctionsProviderfixingDate - The condition time.model - The modelCalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public RandomVariable[] getBasisFunctions(double fixingDate, LIBORModelMonteCarloSimulationModel model) throws CalculationException
fixingDate - The condition time.model - The modelCalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public double[] getExerciseTimes()
public double[] getFixingDates(double evaluationTime)
public SimpleSwap getSwap()
public double[] getPaymentDates()
public double[] getPeriodNotionals()
public double[] getSwapRates()
public double[] getPeriodLengths()
public double getFinalMaturity()
public boolean getIsCallable()
Copyright © 2019. All rights reserved.