Module net.finmath.lib
Class DeltaHedgedPortfolioWithAAD
- java.lang.Object
-
- net.finmath.montecarlo.AbstractMonteCarloProduct
-
- net.finmath.montecarlo.assetderivativevaluation.products.AbstractAssetMonteCarloProduct
-
- net.finmath.montecarlo.assetderivativevaluation.products.DeltaHedgedPortfolioWithAAD
-
- All Implemented Interfaces:
Product
,AssetMonteCarloProduct
,MonteCarloProduct
public class DeltaHedgedPortfolioWithAAD extends AbstractAssetMonteCarloProduct
This class implements a delta hedged portfolio (a hedge simulator). The delta hedge uses numerical calculation of the delta and - in theory - works for any model implementingAssetModelMonteCarloSimulationModel
and any product implementingAbstractAssetMonteCarloProduct
. The results however somewhat depend on the choice of the internal regression basis functions. ThegetValue
-method returns the random variable \( \Pi(t) \) representing the value of the replication portfolio \( \Pi(t) = \phi_0(t) N(t) + \phi_1(t) S(t) \).- Version:
- 1.1
- Author:
- Christian Fries
-
-
Constructor Summary
Constructors Constructor Description DeltaHedgedPortfolioWithAAD(AssetMonteCarloProduct productToReplicate)
Construction of a delta hedge portfolio.DeltaHedgedPortfolioWithAAD(AssetMonteCarloProduct productToReplicate, int numberOfBins)
Construction of a delta hedge portfolio.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description double
getLastOperationTimingDerivative()
double
getLastOperationTimingValuation()
RandomVariable
getValue(double evaluationTime, AssetModelMonteCarloSimulationModel model)
-
Methods inherited from class net.finmath.montecarlo.assetderivativevaluation.products.AbstractAssetMonteCarloProduct
getValue
-
Methods inherited from class net.finmath.montecarlo.AbstractMonteCarloProduct
getCurrency, getValue, getValue, getValues, getValues, getValues, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, getValuesForModifiedData, toString
-
-
-
-
Constructor Detail
-
DeltaHedgedPortfolioWithAAD
public DeltaHedgedPortfolioWithAAD(AssetMonteCarloProduct productToReplicate, int numberOfBins)
Construction of a delta hedge portfolio. The delta hedge uses numerical calculation of the delta and - in theory - works for any model implementingAssetModelMonteCarloSimulationModel
and any product implementingAbstractAssetMonteCarloProduct
. The results however somewhat depend on the choice of the internal regression basis functions.- Parameters:
productToReplicate
- The product for which the replication portfolio should be build. May be any product implementing theAbstractAssetMonteCarloProduct
interface.numberOfBins
- The number of bins used to aggregate the conditional expectation of the delta.
-
DeltaHedgedPortfolioWithAAD
public DeltaHedgedPortfolioWithAAD(AssetMonteCarloProduct productToReplicate)
Construction of a delta hedge portfolio. The delta hedge uses numerical calculation of the delta and - in theory - works for any model implementingAssetModelMonteCarloSimulationModel
and any product implementingAbstractAssetMonteCarloProduct
. The results however somewhat depend on the choice of the internal regression basis functions.- Parameters:
productToReplicate
- The product for which the replication portfolio should be build. May be any product implementing theAbstractAssetMonteCarloProduct
interface.
-
-
Method Detail
-
getValue
public RandomVariable getValue(double evaluationTime, AssetModelMonteCarloSimulationModel model) throws CalculationException
- Specified by:
getValue
in interfaceAssetMonteCarloProduct
- Specified by:
getValue
in classAbstractAssetMonteCarloProduct
- Throws:
CalculationException
-
getLastOperationTimingValuation
public double getLastOperationTimingValuation()
-
getLastOperationTimingDerivative
public double getLastOperationTimingDerivative()
-
-