- All Known Subinterfaces:
AnalyticProduct
,AnalyticProduct
,AnalyticVolatilityCubeProduct
,DescribedProduct<T>
,FiniteDifference1DProduct
,FourierTransformProduct
,MonteCarloProduct
,TermStructureMonteCarloProduct
- All Known Implementing Classes:
AbstractAnalyticProduct
,AbstractAnalyticProduct
,AbstractAnalyticVolatilityCubeProduct
,AbstractAssetMonteCarloProduct
,AbstractFourierTransformProduct
,AbstractIndex
,AbstractLIBORMonteCarloProduct
,AbstractMonteCarloProduct
,AbstractPeriod
,AbstractProductComponent
,AbstractSingleSwapRateProduct
,AbstractTermStructureMonteCarloProduct
,AccrualAccount
,AccruedInterest
,AnalyticModelForwardCurveIndex
,AnalyticModelIndex
,AnnuityDummyProduct
,AsianOption
,BasketOption
,BermudanDigitalOption
,BermudanOption
,BermudanSwaption
,BermudanSwaptionFromSwapSchedules
,BlackScholesDeltaHedgedPortfolio
,BlackScholesHedgedPortfolio
,Bond
,Bond
,Bond
,BondWithForeignNumeraire
,CancelableSwap
,Cap
,Caplet
,CappedFlooredIndex
,CapShiftedVol
,Cashflow
,Cashflow
,Cashflow
,CashSettledPayerSwaption
,CashSettledReceiverSwaption
,Choice
,CMSOption
,ConstantMaturitySwap
,ConstantMaturitySwaprate
,DateIndex
,DeltaHedgedPortfolioWithAAD
,Deposit
,Deposit
,DigitalCaplet
,DigitalFloorlet
,DigitalOption
,DigitalOption
,DigitalOptionDeltaLikelihood
,EuropeanOption
,EuropeanOption
,EuropeanOptionDeltaLikelihood
,EuropeanOptionDeltaPathwise
,EuropeanOptionDeltaPathwiseForGeometricModel
,EuropeanOptionGammaLikelihood
,EuropeanOptionGammaPathwise
,EuropeanOptionRhoLikelihood
,EuropeanOptionRhoPathwise
,EuropeanOptionThetaPathwise
,EuropeanOptionVegaLikelihood
,EuropeanOptionVegaPathwise
,EuropeanOptionWithBoundary
,ExpectedTailLoss
,ExposureEstimator
,FDMEuropeanCallOption
,FDMEuropeanPutOption
,FiniteDifferenceDeltaHedgedPortfolio
,FiniteDifferenceHedgedPortfolio
,FixedCoupon
,FlexiCap
,Forward
,Forward
,ForwardAgreement
,ForwardAgreementWithFundingRequirement
,ForwardCurveIndex
,ForwardRateAgreement
,ForwardRateAgreement
,ForwardRateAgreementGeneralized
,ForwardRateVolatilitySurfaceCurvature
,FundingCapacityWithMemory
,FundingCapacityWithoutMemory
,HybridAssetMonteCarloProduct
,IndexedValue
,InterestRateMonteCarloProductFactory.SwapLegMonteCarlo
,InterestRateMonteCarloProductFactory.SwapMonteCarlo
,InterestRateMonteCarloProductFactory.SwaptionPhysicalMonteCarlo
,LaggedIndex
,LIBORBond
,LIBORIndex
,LinearCombinationIndex
,LocalRiskMinimizingHedgePortfolio
,MarketForwardRateAgreement
,MarketForwardRateAgreement
,MaxIndex
,MinIndex
,MoneyMarketAccount
,NormalizingDummyProduct
,Numeraire
,NumerairePerformanceIndex
,NumerairePerformanceOnScheduleIndex
,Option
,Performance
,Performance
,PerformanceIndex
,Period
,Portfolio
,Portfolio
,Portfolio
,PortfolioMonteCarloProduct
,PowIndex
,ProductCollection
,ProductIndex
,Selector
,SimpleCappedFlooredFloatingRateBond
,SimpleSwap
,SimpleZeroSwap
,SingleAssetFourierProductFactory.DigitalOptionFourierMethod
,SingleAssetFourierProductFactory.EuropeanOptionFourierMethod
,SingleAssetMonteCarloProductFactory.DigitalOptionMonteCarlo
,SingleAssetMonteCarloProductFactory.EuropeanOptionMonteCarlo
,Swap
,Swap
,Swap
,SwapAnnuity
,SwapAnnuity
,SwapLeg
,SwapLeg
,SwapLeg
,SwapLegWithFundingProvider
,SwaprateCovarianceAnalyticApproximation
,Swaption
,SwaptionAnalyticApproximation
,SwaptionAnalyticApproximationRebonato
,SwaptionATM
,SwaptionFromSwapSchedules
,SwaptionGeneralizedAnalyticApproximation
,SwaptionSimple
,SwaptionSingleCurve
,SwaptionSingleCurveAnalyticApproximation
,SwaptionWithComponents
,SwapWithComponents
,TimeDiscreteEndOfMonthIndex
,TriggerIndex
,UnsupportedIndex
,UnsupportedProduct
,WorstOfExpressCertificate
public interface Product
Interface implemented by all financial product which may be valued by a model.
- Version:
- 1.0
- Author:
- Christian Fries
-
Method Summary
-
Method Details
-
getValue
Return the valuation of the product using the given model. Implement this method using a checked cast of the model to a derived model for which the product provides a valuation algorithm. Example: an interest rate product requires that the passed model object implements the interface of an interest rate model. Since there is no polymorphism on arguments (see Double Dynamic Dispatch), we reply on a checked cast.- Parameters:
evaluationTime
- The evaluation time as double. Cash flows prior and including this time are not considered.model
- The model under which the product is valued.- Returns:
- Object containing the value of the product using the given model.
-
getValues
Return the valuation of the product using the given model. Implement this method using a checked cast of the model to a derived model for which the product provides a valuation algorithm. Example: an interest rate product requires that the passed model object implements the interface of an interest rate model. Since there is no polymorphism on arguments (see Double Dynamic Dispatch), we reply on a checked cast.- Parameters:
evaluationTime
- The evaluation time as double. Cash flows prior and including this time are not considered.model
- The model under which the product is valued.- Returns:
- Map containing the value of the product using the given model.
-