FinancePy

FinancePy API Reference

Fx Variance Swap

financepy.products.fx.fx_variance_swap

Classes

FinFXVarianceSwap

FinFXVarianceSwap(effective_dt: financepy.utils.date.Date, maturity_dt_or_tenor: financepy.utils.date.Date | str, strike_variance: float, notional: float = 1000000, pay_strike_flag: bool = True)
Class for managing an FX variance swap contract.

Methods

value

value(self, value_dt, realised_var, fair_strike_var, libor_curve)
Calculate the value of the variance swap based on the realised volatility to the valuation date, the forward looking implied volatility to the maturity date using the libor discount curve.

fair_strike_approx

fair_strike_approx(self, value_dt, fwd_stock_price, strikes, volatilities)
This is an approximation of the fair strike variance by Demeterfi et al. (1999) which assumes that sigma(K) = sigma(F) - b(K-F)/F where F is the forward stock price and sigma(F) is the ATM forward vol.

fair_strike

fair_strike(self, value_dt, stock_price, dividend_curve, volatility_curve, num_call_options, num_put_options, strike_spacing, discount_curve, use_forward=True)
Calculate the implied variance according to the volatility surface using a static replication methodology with a specially weighted portfolio of put and call options across a range of strikes using the approximate method set out by Demeterfi et al. 1999.

realised_variance

realised_variance(self, close_prices, use_logs=True)
Calculate the realised variance according to market standard calculations which can either use log or percentage returns.

print_strikes

print_strikes(self)

No description available.

Generated automatically from the FinancePy source code. Do not edit this file manually.