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
Basic interface which has to be implemented by Monte Carlo models for LIBOR processes.- Version:
- 1.0
- Author:
- Christian Fries
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description RandomVariable
getLIBOR(int timeIndex, int liborIndex)
Return the forward rate for a given simulation time index and a given forward rate index.double
getLiborPeriod(int timeIndex)
Returns the period start of the specified forward rate period.TimeDiscretization
getLiborPeriodDiscretization()
Returns the libor period discretization as time discretization representing start and end dates of periods.int
getLiborPeriodIndex(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.int
getNumberOfLibors()
-
Methods inherited from interface net.finmath.montecarlo.automaticdifferentiation.IndependentModelParameterProvider
getModelParameters
-
Methods inherited from interface net.finmath.montecarlo.MonteCarloSimulationModel
getCloneWithModifiedData, getMonteCarloWeights, getMonteCarloWeights, getNumberOfPaths, getRandomVariableForConstant, getReferenceDate, getTime, getTimeDiscretization, getTimeIndex
-
Methods inherited from interface net.finmath.montecarlo.interestrate.TermStructureMonteCarloSimulationModel
getBrownianMotion, getCloneWithModifiedSeed, getForwardRate, getForwardRate, getLIBOR, getLIBOR, getModel, getNumberOfFactors, getNumeraire, getNumeraire, getProcess
-
-
-
-
Method Detail
-
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
RandomVariable getLIBOR(int timeIndex, int liborIndex) throws CalculationException
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
RandomVariable[] getLIBORs(int timeIndex) throws CalculationException
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.
-
-