Module net.finmath.lib
Interface TermStructureMonteCarloProduct
-
- All Superinterfaces:
MonteCarloProduct
,Product
- All Known Implementing Classes:
AbstractIndex
,AbstractLIBORMonteCarloProduct
,AbstractPeriod
,AbstractProductComponent
,AccrualAccount
,AccruedInterest
,AnalyticModelForwardCurveIndex
,AnalyticModelIndex
,BermudanSwaption
,BermudanSwaptionFromSwapSchedules
,Bond
,CancelableSwap
,Caplet
,CappedFlooredIndex
,Cashflow
,Choice
,CMSOption
,ConstantMaturitySwaprate
,DateIndex
,DigitalCaplet
,DigitalFloorlet
,ExpectedTailLoss
,ExposureEstimator
,FixedCoupon
,FlexiCap
,ForwardCurveIndex
,ForwardRateVolatilitySurfaceCurvature
,FundingCapacity
,IndexedValue
,InterestRateMonteCarloProductFactory.SwapLegMonteCarlo
,InterestRateMonteCarloProductFactory.SwapMonteCarlo
,InterestRateMonteCarloProductFactory.SwaptionPhysicalMonteCarlo
,LaggedIndex
,LIBORBond
,LIBORIndex
,LinearCombinationIndex
,MaxIndex
,MinIndex
,MoneyMarketAccount
,Numeraire
,NumerairePerformanceIndex
,NumerairePerformanceOnScheduleIndex
,Option
,PerformanceIndex
,Period
,Portfolio
,PowIndex
,ProductCollection
,ProductIndex
,Selector
,SimpleCappedFlooredFloatingRateBond
,SimpleSwap
,SimpleZeroSwap
,Swap
,SwapLeg
,SwapLegWithFundingProvider
,Swaption
,SwaptionAnalyticApproximation
,SwaptionAnalyticApproximationRebonato
,SwaptionATM
,SwaptionFromSwapSchedules
,SwaptionGeneralizedAnalyticApproximation
,SwaptionSimple
,SwaptionSingleCurve
,SwaptionSingleCurveAnalyticApproximation
,SwaptionWithComponents
,SwapWithComponents
,TimeDiscreteEndOfMonthIndex
,TriggerIndex
,UnsupportedIndex
public interface TermStructureMonteCarloProduct extends MonteCarloProduct
Interface for products requiring an LIBORModelMonteCarloSimulationModel as base class- Version:
- 1.0
- Author:
- Christian Fries
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description FactorDrift
getFactorDrift(LIBORModelMonteCarloSimulationModel referenceScheme, LIBORModelMonteCarloSimulationModel targetScheme)
Overwrite this method if the product supplies a custom FactorDriftInterface to be used in proxy simulation.RandomVariable
getValue(double evaluationTime, LIBORModelMonteCarloSimulationModel model)
This method returns the value random variable of the product within the specified model, evaluated at a given evalutationTime.Map<String,Object>
getValues(double evaluationTime, LIBORModelMonteCarloSimulationModel model)
This method returns the valuation of the product within the specified model, evaluated at a given evalutationTime.-
Methods inherited from interface net.finmath.montecarlo.MonteCarloProduct
getCurrency, getValue, getValue, getValue, getValues, getValues, getValues, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData
-
-
-
-
Method Detail
-
getValue
RandomVariable getValue(double evaluationTime, LIBORModelMonteCarloSimulationModel model) throws CalculationException
This method returns the value random variable of the product within the specified model, evaluated at a given evalutationTime. Note: For a lattice this is often the value conditional to evalutationTime, for a Monte-Carlo simulation this is the (sum of) value discounted to evaluation time. Cashflows prior evaluationTime are not considered.- Parameters:
evaluationTime
- The time on which this products value should be observed.model
- The model used to price the product.- Returns:
- The random variable representing the value of the product discounted to evaluation time
- Throws:
CalculationException
- Thrown if the valuation fails, specific cause may be available via thecause()
method.
-
getValues
Map<String,Object> getValues(double evaluationTime, LIBORModelMonteCarloSimulationModel model) throws CalculationException
This method returns the valuation of the product within the specified model, evaluated at a given evalutationTime. The valuation is returned in terms of a map. The map may contain additional information. Note: For a lattice this is often the value conditional to evalutationTime, for a Monte-Carlo simulation this is the (sum of) value discounted to evaluation time. Cashflows prior evaluationTime are not considered.- Parameters:
evaluationTime
- The time on which this products value should be observed.model
- The model used to price the product.- Returns:
- The random variable representing the value of the product discounted to evaluation time
- Throws:
CalculationException
- Thrown if the valuation fails, specific cause may be available via thecause()
method.
-
getFactorDrift
FactorDrift getFactorDrift(LIBORModelMonteCarloSimulationModel referenceScheme, LIBORModelMonteCarloSimulationModel targetScheme)
Overwrite this method if the product supplies a custom FactorDriftInterface to be used in proxy simulation.- Parameters:
referenceScheme
- The reference schemetargetScheme
- The target scheme- Returns:
- The FactorDriftInterface
-
-