Documentation of 'net.finmath.montecarlo.interestrate.products.components.Exposure' Java class
Exposure
net.finmath.montecarlo.interestrate.products.components

Class Exposure

  • All Implemented Interfaces:
    java.io.Serializable, ProductInterface


    public class Exposure
    extends AbstractProductComponent
    Implements (a numerical approximation of) the function \( (t,V) \mapsto E( V(t) \vert \mathcal{F}_t ) \) where \( V(t) \) is the (sum of) discounted future value(s) of an underlying \( V \), discounted to \( t \) and \( t \) is a given evaluton time. The conditional expectation is estimated using a regression.
    See Also:
    AbstractLIBORMonteCarloProduct, Serialized Form
    • Constructor Detail

      • Exposure

        public Exposure(double evaluationTime,
                        double strikePrice,
                        boolean isCall,
                        AbstractLIBORMonteCarloProduct underlying)
        Creates the function underlying(evaluationTime) ≥ strikePrice ? underlying : strikePrice
        Parameters:
        evaluationTime - The exercise date of the option (given as a double).
        strikePrice - The strike price.
        isCall - If true, the function implements is underlying(evaluationTime) ≥ strikePrice ? underlying : strikePrice. Otherwise it is underlying(evaluationTime) < strikePrice ? underlying : strikePrice.
        underlying - The underlying.
      • Exposure

        public Exposure(AbstractLIBORMonteCarloProduct underlying)
        Creates the function underlying(evaluationTime) ≥ strikeProduct ? underlying : strikeProduct
        Parameters:
        underlying - The underlying.
    • Method Detail

      • queryUnderlyings

        public java.util.Set<java.lang.String> queryUnderlyings()
        Description copied from class: AbstractProductComponent
        Returns a set of underlying names referenced by this product component (i.e., required for valuation) or null if none.
        Specified by:
        queryUnderlyings in class AbstractProductComponent
        Returns:
        A set of underlying names referenced by this product component (i.e., required for valuation) or null if none.
      • getValue

        public RandomVariableInterface getValue(double evaluationTime,
                                                LIBORModelMonteCarloSimulationInterface model)
                                         throws CalculationException
        This 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.
        Specified by:
        getValue in class AbstractLIBORMonteCarloProduct
        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 the cause() method.

DataMelt 3.0 © DataMelt by jWork.ORG

Ads help maintain this website.