Module net.finmath.lib
Interface LIBORModelMonteCarloSimulationModel
- All Superinterfaces:
IndependentModelParameterProvider,Model,MonteCarloSimulationModel,TermStructureMonteCarloSimulationModel
- All Known Subinterfaces:
HybridAssetLIBORModelMonteCarloSimulation
- All Known Implementing Classes:
HybridAssetLIBORModelMonteCarloSimulationFromModels,LIBORMonteCarloSimulationFromLIBORModel,LIBORMonteCarloSimulationFromTermStructureModel
public interface LIBORModelMonteCarloSimulationModel extends TermStructureMonteCarloSimulationModel, IndependentModelParameterProvider
Basic interface which has to be implemented by Monte Carlo models for LIBOR processes.
- Version:
- 1.0
- Author:
- Christian Fries
-
Method Summary
Modifier and Type Method Description BrownianMotiongetBrownianMotion()Returns the Brownian motion used to simulate the curve.ObjectgetCloneWithModifiedSeed(int seed)Deprecated.RandomVariablegetLIBOR(int timeIndex, int liborIndex)Return the forward rate for a given simulation time index and a given forward rate index.doublegetLiborPeriod(int timeIndex)Returns the period start of the specified forward rate period.TimeDiscretizationgetLiborPeriodDiscretization()Returns the libor period discretization as time discretization representing start and end dates of periods.intgetLiborPeriodIndex(double time)Same as java.util.Arrays.binarySearch(liborPeriodDiscretization,time).RandomVariable[]getLIBORs(int timeIndex)Return the forward rate curve for a given simulation time index.TermStructureModelgetModel()Returns the underlying model.intgetNumberOfFactors()intgetNumberOfLibors()Methods inherited from interface net.finmath.montecarlo.automaticdifferentiation.IndependentModelParameterProvider
getModelParametersMethods inherited from interface net.finmath.montecarlo.MonteCarloSimulationModel
getCloneWithModifiedData, getMonteCarloWeights, getMonteCarloWeights, getNumberOfPaths, getRandomVariableForConstant, getReferenceDate, getTime, getTimeDiscretization, getTimeIndexMethods inherited from interface net.finmath.montecarlo.interestrate.TermStructureMonteCarloSimulationModel
getLIBOR, getLIBOR, getNumeraire, getNumeraire, getProcess
-
Method Details
-
getNumberOfFactors
int getNumberOfFactors()- Returns:
- Returns the numberOfFactors.
-
getLiborPeriodDiscretization
TimeDiscretization getLiborPeriodDiscretization()Returns the libor period discretization as time discretization representing start and end dates of periods.- Returns:
- Returns the libor period discretization
-
getNumberOfLibors
int getNumberOfLibors()- Returns:
- The number of LIBORs in the LIBOR discretization
-
getLiborPeriod
double getLiborPeriod(int timeIndex)Returns the period start of the specified forward rate period.- Parameters:
timeIndex- The index corresponding to a given time (interpretation is start of period)- Returns:
- The period start of the specified forward rate period.
-
getLiborPeriodIndex
int getLiborPeriodIndex(double time)Same as java.util.Arrays.binarySearch(liborPeriodDiscretization,time). Will return a negative value if the time is not found, but then -index-1 corresponds to the index of the smallest time greater than the given one.- Parameters:
time- The tenor time (fixing of the forward rate) for which the index is requested.- Returns:
- The index corresponding to a given time (interpretation is start of period)
-
getLIBOR
Return the forward rate for a given simulation time index and a given forward rate index.- Parameters:
timeIndex- Simulation time index.liborIndex- TenorFromArray time index (index corresponding to the fixing of the forward rate).- Returns:
- The forward rate as a random variable.
- Throws:
CalculationException- Thrown if the valuation fails, specific cause may be available via thecause()method.
-
getLIBORs
Return the forward rate curve for a given simulation time index.- Parameters:
timeIndex- Simulation time index.- Returns:
- The forward rate curve for a given simulation time index.
- Throws:
CalculationException- Thrown if the valuation fails, specific cause may be available via thecause()method.
-
getBrownianMotion
BrownianMotion getBrownianMotion()Returns the Brownian motion used to simulate the curve.- Returns:
- The Brownian motion used to simulate the curve.
-
getModel
TermStructureModel getModel()Returns the underlying model. The model specifies the measure, the initial value, the drift, the factor loadings (covariance model), etc.- Specified by:
getModelin interfaceTermStructureMonteCarloSimulationModel- Returns:
- The underlying model
-
getCloneWithModifiedSeed
Deprecated.Return a clone of this model with a modified Brownian motion using a different seed.- Parameters:
seed- The seed- Returns:
- Clone of this object, but having a different seed.
-