public class BermudanSwaptionFromSwapSchedules extends AbstractLIBORMonteCarloProduct implements RegressionBasisFunctionsProvider, ProcessTimeDiscretizationProvider, Swaption
LIBORModelMonteCarloSimulationModel| Modifier and Type | Class and Description |
|---|---|
static class |
BermudanSwaptionFromSwapSchedules.SwaptionType |
Swaption.ValueUnit| Constructor and Description |
|---|
BermudanSwaptionFromSwapSchedules(LocalDateTime referenceDate,
BermudanSwaptionFromSwapSchedules.SwaptionType swaptionType,
LocalDate[] exerciseDates,
LocalDate swapEndDate,
double[] swaprates,
double[] notionals,
Schedule[] fixSchedules,
Schedule[] floatSchedules)
Create a Bermudan swaption.
|
BermudanSwaptionFromSwapSchedules(LocalDateTime referenceDate,
BermudanSwaptionFromSwapSchedules.SwaptionType swaptionType,
LocalDate[] exerciseDates,
LocalDate swapEndDate,
double[] swaprates,
double[] notionals,
Schedule[] fixSchedules,
Schedule[] floatSchedules,
MonteCarloConditionalExpectationRegressionFactory conditionalExpectationRegressionFactory,
RegressionBasisFunctionsProvider regressionBasisFunctionProvider)
Create a Bermudan swaption from an array of underlying swap schedules (fix leg and float leg), swap rates and notionals.
|
BermudanSwaptionFromSwapSchedules(LocalDateTime referenceDate,
BermudanSwaptionFromSwapSchedules.SwaptionType swaptionType,
LocalDate[] exerciseDates,
LocalDate swapEndDate,
double[] swaprates,
double[] notionals,
Schedule[] fixSchedules,
Schedule[] floatSchedules,
RegressionBasisFunctionsProvider regressionBasisFunctionProvider)
Create a Bermudan swaption.
|
BermudanSwaptionFromSwapSchedules(LocalDateTime referenceDate,
BermudanSwaptionFromSwapSchedules.SwaptionType swaptionType,
LocalDate[] exerciseDates,
LocalDate swapEndDate,
double swaprate,
double notional,
Schedule[] fixSchedules,
Schedule[] floatSchedules)
Create a Bermudan swaption.
|
| Modifier and Type | Method and Description |
|---|---|
RandomVariable[] |
getBasisFunctions(double evaluationTime,
LIBORModelMonteCarloSimulationModel model)
Provides a set of \( \mathcal{F}_{t} \)-measurable random variables which can serve as regression basis functions.
|
RandomVariable[] |
getBasisFunctions(double evaluationTime,
MonteCarloSimulationModel model)
Provides a set of \( \mathcal{F}_{t} \)-measurable random variables which can serve as regression basis functions.
|
RegressionBasisFunctionsProvider |
getBasisFunctionsProviderWithForwardRates() |
RegressionBasisFunctionsProvider |
getBasisFunctionsProviderWithSwapRates() |
ConditionalExpectationEstimator |
getConditionalExpectationEstimator(double exerciseTime,
LIBORModelMonteCarloSimulationModel model)
The conditional expectation is calculated using a Monte-Carlo regression technique.
|
LocalDate[] |
getExerciseDates()
Returns the exercise dates.
|
TimeDiscretization |
getProcessTimeDiscretization(LocalDateTime referenceDate)
Returns a suggestion for a time discretization which is suited (or required) for the processing (e.g valuation) of this object.
|
LocalDate |
getSwapEndDate() |
BermudanSwaptionFromSwapSchedules.SwaptionType |
getSwaptionType() |
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.
|
String |
toString() |
getFactorDrift, getValue, getValueForModifiedData, getValuesgetCurrency, getValue, getValue, getValues, getValues, getValues, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedDataclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetCurrency, getValue, getValue, getValues, getValues, getValues, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedDatapublic BermudanSwaptionFromSwapSchedules(LocalDateTime referenceDate, BermudanSwaptionFromSwapSchedules.SwaptionType swaptionType, LocalDate[] exerciseDates, LocalDate swapEndDate, double[] swaprates, double[] notionals, Schedule[] fixSchedules, Schedule[] floatSchedules, MonteCarloConditionalExpectationRegressionFactory conditionalExpectationRegressionFactory, RegressionBasisFunctionsProvider regressionBasisFunctionProvider)
conditionalExpectationRegressionFactory you may pass
new MonteCarloConditionalExpectationLinearRegressionFactory() (default) or, e.g., new MonteCarloConditionalExpectationLocalizedOnDependentRegressionFactory(2.0).referenceDate - The date associated with the inception (t=0) of this product. (Not used).swaptionType - The type of the underlying swap (PAYER, RECEIVER).exerciseDates - A vector of exercise dates.swapEndDate - The final maturity of the underlying swap.swaprates - A vector of swap rates for the underlying swaps.notionals - A vector of notionals for the underlying swaps.fixSchedules - A vector of fix leg schedules for the underlying swaps.floatSchedules - A vector of float leg schedules for the underlying swaps.conditionalExpectationRegressionFactory - A object implementing a factory creating a conditional expectation estimator from given regression basis functionsregressionBasisFunctionProvider - An object implementing RegressionBasisFunctionsProvider to provide the basis functions for the estimation of conditional expectations.public BermudanSwaptionFromSwapSchedules(LocalDateTime referenceDate, BermudanSwaptionFromSwapSchedules.SwaptionType swaptionType, LocalDate[] exerciseDates, LocalDate swapEndDate, double[] swaprates, double[] notionals, Schedule[] fixSchedules, Schedule[] floatSchedules, RegressionBasisFunctionsProvider regressionBasisFunctionProvider)
referenceDate - The date associated with the inception (t=0) of this product. (Not used).swaptionType - The type of the underlying swap (PAYER, RECEIVER).exerciseDates - A vector of exercise dates.swapEndDate - The final maturity of the underlying swap.swaprates - A vector of swap rates for the underlying swaps.notionals - A vector of notionals for the underlying swaps.fixSchedules - A vector of fix leg schedules for the underlying swaps.floatSchedules - A vector of float leg schedules for the underlying swaps.regressionBasisFunctionProvider - An object implementing RegressionBasisFunctionsProvider to provide the basis functions for the estimation of conditional expectations.public BermudanSwaptionFromSwapSchedules(LocalDateTime referenceDate, BermudanSwaptionFromSwapSchedules.SwaptionType swaptionType, LocalDate[] exerciseDates, LocalDate swapEndDate, double[] swaprates, double[] notionals, Schedule[] fixSchedules, Schedule[] floatSchedules)
referenceDate - The date associated with the inception (t=0) of this product. (Not used).swaptionType - The type of the underlying swap (PAYER, RECEIVER).exerciseDates - A vector of exercise dates.swapEndDate - The final maturity of the underlying swap.swaprates - A vector of swap rates for the underlying swaps.notionals - A vector of notionals for the underlying swaps.fixSchedules - A vector of fix leg schedules for the underlying swaps.floatSchedules - A vector of float leg schedules for the underlying swaps.public BermudanSwaptionFromSwapSchedules(LocalDateTime referenceDate, BermudanSwaptionFromSwapSchedules.SwaptionType swaptionType, LocalDate[] exerciseDates, LocalDate swapEndDate, double swaprate, double notional, Schedule[] fixSchedules, Schedule[] floatSchedules)
referenceDate - The date associated with the inception (t=0) of this product.swaptionType - The type of the underlying swap (PAYER, RECEIVER).exerciseDates - A vector of exercise dates.swapEndDate - The final maturity of the underlying swap.swaprate - A constant swaprate applying to all underlying swaps.notional - A constant notional applying to all underlying swaps.fixSchedules - A vector of fix leg schedules for the underlying swaps.floatSchedules - A vector of float leg schedules for the underlying swaps.public LocalDate[] getExerciseDates()
public BermudanSwaptionFromSwapSchedules.SwaptionType getSwaptionType()
public LocalDate getSwapEndDate()
public RandomVariable getValue(double evaluationTime, LIBORModelMonteCarloSimulationModel model) throws CalculationException
TermStructureMonteCarloProductgetValue 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 TimeDiscretization getProcessTimeDiscretization(LocalDateTime referenceDate)
ProcessTimeDiscretizationProvidergetProcessTimeDiscretization in interface ProcessTimeDiscretizationProviderreferenceDate - A reference date relative to which the discretization is generated.public ConditionalExpectationEstimator getConditionalExpectationEstimator(double exerciseTime, LIBORModelMonteCarloSimulationModel model) throws CalculationException
exerciseTime - The exercise timemodel - The valuation modelCalculationException - Thrown if underlying model failed to calculate stochastic process.public RandomVariable[] getBasisFunctions(double evaluationTime, MonteCarloSimulationModel model) throws CalculationException
RegressionBasisFunctionsProvidergetBasisFunctions in interface RegressionBasisFunctionsProviderevaluationTime - The evaluation time \( t \) at which the basis function should be observed.model - The Monte-Carlo model used to derive the basis function.CalculationException - Thrown if derivation of the basis function fails.public RandomVariable[] getBasisFunctions(double evaluationTime, LIBORModelMonteCarloSimulationModel model) throws CalculationException
evaluationTime - The evaluation time \( t \) at which the basis function should be observed.model - The Monte-Carlo model used to derive the basis function.CalculationException - Thrown if derivation of the basis function fails.public RegressionBasisFunctionsProvider getBasisFunctionsProviderWithSwapRates()
public RegressionBasisFunctionsProvider getBasisFunctionsProviderWithForwardRates()
public String toString()
toString in class AbstractMonteCarloProductCopyright © 2019. All rights reserved.