Module net.finmath.lib
Class FiniteDifferenceDeltaHedgedPortfolio
- java.lang.Object
-
- net.finmath.montecarlo.AbstractMonteCarloProduct
-
- net.finmath.montecarlo.assetderivativevaluation.products.AbstractAssetMonteCarloProduct
-
- net.finmath.montecarlo.assetderivativevaluation.products.FiniteDifferenceDeltaHedgedPortfolio
-
- All Implemented Interfaces:
Product
,AssetMonteCarloProduct
,MonteCarloProduct
public class FiniteDifferenceDeltaHedgedPortfolio extends AbstractAssetMonteCarloProduct
This class implements a delta hedged portfolio of a given product (a hedge simulator). The hedge is done using a given model to calculate delta via finite difference.
WARNING: If the model used for calculating the delta is "slow" (e.g., a Monte-Carlo simulation) then the calculation might take very long.- Version:
- 1.0
- Author:
- Christian Fries
-
-
Constructor Summary
Constructors Constructor Description FiniteDifferenceDeltaHedgedPortfolio(AbstractAssetMonteCarloProduct productToHedge, AssetModelMonteCarloSimulationModel modelUsedForHedging)
Construction of a delta hedge portfolio using finite differences on every path and in every time-step.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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
-
FiniteDifferenceDeltaHedgedPortfolio
public FiniteDifferenceDeltaHedgedPortfolio(AbstractAssetMonteCarloProduct productToHedge, AssetModelMonteCarloSimulationModel modelUsedForHedging)
Construction of a delta hedge portfolio using finite differences on every path and in every time-step. Note that this requires many revaluations of the product provided.- Parameters:
productToHedge
- The financial product for which the hedge portfolio should be constructed.modelUsedForHedging
- The model used for calculating the hedge rations (deltas). This may differ from the model passed togetValue
.
-
-
Method Detail
-
getValue
public RandomVariable getValue(double evaluationTime, AssetModelMonteCarloSimulationModel model) throws CalculationException
- Specified by:
getValue
in interfaceAssetMonteCarloProduct
- Specified by:
getValue
in classAbstractAssetMonteCarloProduct
- Throws:
CalculationException
-
-