STIR Futures#

EUR#

ESTR 3m#

In [1]: defaults.spec["eur_stir"]
Out[1]: 
{'frequency': 'q',
 'roll': 'imm',
 'eom': False,
 'modifier': 'mf',
 'calendar': 'tgt',
 'payment_lag': 0,
 'currency': 'eur',
 'convention': 'act360',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'rfr_payment_delay',
 'leg2_method_param': 0,
 'bp_value': 25.0,
 'nominal': 1000000.0}

In [2]: STIRFuture(dt(2023, 3, 15), dt(2023, 6, 21), spec="eur_stir").kwargs
Out[2]: 
{'notional': -1000000.0,
 'currency': 'eur',
 'amortization': <NoInput.blank: 0>,
 'convention': 'act360',
 'leg2_notional': 1000000.0,
 'leg2_currency': 'eur',
 'leg2_amortization': <NoInput.blank: 0>,
 'leg2_convention': 'act360',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'rfr_payment_delay',
 'leg2_method_param': 0,
 'bp_value': 25.0,
 'nominal': 1000000.0,
 'schedule': <rl.Schedule at 0x121c3d910>,
 'leg2_schedule': <rl.Schedule at 0x121db4680>,
 'price': <NoInput.blank: 0>,
 'fixed_rate': <NoInput.blank: 0>,
 'leg2_float_spread': <NoInput.blank: 0>,
 'leg2_fixings': <NoInput.blank: 0>,
 'contracts': 1}

ESTR 1m Averaged#

In [3]: defaults.spec["eur_stir1"]
Out[3]: 
{'frequency': 'm',
 'roll': 'som',
 'eom': False,
 'modifier': 'mf',
 'calendar': 'tgt',
 'payment_lag': 0,
 'currency': 'eur',
 'convention': 'act360',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'rfr_payment_delay_avg',
 'leg2_method_param': 0,
 'bp_value': 25.0,
 'nominal': 3000000.0}

In [4]: STIRFuture(dt(2023, 3, 1), dt(2023, 4, 1), spec="eur_stir1").kwargs
Out[4]: 
{'notional': -1000000.0,
 'currency': 'eur',
 'amortization': <NoInput.blank: 0>,
 'convention': 'act360',
 'leg2_notional': 1000000.0,
 'leg2_currency': 'eur',
 'leg2_amortization': <NoInput.blank: 0>,
 'leg2_convention': 'act360',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'rfr_payment_delay_avg',
 'leg2_method_param': 0,
 'bp_value': 25.0,
 'nominal': 1000000.0,
 'schedule': <rl.Schedule at 0x121db4940>,
 'leg2_schedule': <rl.Schedule at 0x121db49f0>,
 'price': <NoInput.blank: 0>,
 'fixed_rate': <NoInput.blank: 0>,
 'leg2_float_spread': <NoInput.blank: 0>,
 'leg2_fixings': <NoInput.blank: 0>,
 'contracts': 1}

Euribor 3m#

In [5]: defaults.spec["eur_stir3"]
Out[5]: 
{'frequency': 'q',
 'roll': 'imm',
 'eom': False,
 'modifier': 'mf',
 'calendar': 'tgt',
 'payment_lag': 0,
 'currency': 'eur',
 'convention': 'act360',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'ibor',
 'leg2_method_param': 2,
 'bp_value': 25.0,
 'nominal': 1000000.0}

In [6]: STIRFuture(dt(2023, 3, 15), dt(2023, 6, 21), spec="eur_stir3").kwargs
Out[6]: 
{'notional': -1000000.0,
 'currency': 'eur',
 'amortization': <NoInput.blank: 0>,
 'convention': 'act360',
 'leg2_notional': 1000000.0,
 'leg2_currency': 'eur',
 'leg2_amortization': <NoInput.blank: 0>,
 'leg2_convention': 'act360',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'ibor',
 'leg2_method_param': 2,
 'bp_value': 25.0,
 'nominal': 1000000.0,
 'schedule': <rl.Schedule at 0x121db4cb0>,
 'leg2_schedule': <rl.Schedule at 0x121db4d60>,
 'price': <NoInput.blank: 0>,
 'fixed_rate': <NoInput.blank: 0>,
 'leg2_float_spread': <NoInput.blank: 0>,
 'leg2_fixings': <NoInput.blank: 0>,
 'contracts': 1}

GBP#

SONIA 3m#

In [7]: defaults.spec["gbp_stir"]
Out[7]: 
{'frequency': 'q',
 'roll': 'imm',
 'eom': False,
 'modifier': 'mf',
 'calendar': 'ldn',
 'payment_lag': 0,
 'currency': 'gbp',
 'convention': 'act365f',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'rfr_payment_delay',
 'leg2_method_param': 0,
 'bp_value': 25.0,
 'nominal': 1000000.0}

In [8]: STIRFuture(dt(2023, 3, 15), dt(2023, 6, 21), spec="gbp_stir").kwargs
Out[8]: 
{'notional': -1000000.0,
 'currency': 'gbp',
 'amortization': <NoInput.blank: 0>,
 'convention': 'act365f',
 'leg2_notional': 1000000.0,
 'leg2_currency': 'gbp',
 'leg2_amortization': <NoInput.blank: 0>,
 'leg2_convention': 'act365f',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'rfr_payment_delay',
 'leg2_method_param': 0,
 'bp_value': 25.0,
 'nominal': 1000000.0,
 'schedule': <rl.Schedule at 0x121db4f70>,
 'leg2_schedule': <rl.Schedule at 0x121db5020>,
 'price': <NoInput.blank: 0>,
 'fixed_rate': <NoInput.blank: 0>,
 'leg2_float_spread': <NoInput.blank: 0>,
 'leg2_fixings': <NoInput.blank: 0>,
 'contracts': 1}

USD#

SOFR 3m#

In [9]: defaults.spec["usd_stir"]
Out[9]: 
{'frequency': 'q',
 'roll': 'imm',
 'eom': False,
 'modifier': 'mf',
 'calendar': 'nyc',
 'payment_lag': 0,
 'currency': 'usd',
 'convention': 'act360',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'rfr_payment_delay',
 'leg2_method_param': 0,
 'bp_value': 25.0,
 'nominal': 1000000.0}

In [10]: STIRFuture(dt(2023, 3, 15), dt(2023, 6, 21), spec="usd_stir").kwargs
Out[10]: 
{'notional': -1000000.0,
 'currency': 'usd',
 'amortization': <NoInput.blank: 0>,
 'convention': 'act360',
 'leg2_notional': 1000000.0,
 'leg2_currency': 'usd',
 'leg2_amortization': <NoInput.blank: 0>,
 'leg2_convention': 'act360',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'rfr_payment_delay',
 'leg2_method_param': 0,
 'bp_value': 25.0,
 'nominal': 1000000.0,
 'schedule': <rl.Schedule at 0x121db4c00>,
 'leg2_schedule': <rl.Schedule at 0x121db4ec0>,
 'price': <NoInput.blank: 0>,
 'fixed_rate': <NoInput.blank: 0>,
 'leg2_float_spread': <NoInput.blank: 0>,
 'leg2_fixings': <NoInput.blank: 0>,
 'contracts': 1}

SOFR 1m Averaged#

In [11]: defaults.spec["usd_stir1"]
Out[11]: 
{'frequency': 'm',
 'roll': 'som',
 'eom': False,
 'modifier': 'mf',
 'calendar': 'nyc',
 'payment_lag': 0,
 'currency': 'usd',
 'convention': 'act360',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'rfr_payment_delay_avg',
 'leg2_method_param': 0,
 'bp_value': 41.67,
 'nominal': 5000000.0}

In [12]: STIRFuture(dt(2023, 3, 1), dt(2023, 4, 1), spec="usd_stir1").kwargs
Out[12]: 
{'notional': -1000000.0,
 'currency': 'usd',
 'amortization': <NoInput.blank: 0>,
 'convention': 'act360',
 'leg2_notional': 1000000.0,
 'leg2_currency': 'usd',
 'leg2_amortization': <NoInput.blank: 0>,
 'leg2_convention': 'act360',
 'leg2_spread_compound_method': 'none_simple',
 'leg2_fixing_method': 'rfr_payment_delay_avg',
 'leg2_method_param': 0,
 'bp_value': 41.67,
 'nominal': 1000000.0,
 'schedule': <rl.Schedule at 0x121db52e0>,
 'leg2_schedule': <rl.Schedule at 0x121db5390>,
 'price': <NoInput.blank: 0>,
 'fixed_rate': <NoInput.blank: 0>,
 'leg2_float_spread': <NoInput.blank: 0>,
 'leg2_fixings': <NoInput.blank: 0>,
 'contracts': 1}