Module net.finmath.lib
Class AbstractAssetMonteCarloProduct
java.lang.Object
net.finmath.montecarlo.AbstractMonteCarloProduct
net.finmath.montecarlo.assetderivativevaluation.products.AbstractAssetMonteCarloProduct
- All Implemented Interfaces:
Product,AssetMonteCarloProduct,MonteCarloProduct
- Direct Known Subclasses:
AsianOption,BasketOption,BermudanDigitalOption,BermudanOption,BlackScholesDeltaHedgedPortfolio,BlackScholesHedgedPortfolio,DeltaHedgedPortfolioWithAAD,DigitalOption,DigitalOptionDeltaLikelihood,EuropeanOption,EuropeanOptionDeltaLikelihood,EuropeanOptionDeltaPathwise,EuropeanOptionDeltaPathwiseForGeometricModel,EuropeanOptionGammaLikelihood,EuropeanOptionGammaPathwise,EuropeanOptionRhoLikelihood,EuropeanOptionRhoPathwise,EuropeanOptionThetaPathwise,EuropeanOptionVegaLikelihood,EuropeanOptionVegaPathwise,EuropeanOptionWithBoundary,FiniteDifferenceDeltaHedgedPortfolio,FiniteDifferenceHedgedPortfolio,ForwardAgreement,ForwardAgreementWithFundingRequirement,LocalRiskMinimizingHedgePortfolio
public abstract class AbstractAssetMonteCarloProduct
extends AbstractMonteCarloProduct
implements AssetMonteCarloProduct
Base class for products requiring an AssetModelMonteCarloSimulationModel for valuation.
- Version:
- 1.0
- Author:
- Christian Fries
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract RandomVariablegetValue(double evaluationTime, AssetModelMonteCarloSimulationModel model)getValue(double evaluationTime, MonteCarloSimulationModel model)This method returns the value random variable of the product within the specified model, evaluated at a given evalutationTime.Methods inherited from class net.finmath.montecarlo.AbstractMonteCarloProduct
getCurrency, getValue, getValue, getValues, getValues, getValues, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, toString
-
Constructor Details
-
AbstractAssetMonteCarloProduct
public AbstractAssetMonteCarloProduct()
-
-
Method Details
-
getValue
public abstract RandomVariable getValue(double evaluationTime, AssetModelMonteCarloSimulationModel model) throws CalculationException- Specified by:
getValuein interfaceAssetMonteCarloProduct- Throws:
CalculationException
-
getValue
public RandomVariable getValue(double evaluationTime, MonteCarloSimulationModel model) throws CalculationExceptionDescription copied from interface:MonteCarloProductThis method returns the value random variable of the product within the specified model, evaluated at a given evalutationTime. 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. More generally: The value random variable is a random variable V*(t) such that the time-t conditional expectation of V*(t) is equal to the value of the financial product in time t. An example for V*(t) is the sum of t-discounted payoffs. Cashflows prior evaluationTime are not considered.- Specified by:
getValuein interfaceMonteCarloProduct- Specified by:
getValuein classAbstractMonteCarloProduct- 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.
-