FinancePy

FinancePy API Reference

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.