RollingVarianceSwapStrategy

RollingVarianceSwapStrategy#

class sigtech.framework.strategies.rolling_variance_swap.RollingVarianceSwapStrategy

Baseclasses: RollingOptionsStrategyBase

Subclasses: RollingVarianceSwap

A strategy that manages a rolling variance swap.

Keyword arguments:

  • underlying: Name of the underlying asset.

  • option_group: Name of the corresponding option group. Either the underlying or the option_group is required.

  • use_option_replication: If True, the variance is estimated using a basket of options.

  • vega_scaled: Specifies if the notional should be scaled by the vega of the strategy.

  • lower_strike_fraction: The lower boundary of the strikes for replication (%ATM). Only relevant when use_option_replication is True.

  • upper_strike_fraction: The upper boundary of the strikes for replication (%ATM). Only relevant when use_option_replication is True.

  • one_sided_option_num: Number of replicating options in the basket on each side of ATM. Only relevant when use_option_replication is True.

Example object creation:

import datetime as dtm

rvs = sig.RollingVarianceSwapStrategy(currency='USD',
                                    maturity='3M',
                                    start_date=dtm.date(2019, 1, 4),
                                    rolling_frequencies=['1M'],
                                    option_group='SPX INDEX OTC OPTION GROUP',
                                    target_quantity=-1.0,
                                    use_option_replication=False)
currency: Optional[str]
lower_strike_fraction: Optional[float]
nominal_weight: Optional[float]
one_sided_option_num: Optional[int]
option_group: Optional[str]
property rolling_table

Builds the strategy’s rolling table. :return: Built rolling table as a pandas DataFrame.

underlying: Optional[str]
upper_strike_fraction: Optional[float]
use_option_replication: Optional[bool]
vega_scaled: Optional[bool]
roll_options(dt)

Set variance swap position.

Parameters:

dt – Decision datetime.