Skip navigation links
finMath lib documentation
net.finmath.montecarlo.interestrate.models.covariance

## Class LIBORVolatilityModelTimeHomogenousPiecewiseConstant

• All Implemented Interfaces:
Serializable

public class LIBORVolatilityModelTimeHomogenousPiecewiseConstant
extends LIBORVolatilityModel
Implements a piecewise constant volatility model, where $$\sigma(t,T) = sigma_{i}$$ where $$i = \max \{ j : \tau_{j} \leq T-t \}$$ and $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ is a given time discretization.
Version:
1.0
Author:
Christian Fries
See Also:
Serialized Form
• ### Constructor Summary

Constructors
Constructor and Description
LIBORVolatilityModelTimeHomogenousPiecewiseConstant(AbstractRandomVariableFactory randomVariableFactory, TimeDiscretization timeDiscretization, TimeDiscretization liborPeriodDiscretization, TimeDiscretization timeToMaturityDiscretization, double[] volatility)
Create a piecewise constant volatility model, where $$\sigma(t,T) = sigma_{i}$$ where $$i = \max \{ j : \tau_{j} \leq T-t \}$$ and $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ is a given time discretization.
LIBORVolatilityModelTimeHomogenousPiecewiseConstant(AbstractRandomVariableFactory randomVariableFactory, TimeDiscretization timeDiscretization, TimeDiscretization liborPeriodDiscretization, TimeDiscretization timeToMaturityDiscretization, RandomVariable[] volatility)
Create a piecewise constant volatility model, where $$\sigma(t,T) = sigma_{i}$$ where $$i = \max \{ j : \tau_{j} \leq T-t \}$$ and $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ is a given time discretization.
LIBORVolatilityModelTimeHomogenousPiecewiseConstant(TimeDiscretization timeDiscretization, TimeDiscretization liborPeriodDiscretization, TimeDiscretization timeToMaturityDiscretization, double[] volatility)
Create a piecewise constant volatility model, where $$\sigma(t,T) = sigma_{i}$$ where $$i = \max \{ j : \tau_{j} \leq T-t \}$$ and $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ is a given time discretization.
LIBORVolatilityModelTimeHomogenousPiecewiseConstant(TimeDiscretization timeDiscretization, TimeDiscretization liborPeriodDiscretization, TimeDiscretization timeToMaturityDiscretization, RandomVariable[] volatility)
Create a piecewise constant volatility model, where $$\sigma(t,T) = sigma_{i}$$ where $$i = \max \{ j : \tau_{j} \leq T-t \}$$ and $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ is a given time discretization.
• ### Method Summary

All Methods
Modifier and Type Method and Description
Object clone()
LIBORVolatilityModel getCloneWithModifiedData(Map<String,Object> dataModified)
Returns a clone of this model where the specified properties have been modified.
LIBORVolatilityModelTimeHomogenousPiecewiseConstant getCloneWithModifiedParameter(RandomVariable[] parameter)
RandomVariable[] getParameter()
RandomVariable getVolatility(int timeIndex, int liborIndex)
Implement this method to complete the implementation.
• ### Methods inherited from class net.finmath.montecarlo.interestrate.models.covariance.LIBORVolatilityModel

getLiborPeriodDiscretization, getParameterAsDouble, getTimeDiscretization
• ### Methods inherited from class java.lang.Object

equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
• ### Constructor Detail

• #### LIBORVolatilityModelTimeHomogenousPiecewiseConstant

public LIBORVolatilityModelTimeHomogenousPiecewiseConstant(AbstractRandomVariableFactory randomVariableFactory,
TimeDiscretization timeDiscretization,
TimeDiscretization liborPeriodDiscretization,
TimeDiscretization timeToMaturityDiscretization,
RandomVariable[] volatility)
Create a piecewise constant volatility model, where $$\sigma(t,T) = sigma_{i}$$ where $$i = \max \{ j : \tau_{j} \leq T-t \}$$ and $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ is a given time discretization.
Parameters:
randomVariableFactory - The random variable factor used to construct random variables from the parameters.
timeDiscretization - The simulation time discretization tj.
liborPeriodDiscretization - The period time discretization Ti.
timeToMaturityDiscretization - The discretization $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ of the piecewise constant volatility function.
volatility - The values $$\sigma_{0}, \sigma_{1}, \ldots, \sigma_{n-1}$$ of the piecewise constant volatility function.
• #### LIBORVolatilityModelTimeHomogenousPiecewiseConstant

public LIBORVolatilityModelTimeHomogenousPiecewiseConstant(TimeDiscretization timeDiscretization,
TimeDiscretization liborPeriodDiscretization,
TimeDiscretization timeToMaturityDiscretization,
RandomVariable[] volatility)
Create a piecewise constant volatility model, where $$\sigma(t,T) = sigma_{i}$$ where $$i = \max \{ j : \tau_{j} \leq T-t \}$$ and $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ is a given time discretization.
Parameters:
timeDiscretization - The simulation time discretization tj.
liborPeriodDiscretization - The period time discretization Ti.
timeToMaturityDiscretization - The discretization $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ of the piecewise constant volatility function.
volatility - The values $$\sigma_{0}, \sigma_{1}, \ldots, \sigma_{n-1}$$ of the piecewise constant volatility function.
• #### LIBORVolatilityModelTimeHomogenousPiecewiseConstant

public LIBORVolatilityModelTimeHomogenousPiecewiseConstant(AbstractRandomVariableFactory randomVariableFactory,
TimeDiscretization timeDiscretization,
TimeDiscretization liborPeriodDiscretization,
TimeDiscretization timeToMaturityDiscretization,
double[] volatility)
Create a piecewise constant volatility model, where $$\sigma(t,T) = sigma_{i}$$ where $$i = \max \{ j : \tau_{j} \leq T-t \}$$ and $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ is a given time discretization.
Parameters:
randomVariableFactory - The random variable factor used to construct random variables from the parameters.
timeDiscretization - The simulation time discretization tj.
liborPeriodDiscretization - The period time discretization Ti.
timeToMaturityDiscretization - The discretization $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ of the piecewise constant volatility function.
volatility - The values $$\sigma_{0}, \sigma_{1}, \ldots, \sigma_{n-1}$$ of the piecewise constant volatility function.
• #### LIBORVolatilityModelTimeHomogenousPiecewiseConstant

public LIBORVolatilityModelTimeHomogenousPiecewiseConstant(TimeDiscretization timeDiscretization,
TimeDiscretization liborPeriodDiscretization,
TimeDiscretization timeToMaturityDiscretization,
double[] volatility)
Create a piecewise constant volatility model, where $$\sigma(t,T) = sigma_{i}$$ where $$i = \max \{ j : \tau_{j} \leq T-t \}$$ and $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ is a given time discretization.
Parameters:
timeDiscretization - The simulation time discretization tj.
liborPeriodDiscretization - The period time discretization Ti.
timeToMaturityDiscretization - The discretization $$\tau_{0}, \tau_{1}, \ldots, \tau_{n-1}$$ of the piecewise constant volatility function.
volatility - The values $$\sigma_{0}, \sigma_{1}, \ldots, \sigma_{n-1}$$ of the piecewise constant volatility function.
• ### Method Detail

• #### getParameter

public RandomVariable[] getParameter()
Specified by:
getParameter in class LIBORVolatilityModel
• #### getCloneWithModifiedParameter

public LIBORVolatilityModelTimeHomogenousPiecewiseConstant getCloneWithModifiedParameter(RandomVariable[] parameter)
Specified by:
getCloneWithModifiedParameter in class LIBORVolatilityModel
• #### getVolatility

public RandomVariable getVolatility(int timeIndex,
int liborIndex)
Description copied from class: LIBORVolatilityModel
Implement this method to complete the implementation.
Specified by:
getVolatility in class LIBORVolatilityModel
Parameters:
timeIndex - The time index (for timeDiscretizationFromArray)
liborIndex - The libor index (for liborPeriodDiscretization)
Returns:
A random variable (e.g. as a vector of doubles) representing the volatility for each path.
• #### clone

public Object clone()
Specified by:
clone in class LIBORVolatilityModel
• #### getCloneWithModifiedData

public LIBORVolatilityModel getCloneWithModifiedData(Map<String,Object> dataModified)
Description copied from class: LIBORVolatilityModel
Returns a clone of this model where the specified properties have been modified. Note that there is no guarantee that a model reacts on a specification of a properties in the parameter map dataModified. If data is provided which is ignored by the model no exception may be thrown. Furthermore the structure of the correlation model has to match changed data. A change of the time discretizations may requires a change in the parameters but this function will just insert the new time discretization without changing the parameters. An exception may not be thrown.
Specified by:
getCloneWithModifiedData in class LIBORVolatilityModel
Parameters:
dataModified - Key-value-map of parameters to modify.
Returns:
A clone of this model (or a new instance of this model if no parameter was modified).
Skip navigation links
Copyright © 2018 Christian P. Fries.

Copyright © 2019. All rights reserved.