Package | Description |
---|---|
net.finmath.marketdata.model.curves |
Provides interface specification and implementation of curves, e.g., interest rate
curves like discount curves and forward curves.
|
net.finmath.marketdata.model.volatilities |
Provides interface specification and implementation of volatility surfaces, e.g.,
interest rate volatility surfaces like (implied) caplet volatilities and swaption
volatilities.
|
net.finmath.marketdata.products |
Provides interface specification and implementation of products, e.g., calibration products.
|
net.finmath.montecarlo |
Provides basic interfaces and classes used in Monte-Carlo models (like LIBOR market model or Monte-Carlo simulation
of a Black-Scholes model), e.g., the Monte-Carlo random variable and the Brownian motion.
|
net.finmath.montecarlo.assetderivativevaluation |
Monte-Carlo models for asset value processes, like the Black Scholes model.
|
net.finmath.montecarlo.assetderivativevaluation.products |
Products which may be valued using an
AssetModelMonteCarloSimulationInterface . |
net.finmath.montecarlo.hybridassetinterestrate |
Provides interfaces and classes needed to generate a Hybrid Asset LIBOR Market Model.
|
net.finmath.montecarlo.interestrate |
Provides classes needed to generate a LIBOR market model (using numerical
algorithms from
net.finmath.montecarlo.process . |
net.finmath.montecarlo.interestrate.modelplugins |
Contains covariance models and their calibration as plug-ins for the LIBOR market model and volatility and correlation models which may be used to build a covariance model.
|
net.finmath.montecarlo.interestrate.products |
Provides classes which implement financial products which may be
valued using a
net.finmath.montecarlo.interestrate.LIBORModelMonteCarloSimulationInterface . |
net.finmath.montecarlo.model | |
net.finmath.montecarlo.process |
Interfaced for stochastic processes and numerical schemes for stochastic processes (SDEs), like the Euler scheme.
|
net.finmath.montecarlo.templatemethoddesign | |
net.finmath.montecarlo.templatemethoddesign.assetderivativevaluation | |
net.finmath.time |
Provides interfaces and classes for time discretizations, tenors and (swap) schedule generation.
|
Modifier and Type | Method and Description |
---|---|
static DiscountCurveInterface |
DiscountCurve.createDiscountFactorsFromForwardRates(String name,
TimeDiscretizationInterface tenor,
double[] forwardRates)
Create a discount curve from given time discretization and forward rates.
|
Modifier and Type | Method and Description |
---|---|
TimeDiscretizationInterface |
SwaptionMarketData.getOptionMaturities() |
TimeDiscretizationInterface |
AbstractSwaptionMarketData.getOptionMaturities() |
TimeDiscretizationInterface |
SwaptionMarketData.getTenor() |
TimeDiscretizationInterface |
AbstractSwaptionMarketData.getTenor() |
Constructor and Description |
---|
CapletVolatilitiesParametricFourParameterPicewiseConstant(String name,
LocalDate referenceDate,
double a,
double b,
double c,
double d,
TimeDiscretizationInterface timeDiscretization)
Create a model with parameters a,b,c,d.
|
SwaptionMarketData(ForwardCurveInterface forwardCurve,
DiscountCurveInterface discountCurve,
TimeDiscretizationInterface optionMatruities,
TimeDiscretizationInterface tenor,
double swapPeriodLength,
double[][] impliedVolatilities) |
Modifier and Type | Method and Description |
---|---|
static double |
Swap.getForwardSwapRate(TimeDiscretizationInterface fixTenor,
TimeDiscretizationInterface floatTenor,
ForwardCurveInterface forwardCurve) |
static double |
Swap.getForwardSwapRate(TimeDiscretizationInterface fixTenor,
TimeDiscretizationInterface floatTenor,
ForwardCurveInterface forwardCurve,
DiscountCurveInterface discountCurve) |
static double |
SwapAnnuity.getSwapAnnuity(TimeDiscretizationInterface tenor,
DiscountCurveInterface discountCurve)
Function to calculate an (idealized) swap annuity for a given schedule and discount curve.
|
static double |
SwapAnnuity.getSwapAnnuity(TimeDiscretizationInterface tenor,
ForwardCurveInterface forwardCurve)
Function to calculate an (idealized) single curve swap annuity for a given schedule and forward curve.
|
Modifier and Type | Method and Description |
---|---|
TimeDiscretizationInterface |
MonteCarloSimulationInterface.getTimeDiscretization()
Returns the timeDiscretization.
|
TimeDiscretizationInterface |
IndependentIncrementsInterface.getTimeDiscretization()
Returns the time discretization used for this set of time-discrete Brownian increments.
|
TimeDiscretizationInterface |
GammaProcess.getTimeDiscretization() |
TimeDiscretizationInterface |
CorrelatedBrownianMotion.getTimeDiscretization() |
TimeDiscretizationInterface |
BrownianMotionView.getTimeDiscretization() |
TimeDiscretizationInterface |
BrownianMotionInterface.getTimeDiscretization()
Returns the time discretization used for this set of time-discrete Brownian increments.
|
TimeDiscretizationInterface |
BrownianMotion.getTimeDiscretization() |
TimeDiscretizationInterface |
BrownianBridge.getTimeDiscretization() |
Modifier and Type | Method and Description |
---|---|
IndependentIncrementsInterface |
IndependentIncrementsInterface.getCloneWithModifiedTimeDiscretization(TimeDiscretizationInterface newTimeDiscretization)
Return a new object implementing BrownianMotionInterface
having the same specifications as this object but a different
time discretization.
|
IndependentIncrementsInterface |
GammaProcess.getCloneWithModifiedTimeDiscretization(TimeDiscretizationInterface newTimeDiscretization) |
BrownianMotionInterface |
CorrelatedBrownianMotion.getCloneWithModifiedTimeDiscretization(TimeDiscretizationInterface newTimeDiscretization) |
BrownianMotionInterface |
BrownianMotionView.getCloneWithModifiedTimeDiscretization(TimeDiscretizationInterface newTimeDiscretization) |
BrownianMotionInterface |
BrownianMotionInterface.getCloneWithModifiedTimeDiscretization(TimeDiscretizationInterface newTimeDiscretization)
Return a new object implementing BrownianMotionInterface
having the same specifications as this object but a different
time discretization.
|
BrownianMotionInterface |
BrownianMotion.getCloneWithModifiedTimeDiscretization(TimeDiscretizationInterface newTimeDiscretization) |
BrownianMotionInterface |
BrownianBridge.getCloneWithModifiedTimeDiscretization(TimeDiscretizationInterface newTimeDiscretization) |
Constructor and Description |
---|
BrownianBridge(TimeDiscretizationInterface timeDiscretization,
int numberOfPaths,
int seed,
RandomVariableInterface[] start,
RandomVariableInterface[] end)
Construct a Brownian bridge, bridging from a given start to a given end.
|
BrownianBridge(TimeDiscretizationInterface timeDiscretization,
int numberOfPaths,
int seed,
RandomVariableInterface start,
RandomVariableInterface end)
Construct a Brownian bridge, bridging from a given start to a given end.
|
BrownianMotion(TimeDiscretizationInterface timeDiscretization,
int numberOfFactors,
int numberOfPaths,
int seed)
Construct a Brownian motion.
|
BrownianMotion(TimeDiscretizationInterface timeDiscretization,
int numberOfFactors,
int numberOfPaths,
int seed,
AbstractRandomVariableFactory randomVariableFactory)
Construct a Brownian motion.
|
GammaProcess(TimeDiscretizationInterface timeDiscretization,
int numberOfFactors,
int numberOfPaths,
int seed,
double shape)
Construct a Gamma process with a given shape parameter.
|
GammaProcess(TimeDiscretizationInterface timeDiscretization,
int numberOfFactors,
int numberOfPaths,
int seed,
double shape,
double scale)
Construct a Gamma process with a given shape parameter.
|
Constructor and Description |
---|
MonteCarloBlackScholesModel(TimeDiscretizationInterface timeDiscretization,
int numberOfPaths,
double initialValue,
double riskFreeRate,
double volatility)
Create a Monte-Carlo simulation using given time discretization.
|
MonteCarloMultiAssetBlackScholesModel(TimeDiscretizationInterface timeDiscretization,
int numberOfPaths,
double[] initialValues,
double riskFreeRate,
double[] volatilities,
double[][] correlations)
Create a Monte-Carlo simulation using given time discretization.
|
Constructor and Description |
---|
AsianOption(double maturity,
double strike,
TimeDiscretizationInterface timesForAveraging)
Construct a product representing an Asian option on an asset S (where S the asset with index 0 from the model - single asset case).
|
Modifier and Type | Method and Description |
---|---|
TimeDiscretizationInterface |
HybridAssetLIBORModelMonteCarloSimulation.getLiborPeriodDiscretization() |
TimeDiscretizationInterface |
HybridAssetLIBORModelMonteCarloSimulation.getTimeDiscretization() |
Modifier and Type | Method and Description |
---|---|
TimeDiscretizationInterface |
LIBORModelMonteCarloSimulationInterface.getLiborPeriodDiscretization()
Returns the libor period discretization as time discretization representing start and end dates of periods.
|
TimeDiscretizationInterface |
LIBORModelMonteCarloSimulation.getLiborPeriodDiscretization() |
TimeDiscretizationInterface |
LIBORMarketModelStandard.getLiborPeriodDiscretization() |
TimeDiscretizationInterface |
LIBORMarketModelInterface.getLiborPeriodDiscretization()
The tenor time discretization of the forward rate curve.
|
TimeDiscretizationInterface |
LIBORMarketModel.getLiborPeriodDiscretization() |
TimeDiscretizationInterface |
LIBORModelMonteCarloSimulation.getTimeDiscretization() |
Constructor and Description |
---|
LIBORMarketModel(TimeDiscretizationInterface liborPeriodDiscretization,
AnalyticModelInterface analyticModel,
ForwardCurveInterface forwardRateCurve,
DiscountCurveInterface discountCurve,
AbstractLIBORCovarianceModel covarianceModel,
LIBORMarketModel.CalibrationItem[] calibrationItems,
Map<String,?> properties)
Creates a LIBOR Market Model for given covariance.
|
LIBORMarketModel(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
AbstractLIBORCovarianceModel covarianceModel)
Creates a LIBOR Market Model for given covariance.
|
LIBORMarketModel(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
AbstractLIBORCovarianceModel covarianceModel,
AbstractSwaptionMarketData swaptionMarketData)
Creates a LIBOR Market Model using a given covariance model and calibrating this model
to given swaption volatility data.
|
LIBORMarketModel(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
DiscountCurveInterface discountCurve,
AbstractLIBORCovarianceModel covarianceModel)
Creates a LIBOR Market Model for given covariance.
|
LIBORMarketModel(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
DiscountCurveInterface discountCurve,
AbstractLIBORCovarianceModel covarianceModel,
AbstractSwaptionMarketData swaptionMarketData)
Creates a LIBOR Market Model for given covariance.
|
LIBORMarketModel(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
DiscountCurveInterface discountCurve,
AbstractLIBORCovarianceModel covarianceModel,
AbstractSwaptionMarketData swaptionMarketData,
Map<String,?> properties)
Creates a LIBOR Market Model for given covariance.
|
LIBORMarketModel(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
DiscountCurveInterface discountCurve,
AbstractLIBORCovarianceModel covarianceModel,
LIBORMarketModel.CalibrationItem[] calibrationItems,
Map<String,?> properties)
Creates a LIBOR Market Model for given covariance.
|
LIBORMarketModelStandard(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
AbstractLIBORCovarianceModel covarianceModel)
Creates a LIBOR Market Model for given covariance.
|
LIBORMarketModelStandard(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
AbstractLIBORCovarianceModel covarianceModel,
AbstractSwaptionMarketData swaptionMarketData)
Creates a LIBOR Market Model using a given covariance model and calibrating this model
to given swaption volatility data.
|
LIBORMarketModelStandard(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
DiscountCurveInterface discountCurve,
AbstractLIBORCovarianceModel covarianceModel)
Creates a LIBOR Market Model for given covariance.
|
LIBORMarketModelStandard(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
DiscountCurveInterface discountCurve,
AbstractLIBORCovarianceModel covarianceModel,
AbstractSwaptionMarketData swaptionMarketData)
Creates a LIBOR Market Model for given covariance.
|
LIBORMarketModelStandard(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardRateCurve,
DiscountCurveInterface discountCurve,
AbstractLIBORCovarianceModel covarianceModel,
LIBORMarketModelStandard.CalibrationItem[] calibrationItems)
Creates a LIBOR Market Model for given covariance.
|
Modifier and Type | Method and Description |
---|---|
TimeDiscretizationInterface |
LIBORVolatilityModel.getLiborPeriodDiscretization() |
TimeDiscretizationInterface |
LIBORCorrelationModel.getLiborPeriodDiscretization() |
TimeDiscretizationInterface |
AbstractLIBORCovarianceModel.getLiborPeriodDiscretization()
The forward rate time discretization associated with this model (defines the components).
|
TimeDiscretizationInterface |
LIBORVolatilityModel.getTimeDiscretization() |
TimeDiscretizationInterface |
LIBORCorrelationModel.getTimeDiscretization() |
TimeDiscretizationInterface |
AbstractLIBORCovarianceModel.getTimeDiscretization()
The simulation time discretization associated with this model.
|
Constructor and Description |
---|
AbstractLIBORCovarianceModel(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
int numberOfFactors)
Constructor consuming time discretizations, which are handled by the super class.
|
AbstractLIBORCovarianceModelParametric(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
int numberOfFactors)
Constructor consuming time discretizations, which are handled by the super class.
|
LIBORCorrelationModel(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization) |
LIBORCorrelationModelExponentialDecay(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
int numberOfFactors,
double a) |
LIBORCorrelationModelExponentialDecay(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
int numberOfFactors,
double a,
boolean isCalibrateable)
Create a correlation model with an exponentially decaying correlation structure and the given number of factors.
|
LIBORCorrelationModelThreeParameterExponentialDecay(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
int numberOfFactors,
double a,
double b,
double c,
boolean isCalibrateable) |
LIBORCovarianceModelExponentialForm5Param(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
int numberOfFactors) |
LIBORCovarianceModelExponentialForm5Param(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
int numberOfFactors,
double[] parameters) |
LIBORCovarianceModelExponentialForm7Param(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
int numberOfFactors) |
LIBORCovarianceModelFromVolatilityAndCorrelation(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
LIBORVolatilityModel volatilityModel,
LIBORCorrelationModel correlationModel) |
LIBORVolatilityModel(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization) |
LIBORVolatilityModelFourParameterExponentialForm(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
double a,
double b,
double c,
double d,
boolean isCalibrateable)
Creates the volatility model σi(tj) = ( a + b * (Ti-tj) ) * exp(-c (Ti-tj)) + d
|
LIBORVolatilityModelFourParameterExponentialFormIntegrated(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
double a,
double b,
double c,
double d,
boolean isCalibrateable)
Creates the volatility model
\[
\sigma_{i}(t_{j}) = \sqrt{ \frac{1}{t_{j+1}-t_{j}} \int_{t_{j}}^{t_{j+1}} \left( ( a + b (T_{i}-t) ) \exp(-c (T_{i}-t)) + d \right)^{2} \ \mathrm{d}t } \text{
|
LIBORVolatilityModelFromGivenMatrix(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
double[][] volatility)
Creates a simple volatility model using given piece-wise constant values on
a given discretization grid.
|
LIBORVolatilityModelMaturityDependentFourParameterExponentialForm(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
double[] a,
double[] b,
double[] c,
double[] d) |
LIBORVolatilityModelMaturityDependentFourParameterExponentialForm(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
double a,
double b,
double c,
double d) |
LIBORVolatilityModelTwoParameterExponentialForm(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
double a,
double b)
Creates the volatility model σi(tj) = a * exp(-b (Ti-tj))
|
LIBORVolatilityModelTwoParameterExponentialForm(TimeDiscretizationInterface timeDiscretization,
TimeDiscretizationInterface liborPeriodDiscretization,
double a,
double b,
boolean isCalibrateable)
Creates the volatility model σi(tj) = a * exp(-b (Ti-tj))
|
Modifier and Type | Method and Description |
---|---|
static AbstractLIBORMonteCarloProduct |
SwaptionFactory.createSwaption(String className,
double swaprate,
TimeDiscretizationInterface swapTenor,
String valueUnitAsString) |
Map<String,double[]> |
SwaptionAnalyticApproximation.getLogSwaprateDerivative(TimeDiscretizationInterface liborPeriodDiscretization,
DiscountCurveInterface discountCurveInterface,
ForwardCurveInterface forwardCurveInterface)
This function calculate the partial derivative d log(S) / d log(Lk) for
a given swap rate with respect to a vector of forward rates (on a given forward rate tenor).
|
static Map<String,double[]> |
SwaptionAnalyticApproximationRebonato.getLogSwaprateDerivative(TimeDiscretizationInterface liborPeriodDiscretization,
DiscountCurveInterface discountCurveInterface,
ForwardCurveInterface forwardCurveInterface,
double[] swapTenor)
This function calculate the partial derivative d log(S) / d log(Lk) for
a given swap rate with respect to a vector of forward rates (on a given forward rate tenor).
|
static Map<String,double[]> |
SwaptionSingleCurveAnalyticApproximation.getLogSwaprateDerivative(TimeDiscretizationInterface liborPeriodDiscretization,
ForwardCurveInterface forwardCurveInterface,
double[] swapTenor)
This function calculate the partial derivative d log(S) / d log(Lk) for
a given swap rate with respect to a vector of forward rates (on a given forward rate tenor).
|
Constructor and Description |
---|
Swaption(double exerciseDate,
TimeDiscretizationInterface swapTenor,
double swaprate)
Creates a swaption using a TimeDiscretization
|
SwaptionAnalyticApproximation(double swaprate,
TimeDiscretizationInterface swapTenor)
Create an analytic swaption approximation product for
log normal forward rate model.
|
SwaptionAnalyticApproximationRebonato(double swaprate,
TimeDiscretizationInterface swapTenor)
Create an analytic swaption approximation product for
log normal forward rate model.
|
SwaptionSimple(double swaprate,
TimeDiscretizationInterface swapTenor)
Note: It is implicitly assumed that swapTenor[0] is the exercise date (no forward starting).
|
SwaptionSingleCurve(double exerciseDate,
TimeDiscretizationInterface swapTenor,
double swaprate)
Creates a swaption using a TimeDiscretization
|
SwaptionSingleCurveAnalyticApproximation(double swaprate,
TimeDiscretizationInterface swapTenor)
Create an analytic swaption approximation product for
log normal forward rate model.
|
Modifier and Type | Method and Description |
---|---|
TimeDiscretizationInterface |
AbstractModelInterface.getTimeDiscretization()
Returns the time discretization of the model parameters.
|
TimeDiscretizationInterface |
AbstractModel.getTimeDiscretization()
Get the time discretization of the model (simulation time).
|
Modifier and Type | Method and Description |
---|---|
TimeDiscretizationInterface |
ProcessInterface.getTimeDiscretization() |
TimeDiscretizationInterface |
LinearInterpolatedTimeDiscreteProcess.getTimeDiscretization() |
TimeDiscretizationInterface |
AbstractProcess.getTimeDiscretization() |
Constructor and Description |
---|
AbstractProcess(TimeDiscretizationInterface timeDiscretization)
Create a discretization scheme / a time discrete process.
|
Modifier and Type | Method and Description |
---|---|
TimeDiscretizationInterface |
LogNormalProcess.getTimeDiscretization() |
Constructor and Description |
---|
LogNormalProcess(TimeDiscretizationInterface timeDiscretization,
int numberOfComponents,
int numberOfPaths)
Create a simulation of log normal process.
|
LogNormalProcess(TimeDiscretizationInterface timeDiscretization,
int numberOfComponents,
int numberOfFactors,
int numberOfPaths,
int seed)
Create a simulation of log normal process.
|
Constructor and Description |
---|
MonteCarloBlackScholesModel2(TimeDiscretizationInterface timeDiscretization,
int numberOfPaths,
double initialValue,
double riskFreeRate,
double volatility)
Create a Monte-Carlo simulation using given time discretization.
|
MonteCarloBlackScholesModel2(TimeDiscretizationInterface timeDiscretization,
int numberOfPaths,
double initialValue,
double riskFreeRate,
double volatility,
int seed)
Create a Monte-Carlo simulation using given time discretization.
|
Modifier and Type | Class and Description |
---|---|
class |
Tenor
Implements a time discretization based on dates using a reference
date and an daycount convention / year fraction.
|
class |
TimeDiscretization
This class represents a set of discrete points in time.
|
Modifier and Type | Method and Description |
---|---|
TimeDiscretizationInterface |
TimeDiscretizationInterface.getTimeShiftedTimeDiscretization(double timeShift)
Return a new time discretization where all time points have been shifted by
a given time shift.
|
TimeDiscretizationInterface |
TimeDiscretization.getTimeShiftedTimeDiscretization(double timeShift) |
Constructor and Description |
---|
RegularSchedule(TimeDiscretizationInterface timeDiscretization)
Create a schedule from a time discretization.
|
Copyright © 2015. All rights reserved.