public class LIBORMonteCarloSimulationFromTermStructureModel extends Object implements LIBORModelMonteCarloSimulationModel
LIBORMarketModelFromCovarianceModel model
and AbstractLogNormalProcess process.| Constructor and Description |
|---|
LIBORMonteCarloSimulationFromTermStructureModel(TermStructureModel model)
Create a LIBOR Monte-Carlo Simulation from a given LIBORMarketModelFromCovarianceModel.
|
LIBORMonteCarloSimulationFromTermStructureModel(TermStructureModel model,
MonteCarloProcessFromProcessModel process)
Create a LIBOR Monte-Carlo Simulation from a given LIBORMarketModelFromCovarianceModel and an MonteCarloProcessFromProcessModel.
|
| Modifier and Type | Method and Description |
|---|---|
BrownianMotion |
getBrownianMotion()
Returns the Brownian motion used to simulate the curve.
|
LIBORModelMonteCarloSimulationModel |
getCloneWithModifiedData(Map<String,Object> dataModified)
Create a clone of this simulation modifying some of its properties (if any).
|
TermStructureMonteCarloSimulationModel |
getCloneWithModifiedData(String entityKey,
Object dataModified)
Create a clone of this simulation modifying one of its properties (if any).
|
Object |
getCloneWithModifiedSeed(int seed)
Return a clone of this model with a modified Brownian motion using a different seed.
|
RandomVariable |
getLIBOR(double time,
double periodStart,
double periodEnd)
Return the forward rate for a given simulation time and a given period start and period end.
|
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.
|
TermStructureModel |
getModel()
Returns the underlying model.
|
Map<String,RandomVariable> |
getModelParameters()
Returns a map of independent model parameters of this model.
|
RandomVariable |
getMonteCarloWeights(double time)
This method returns the weights of a weighted Monte Carlo method (the probability density).
|
RandomVariable |
getMonteCarloWeights(int timeIndex)
This method returns the weights of a weighted Monte Carlo method (the probability density).
|
int |
getNumberOfComponents() |
int |
getNumberOfFactors() |
int |
getNumberOfLibors() |
int |
getNumberOfPaths()
Returns the numberOfPaths.
|
RandomVariable |
getNumeraire(double time)
Return the numeraire at a given time.
|
MonteCarloProcess |
getProcess() |
RandomVariable |
getRandomVariableForConstant(double value)
Returns a random variable which is initialized to a constant,
but has exactly the same number of paths or discretization points as the ones used by this
MonteCarloSimulationModel. |
LocalDateTime |
getReferenceDate()
Returns the model's date corresponding to the time discretization's \( t = 0 \).
|
double |
getTime(int timeIndex)
Returns the time for a given time index.
|
TimeDiscretization |
getTimeDiscretization()
Returns the timeDiscretizationFromArray.
|
int |
getTimeIndex(double time)
Returns the time index for a given time.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetLIBOR, getNumerairepublic LIBORMonteCarloSimulationFromTermStructureModel(TermStructureModel model, MonteCarloProcessFromProcessModel process)
model - The LIBORMarketModelFromCovarianceModel.process - The process.public LIBORMonteCarloSimulationFromTermStructureModel(TermStructureModel model)
model - The LIBORMarketModelFromCovarianceModel.public RandomVariable getMonteCarloWeights(int timeIndex) throws CalculationException
MonteCarloSimulationModelgetMonteCarloWeights in interface MonteCarloSimulationModeltimeIndex - Time index at which the process should be observedCalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public RandomVariable getMonteCarloWeights(double time) throws CalculationException
MonteCarloSimulationModelgetMonteCarloWeights in interface MonteCarloSimulationModeltime - Time at which the process should be observedCalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public int getNumberOfFactors()
getNumberOfFactors in interface LIBORModelMonteCarloSimulationModelpublic int getNumberOfPaths()
MonteCarloSimulationModelgetNumberOfPaths in interface MonteCarloSimulationModelpublic LocalDateTime getReferenceDate()
MonteCarloSimulationModelgetReferenceDate in interface MonteCarloSimulationModelpublic double getTime(int timeIndex)
MonteCarloSimulationModelgetTime in interface MonteCarloSimulationModeltimeIndex - Time indexpublic TimeDiscretization getTimeDiscretization()
MonteCarloSimulationModelgetTimeDiscretization in interface MonteCarloSimulationModelpublic int getTimeIndex(double time)
MonteCarloSimulationModelgetTimeIndex in interface MonteCarloSimulationModeltime - The time.public RandomVariable getRandomVariableForConstant(double value)
MonteCarloSimulationModelMonteCarloSimulationModel.getRandomVariableForConstant in interface MonteCarloSimulationModelvalue - The constant value to be used for initialized the random variable.public BrownianMotion getBrownianMotion()
LIBORModelMonteCarloSimulationModelgetBrownianMotion in interface LIBORModelMonteCarloSimulationModelpublic RandomVariable getLIBOR(int timeIndex, int liborIndex) throws CalculationException
LIBORModelMonteCarloSimulationModelgetLIBOR in interface LIBORModelMonteCarloSimulationModeltimeIndex - Simulation time index.liborIndex - TenorFromArray time index (index corresponding to the fixing of the forward rate).CalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public RandomVariable[] getLIBORs(int timeIndex)
LIBORModelMonteCarloSimulationModelgetLIBORs in interface LIBORModelMonteCarloSimulationModeltimeIndex - Simulation time index.public RandomVariable getLIBOR(double time, double periodStart, double periodEnd) throws CalculationException
TermStructureMonteCarloSimulationModelgetLIBOR in interface TermStructureMonteCarloSimulationModeltime - Simulation timeperiodStart - Start time of periodperiodEnd - End time of periodCalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public double getLiborPeriod(int timeIndex)
LIBORModelMonteCarloSimulationModelgetLiborPeriod in interface LIBORModelMonteCarloSimulationModeltimeIndex - The index corresponding to a given time (interpretation is start of period)public TimeDiscretization getLiborPeriodDiscretization()
LIBORModelMonteCarloSimulationModelgetLiborPeriodDiscretization in interface LIBORModelMonteCarloSimulationModelpublic int getLiborPeriodIndex(double time)
LIBORModelMonteCarloSimulationModelgetLiborPeriodIndex in interface LIBORModelMonteCarloSimulationModeltime - The tenor time (fixing of the forward rate) for which the index is requested.public int getNumberOfComponents()
public int getNumberOfLibors()
getNumberOfLibors in interface LIBORModelMonteCarloSimulationModelpublic RandomVariable getNumeraire(double time) throws CalculationException
TermStructureMonteCarloSimulationModelgetNumeraire in interface TermStructureMonteCarloSimulationModeltime - Time at which the process should be observedRandomVariableFromDoubleArrayCalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public TermStructureModel getModel()
LIBORModelMonteCarloSimulationModelgetModel in interface LIBORModelMonteCarloSimulationModelgetModel in interface TermStructureMonteCarloSimulationModelpublic MonteCarloProcess getProcess()
getProcess in interface TermStructureMonteCarloSimulationModelpublic Object getCloneWithModifiedSeed(int seed)
LIBORModelMonteCarloSimulationModelgetCloneWithModifiedSeed in interface LIBORModelMonteCarloSimulationModelseed - The seedpublic LIBORModelMonteCarloSimulationModel getCloneWithModifiedData(Map<String,Object> dataModified) throws CalculationException
MonteCarloSimulationModelgetCloneWithModifiedData in interface MonteCarloSimulationModeldataModified - The data which should be changed in the new model. This is a key value may, where the key corresponds to the name of a property in one of the objects constructors.CalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public TermStructureMonteCarloSimulationModel getCloneWithModifiedData(String entityKey, Object dataModified) throws CalculationException
entityKey - The entity to modify.dataModified - The data which should be changed in the new modelCalculationException - Thrown if the valuation fails, specific cause may be available via the cause() method.public Map<String,RandomVariable> getModelParameters()
IndependentModelParameterProvidergetModelParameters in interface IndependentModelParameterProviderCopyright © 2019. All rights reserved.