Class ImmediateCashActivationPolicy

java.lang.Object
net.finmath.finitedifference.solvers.ImmediateCashActivationPolicy
All Implemented Interfaces:
TwoStateActivationPolicy

public class ImmediateCashActivationPolicy extends Object implements TwoStateActivationPolicy
Activation policy for two-state finite-difference products with immediate cash settlement upon barrier activation.

In a two-state barrier formulation, the contract value is decomposed into an inactive no-hit regime and an already-hit regime. Under an immediate-cash activation rule, once the barrier event occurs, the contract is replaced by a deterministic cash amount P, independently of the current state variable and independently of any active continuation value.

Hence the already-hit value is constant and given by

V^{\mathrm{hit}}(t,x) = P

for all times t after activation and all states x. In particular, at maturity, at intermediate times, and at the activation interface, the value is always the same cash amount.

This policy is appropriate for products such as one-touch options with at-hit settlement, where the contract terminates immediately upon barrier contact and pays a fixed cash amount at that moment.

Author:
Alessandro Gnoatto
  • Constructor Details

    • ImmediateCashActivationPolicy

      public ImmediateCashActivationPolicy(double payoffAmount)
      Creates an immediate-cash activation policy.
      Parameters:
      payoffAmount - Cash amount paid immediately upon activation.
  • Method Details

    • getAlreadyHitValueAtMaturity

      public double getAlreadyHitValueAtMaturity(double stateVariable, double activePayoffValue, double inactiveNoHitValue)
      Returns the already-hit value at maturity.
      Specified by:
      getAlreadyHitValueAtMaturity in interface TwoStateActivationPolicy
      Parameters:
      stateVariable - State variable.
      activePayoffValue - Active-regime payoff value at maturity.
      inactiveNoHitValue - Inactive no-hit value at maturity.
      Returns:
      The immediate cash payoff amount.
    • getAlreadyHitValue

      public double getAlreadyHitValue(double currentTime, double stateVariable, double activeValue)
      Returns the already-hit value before maturity.
      Specified by:
      getAlreadyHitValue in interface TwoStateActivationPolicy
      Parameters:
      currentTime - Current running time.
      stateVariable - State variable.
      activeValue - Active-regime continuation value.
      Returns:
      The immediate cash payoff amount.
    • getInterfaceValue

      public double getInterfaceValue(double currentTime, double barrierStateVariable, double activeValueAtBarrier)
      Returns the interface value at the activation boundary.
      Specified by:
      getInterfaceValue in interface TwoStateActivationPolicy
      Parameters:
      currentTime - Current running time.
      barrierStateVariable - State variable at the barrier.
      activeValueAtBarrier - Active-regime value at the barrier.
      Returns:
      The immediate cash payoff amount.