EquityIndexOTCOptionsGroup

EquityIndexOTCOptionsGroup#

class sigtech.framework.instruments.option_groups.EquityIndexOTCOptionsGroup

Baseclasses: OTCOptionGroup

Subclasses: ETFOTCOptionsGroup

A class representing OTC equity index option groups.

data_type: Optional[Literal['eq_market', 'eq_parameters_svi']]
discount_curve: Optional[str]
discrete_dividend: Optional[bool]
strike_rounding: Optional[bool]
discount_curves(data_dates, data_point=None)

discount curves used for the options discounting are chosen using the following logic: if name of the curve is specified in discount_curve input, that curve is used directly if ‘imply’ is specified as discount_curve input, the zero curve is implied from the depo rates of the volsurface market data if discount_curve parameter is None (default value), the environment is checked for the EQUITY_INDEX_OPTIONS_DISCOUNT_IMPLY_FROM_VOL_SURFACE, which if set to True will cause curve being implied from the vol surface, or index option group discounting curve suffix in EQUITY_INDEX_OPTIONS_DISCOUNT_OVERRIDE_SUFFIX, which, if say set to INDX will cause to use USD.INDX curve for USD options. If both parameters are False/None (default), the underlying discounting curve is used (OIS curves by default) The environment setting EQUITY_INDEX_OPTIONS_DIV_YIELD_STORED_IN_VOL_SURFACE (default True) will cause dividend yields to be taken from the vol surface, or if false, from the underlying’s specific dividend yield curve. e.g ‘SPX INDEX DIVIDEND YIELD CURVE’

dividend_curves(data_dates)

Dividend yield curves of the underlying.

Parameters:

data_dates – List of input dates.

Returns:

Dividend yield curves.

forward_prices(data_dates, maturity, **kwargs)

Maturity-corresponding future (or more generally next future at or after maturity) quote as seen on data_dates.

Parameters:
  • data_dates – List of input dates.

  • maturity – Input maturity.

Returns:

List of future quotes.

get_option(option_type: str, strike: Union[float, str], start_date: date, maturity: Union[date, str], strike_type: str = 'Price', exercise_type='European', target_maturity_weekday: Optional[str] = None, is_imm_maturity: Optional[bool] = False, strike_date: Optional[Union[date, datetime]] = None, **kwargs)

The nearest option available for a given type of option, strike and start+maturity date.

Parameters:
  • option_type'Call' or 'Put'.

  • strike – Strike of option in either price, delta or premium terms, or relative terms, e.g. 'SPOT+5%' or 'FWD-3%'.

  • start_date – Strike date of the option, unless strike_date is passed. Start of the history.

  • maturity – Maturity date of the option or maturity tenor key such as '3M'.

  • strike_type'Price', 'Delta', 'Spot', 'Premium' (defaults to price; not relevant if strike is relative).

  • exercise_type'European' or 'American' (defaults to ‘European’).

  • target_maturity_weekday – Weekday used for target maturity. If set to None, the maturity is adjusted just to the next business day (optional).

  • is_imm_maturity – Flag for usage of IMM dates (optional).

  • strike_date – Strike date of the option. If None (default), start_date is used (optional).

Returns:

The nearest option available given the inputs.

get_option_group_dependencies(t: time, tz: tzinfo, valuation_currency: str, start_dt: datetime, end_dt: datetime, greek_calculation_dependencies: bool = False) list[sigtech.framework.internal.infra.mu.graph.registry.factory.Dependency]

Dependencies at the option group level

round_to_strike(strike)

Strike adjustment for display purposes.

Parameters:

strike – Input strike.

Returns:

Adjusted strike.

spot_series(data_point=None)

Timeseries of spot values.

Parameters:

data_point – Data point (optional).

Returns:

pandas Series.

spot_values(data_dates, data_point=None)

Spot values at points in time.

Parameters:
  • data_dates – Input dates.

  • data_point – Data point (optional).

Returns:

List of spot values.

strike_from_delta(option_type, delta_strike, quote_date, maturity_date, **kwargs)

The newton solver may fail to find feasible solution when time to maturity is large.

Parameters:
  • option_type – Type of option.

  • delta_strike – Delta strike.

  • quote_date – Quote date.

  • maturity_date – Maturity date.

Returns:

Option strike.