Default strategies#

Rolling LME futures#

Predefined rolling LME future strategies. See sigtech.framework.strategies.rolling_future_strategy for more information about these objects.

sigtech.framework.default_strategy_objects.rolling_lme_futures.la_lme_comdty_f_0(use_cache: bool = True) sigtech.framework.strategies.rolling_future_strategy.RollingLMEFutureStrategy

Define a rolling LME future strategy in USD with contract code 'LA' (Primary Aluminium) and rolling rule 'F_0'.

sigtech.framework.default_strategy_objects.rolling_lme_futures.la_lme_comdty_f_0_short(use_cache: bool = True) sigtech.framework.strategies.rolling_future_strategy.RollingLMEFutureStrategy

Define a short rolling LME future strategy in USD with contract code 'LA' (Primary Aluminium) and rolling rule 'F_0'.

sigtech.framework.default_strategy_objects.rolling_lme_futures.ll_lme_comdty_f_0(use_cache: bool = True) sigtech.framework.strategies.rolling_future_strategy.RollingLMEFutureStrategy

Define a rolling LME future strategy in USD with contract code 'LL' (Lead) and rolling rule 'F_0'.

sigtech.framework.default_strategy_objects.rolling_lme_futures.ln_lme_comdty_f_0(use_cache: bool = True) sigtech.framework.strategies.rolling_future_strategy.RollingLMEFutureStrategy

Define a rolling LME future strategy in USD with contract code 'LN' (Nickel) and rolling rule 'F_0'.

sigtech.framework.default_strategy_objects.rolling_lme_futures.lp_lme_comdty_f_0(use_cache: bool = True) sigtech.framework.strategies.rolling_future_strategy.RollingLMEFutureStrategy

Define a rolling LME future strategy in USD with contract code 'LP' (Copper) and rolling rule 'F_0'.

sigtech.framework.default_strategy_objects.rolling_lme_futures.lt_lme_comdty_f_0(use_cache: bool = True) sigtech.framework.strategies.rolling_future_strategy.RollingLMEFutureStrategy

Define a rolling LME future strategy in USD with contract code 'LT' (Tin) and rolling rule 'F_0'.

sigtech.framework.default_strategy_objects.rolling_lme_futures.lx_lme_comdty_f_0(use_cache: bool = True) sigtech.framework.strategies.rolling_future_strategy.RollingLMEFutureStrategy

Define a rolling LME future strategy in USD with contract code 'LX' (Zinc) and rolling rule 'F_0'.

sigtech.framework.default_strategy_objects.rolling_lme_futures.ly_lme_comdty_f_0(use_cache: bool = True) sigtech.framework.strategies.rolling_future_strategy.RollingLMEFutureStrategy

Define a rolling LME future strategy in USD with contract code 'LY' (Aluminium Alloy) and rolling rule 'F_0'.

sigtech.framework.default_strategy_objects.rolling_lme_futures.lk_lme_comdty_f_0(use_cache: bool = True) sigtech.framework.strategies.rolling_future_strategy.RollingLMEFutureStrategy

Define a rolling LME future strategy in USD with contract code 'LK' (Aluminium) and rolling rule 'F_0'.

sigtech.framework.default_strategy_objects.rolling_lme_futures.gbp_la_lme_comdty_f_0(use_cache: bool = True) sigtech.framework.strategies.rolling_future_fx_hedged.RollingLMEFutureFXHedgedStrategy

Define a rolling LME future strategy in GBP with contract code 'LA' (Primary Aluminium) and rolling rule 'F_0'.

sigtech.framework.default_strategy_objects.rolling_lme_futures.create_rolling_lme_strategies(contract_codes: Sequence[str], rolling_rules: Sequence[str], currency: str, start_date: datetime.date, use_cache: bool = True) dict[str, dict[str, str]]

Given a set of LME strip contract codes and rolling rules, create the cross product RollingLMEFutureStrategy(s) and pre-compute the associated building block FrameworkObject(s).

Parameters
  • contract_codes – Sequence of LME strip tickers, e.g. ['LA', 'LL'].

  • rolling_rules – Sequence of pre-built rules, e.g. ['F_0', 'F_1'].

  • currency – Currency for rolling LME future strategies, e.g. 'USD'.

  • start_date – Start date for rolling LME future strategies, e.g. datetime.date(2014, 1, 2).

Returns

Dict of dict of RollingLMEFutureStrategy names from cross product, dict of synthetic futures names by contract code.

Example of dict of dict of RollingLMEFutureStrategy names from cross product:

{
'LA': {'F_0': 'USD LA COMDTY LONG F_0 FC201C43 RLMEFS STRATEGY', 'F_1': 'USD LA COMDTY LONG F_1 96C08AD0 RLMEFS STRATEGY'}
'LL': {'F_0': 'USD LL COMDTY LONG F_0 842BC872 RLMEFS STRATEGY', 'F_1': 'USD LL COMDTY LONG F_1 450C8B35 RLMEFS STRATEGY'}
}

Example of dict of synthetic futures names by contract code:

{
'LA': ['LA 0.0 F14 LME SYNTHETIC FUTURE', 'LA 0.0 F15 LME SYNTHETIC FUTURE', ...],
'LL': ['LL 0.0 F14 LME SYNTHETIC FUTURE', 'LL 0.0 F15 LME SYNTHETIC FUTURE', ...],
}