equity cliquet option
financepy.products.equity.equity_cliquet_option
Class
EquityCliquetOption
EquityCliquetOption(
start_dt: Date,
final_expiry_dt: Date,
opt_type: OptionTypes,
freq_type: FrequencyTypes,
payoff_type: CliquetTypes = <CliquetTypes.PRICE: 1>,
payoff_timing_type: PaymentTimingTypes = <PaymentTimingTypes.PERIODIC: 1>,
notional: float = 1.0,
local_floor: float | None = None,
local_cap: float | None = None,
global_floor: float | None = None,
global_cap: float | None = None,
cal_type: CalendarTypes = <CalendarTypes.WEEKEND: 2>,
bd_type: BusDayAdjustTypes = <BusDayAdjustTypes.FOLLOWING: 2>,
dg_type: DateGenRuleTypes = <DateGenRuleTypes.BACKWARD: 2>,
) -> None
Inherits from: EquityOption
A EquityCliquetOption is a series of options which start and stop at
successive times with each subsequent option resetting its strike to be ATM
at the start of its life. This is also known as a reset option.
Methods
value
value(
self,
value_dt: Date,
stock_price: float,
discount_curve: DiscountCurve,
dividend_curve: DiscountCurve,
model: Model,
)
Value the cliquet option as a sequence of options using the Black-
Scholes model.
value_mc
value_mc(
self,
value_dt: Date,
stock_price: float,
discount_curve: DiscountCurve,
dividend_curve: DiscountCurve,
model: Model,
num_paths: int = 200000,
seed: int = 4242,
)
Value the cliquet option using Monte Carlo simulation.
The stock is simulated exactly under Black-Scholes from reset date
to reset date, so there is no Euler time-discretisation error.
Returns
-------
value : float
Monte Carlo value.
stderr : float
Monte Carlo standard error estimated from antithetic pair
averages.
Notes
-----
This implementation requires value_dt == start_dt. Valuation after
inception requires historical reset fixings and, for MATURITY
payment timing, already-realised period payoffs.
print_payments
print_payments(
self,
)
No description available.
Generated automatically from the FinancePy source code.
Do not edit this file manually.