Interface TwoStateActivationPolicy
- All Known Implementing Classes:
ContinuationActivationPolicy, ImmediateCashActivationPolicy
public interface TwoStateActivationPolicy
Governs how barrier activation couples the inactive and active regimes in the
direct one-dimensional two-state knock-in solver.
In the two-state formulation, the product value is decomposed into:
- an inactive regime, representing paths for which the barrier has not yet been hit,
- an active regime, representing paths after barrier activation.
Let V^{\mathrm{inact}}(t,x) denote the inactive-regime value and
V^{\mathrm{act}}(t,x) the active-regime value, where x is the
state
variable. A TwoStateActivationPolicy specifies how the inactive
regime is
coupled to the active regime:
- on the already-hit region at maturity,
- on the already-hit region during backward propagation,
- at the barrier interface, where the continuation-side inactive PDE sees a Dirichlet boundary value.
Different policies correspond to different contractual semantics. For example:
- a continuation policy uses the active continuation value after activation,
- an immediate-cash policy replaces the post-hit value by a fixed cash amount.
- Author:
- Alessandro Gnoatto
-
Method Summary
Modifier and TypeMethodDescriptiondoublegetAlreadyHitValue(double currentTime, double stateVariable, double activeValue) Returns the inactive-regime value on the already-hit region during backward stepping.doublegetAlreadyHitValueAtMaturity(double stateVariable, double activePayoffValue, double inactiveNoHitValue) Returns the inactive-regime value on the already-hit region at maturity.doublegetInterfaceValue(double currentTime, double barrierStateVariable, double activeValueAtBarrier) Returns the interface value seen by the continuation-side inactive PDE at the barrier.
-
Method Details
-
getAlreadyHitValueAtMaturity
double getAlreadyHitValueAtMaturity(double stateVariable, double activePayoffValue, double inactiveNoHitValue) Returns the inactive-regime value on the already-hit region at maturity.- Parameters:
stateVariable- State variable.activePayoffValue- Terminal payoff used for the active regime.inactiveNoHitValue- Terminal value if the barrier has never been hit.- Returns:
- Inactive-regime terminal value on the already-hit region.
-
getAlreadyHitValue
double getAlreadyHitValue(double currentTime, double stateVariable, double activeValue) Returns the inactive-regime value on the already-hit region during backward stepping.- Parameters:
currentTime- Current model time.stateVariable- State variable.activeValue- Value of the active regime at the same grid point.- Returns:
- Inactive-regime value on the already-hit region.
-
getInterfaceValue
double getInterfaceValue(double currentTime, double barrierStateVariable, double activeValueAtBarrier) Returns the interface value seen by the continuation-side inactive PDE at the barrier.- Parameters:
currentTime- Current model time.barrierStateVariable- State variable at the barrier node.activeValueAtBarrier- Active-regime value at the barrier node.- Returns:
- Interface value for the inactive continuation-side solve.
-