Module net.finmath.lib
Interface TermStructureMonteCarloProduct
- All Superinterfaces:
MonteCarloProduct,Product
- All Known Implementing Classes:
AbstractIndex,AbstractLIBORMonteCarloProduct,AbstractPeriod,AbstractProductComponent,AbstractTermStructureMonteCarloProduct,AccrualAccount,AccruedInterest,AnalyticModelForwardCurveIndex,AnalyticModelIndex,BermudanSwaption,BermudanSwaptionFromSwapSchedules,Bond,CancelableSwap,Caplet,CappedFlooredIndex,Cashflow,Choice,CMSOption,ConstantMaturitySwaprate,DateIndex,DigitalCaplet,DigitalFloorlet,ExpectedTailLoss,ExposureEstimator,FixedCoupon,FlexiCap,ForwardCurveIndex,ForwardRateVolatilitySurfaceCurvature,FundingCapacityWithMemory,FundingCapacityWithoutMemory,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
Interface for products requiring an LIBORModelMonteCarloSimulationModel as base class
- Version:
- 1.0
- Author:
- Christian Fries
-
Method Summary
Modifier and TypeMethodDescriptiongetFactorDrift(LIBORModelMonteCarloSimulationModel referenceScheme, LIBORModelMonteCarloSimulationModel targetScheme)Overwrite this method if the product supplies a custom FactorDriftInterface to be used in proxy simulation.getValue(double evaluationTime, TermStructureMonteCarloSimulationModel model)This method returns the value random variable of the product within the specified model, evaluated at a given evalutationTime.getValues(double evaluationTime, TermStructureMonteCarloSimulationModel 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 Details
-
getValue
RandomVariable getValue(double evaluationTime, TermStructureMonteCarloSimulationModel model) throws CalculationExceptionThis 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, TermStructureMonteCarloSimulationModel model) throws CalculationExceptionThis 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
FactorTransform 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
-