gitextract_nnjeuw27/ ├── .ai-opt-out ├── .aiignore ├── .gitattributes ├── .github/ │ └── workflows/ │ ├── release-all.yml │ ├── release-linux.yml │ ├── release-macos.yml │ ├── release-musllinux.yml │ ├── release-sdist.yml │ ├── release-windows.yml │ ├── ubuntu-latest-python-specific.yml │ ├── ubuntu-latest-rust-specific.yml │ ├── ubuntu-latest.yml │ ├── ubuntu-minimum.yml │ ├── windows-latest.yml │ └── windows-minimum.yml ├── .gitignore ├── COMMERCIAL_LICENCE ├── COMMERCIAL_LICENCE_ADDENDUM1 ├── Cargo.toml ├── LICENCE ├── README.md ├── docs/ │ └── source/ │ └── z_ir_vol_time_to_expiry.rst ├── notebooks/ │ ├── coding/ │ │ ├── ch5_fx.ipynb │ │ ├── curves.ipynb │ │ └── scheduling.ipynb │ └── coding_2/ │ ├── AutomaticDifferentiation.ipynb │ ├── Calendars.ipynb │ ├── Cookbook.ipynb │ ├── CurveSolving.ipynb │ ├── Curves.ipynb │ ├── FXRates.ipynb │ ├── FXVolatility.ipynb │ ├── Instruments.ipynb │ ├── InterpolationAndSplines.ipynb │ ├── Legs.ipynb │ ├── Periods.ipynb │ └── Scheduling.ipynb ├── pyproject.toml ├── python/ │ ├── rateslib/ │ │ ├── __init__.py │ │ ├── _spec_loader.py │ │ ├── curves/ │ │ │ ├── __init__.py │ │ │ ├── _parsers.py │ │ │ ├── academic/ │ │ │ │ ├── __init__.py │ │ │ │ ├── ns.py │ │ │ │ ├── nss.py │ │ │ │ └── sw.py │ │ │ ├── curves.py │ │ │ ├── interpolation.py │ │ │ ├── rs.py │ │ │ └── utils.py │ │ ├── data/ │ │ │ ├── __instrument_spec.csv │ │ │ ├── fixings.py │ │ │ ├── historical/ │ │ │ │ ├── aud_rfr.csv │ │ │ │ ├── cad_rfr.csv │ │ │ │ ├── corra.csv │ │ │ │ ├── estr.csv │ │ │ │ ├── eur_rfr.csv │ │ │ │ ├── gbp_rfr.csv │ │ │ │ ├── inr_rfr.csv │ │ │ │ ├── jpy_rfr.csv │ │ │ │ ├── nok_rfr.csv │ │ │ │ ├── nowa.csv │ │ │ │ ├── sek_rfr.csv │ │ │ │ ├── sofr.csv │ │ │ │ ├── sonia.csv │ │ │ │ ├── swestr.csv │ │ │ │ └── usd_rfr.csv │ │ │ └── loader.py │ │ ├── default.py │ │ ├── dual/ │ │ │ ├── __init__.py │ │ │ ├── ift.py │ │ │ ├── newton.py │ │ │ ├── quadratic.py │ │ │ ├── utils.py │ │ │ └── variable.py │ │ ├── enums/ │ │ │ ├── __init__.py │ │ │ ├── generics.py │ │ │ └── parameters.py │ │ ├── errors.py │ │ ├── fx/ │ │ │ ├── __init__.py │ │ │ ├── fx_forwards.py │ │ │ └── fx_rates.py │ │ ├── instruments/ │ │ │ ├── __init__.py │ │ │ ├── bonds/ │ │ │ │ ├── __init__.py │ │ │ │ ├── bill.py │ │ │ │ ├── bond_future.py │ │ │ │ ├── conventions/ │ │ │ │ │ ├── __init__.py │ │ │ │ │ ├── accrued.py │ │ │ │ │ └── discounting.py │ │ │ │ ├── fixed_rate_bond.py │ │ │ │ ├── float_rate_note.py │ │ │ │ ├── index_fixed_rate_bond.py │ │ │ │ └── protocols/ │ │ │ │ ├── __init__.py │ │ │ │ ├── accrued.py │ │ │ │ ├── cashflows.py │ │ │ │ ├── duration.py │ │ │ │ ├── oaspread.py │ │ │ │ ├── repo.py │ │ │ │ └── ytm.py │ │ │ ├── cds.py │ │ │ ├── fee.py │ │ │ ├── fly.py │ │ │ ├── fra.py │ │ │ ├── fx_forward.py │ │ │ ├── fx_options/ │ │ │ │ ├── __init__.py │ │ │ │ ├── brokerfly.py │ │ │ │ ├── call_put.py │ │ │ │ ├── risk_reversal.py │ │ │ │ ├── straddle.py │ │ │ │ ├── strangle.py │ │ │ │ └── vol_value.py │ │ │ ├── fx_swap.py │ │ │ ├── iirs.py │ │ │ ├── ir_options/ │ │ │ │ ├── __init__.py │ │ │ │ ├── call_put.py │ │ │ │ ├── risk_reversal.py │ │ │ │ ├── straddle.py │ │ │ │ ├── strangle.py │ │ │ │ └── vol_value.py │ │ │ ├── irs.py │ │ │ ├── loan.py │ │ │ ├── ndf.py │ │ │ ├── ndxcs.py │ │ │ ├── portfolio.py │ │ │ ├── protocols/ │ │ │ │ ├── __init__.py │ │ │ │ ├── analytic_delta.py │ │ │ │ ├── analytic_fixings.py │ │ │ │ ├── cashflows.py │ │ │ │ ├── fixings.py │ │ │ │ ├── kwargs.py │ │ │ │ ├── npv.py │ │ │ │ ├── pricing.py │ │ │ │ ├── rate.py │ │ │ │ ├── sensitivities.py │ │ │ │ └── utils.py │ │ │ ├── sbs.py │ │ │ ├── spread.py │ │ │ ├── stir_future.py │ │ │ ├── value.py │ │ │ ├── xcs.py │ │ │ ├── yoyis.py │ │ │ ├── zcis.py │ │ │ └── zcs.py │ │ ├── legs/ │ │ │ ├── __init__.py │ │ │ ├── amortization.py │ │ │ ├── credit.py │ │ │ ├── custom.py │ │ │ ├── fixed.py │ │ │ ├── float.py │ │ │ └── protocols/ │ │ │ ├── __init__.py │ │ │ ├── analytic_delta.py │ │ │ ├── analytic_fixings.py │ │ │ ├── cashflows.py │ │ │ ├── fixings.py │ │ │ └── npv.py │ │ ├── local_types.py │ │ ├── mutability/ │ │ │ └── __init__.py │ │ ├── periods/ │ │ │ ├── __init__.py │ │ │ ├── cashflow.py │ │ │ ├── credit.py │ │ │ ├── fixed_period.py │ │ │ ├── float_period.py │ │ │ ├── float_rate.py │ │ │ ├── fx_volatility.py │ │ │ ├── ir_volatility.py │ │ │ ├── parameters/ │ │ │ │ ├── __init__.py │ │ │ │ ├── credit.py │ │ │ │ ├── fx_volatility.py │ │ │ │ ├── index.py │ │ │ │ ├── ir_volatility.py │ │ │ │ ├── mtm.py │ │ │ │ ├── period.py │ │ │ │ ├── rate.py │ │ │ │ └── settlement.py │ │ │ ├── protocols/ │ │ │ │ ├── __init__.py │ │ │ │ ├── analytic_delta.py │ │ │ │ ├── analytic_fixings.py │ │ │ │ ├── analytic_greeks.py │ │ │ │ ├── cashflows.py │ │ │ │ ├── fixings.py │ │ │ │ └── npv.py │ │ │ └── utils.py │ │ ├── py.typed │ │ ├── rs.pyi │ │ ├── scheduling/ │ │ │ ├── __init__.py │ │ │ ├── adjuster.py │ │ │ ├── calendars.py │ │ │ ├── convention.py │ │ │ ├── dcfs.py │ │ │ ├── frequency.py │ │ │ ├── imm.py │ │ │ ├── rollday.py │ │ │ └── schedule.py │ │ ├── serialization/ │ │ │ ├── __init__.py │ │ │ ├── json.py │ │ │ └── utils.py │ │ ├── solver.py │ │ ├── splines/ │ │ │ ├── __init__.py │ │ │ └── evaluate.py │ │ ├── utils/ │ │ │ └── calendars.py │ │ ├── verify.py │ │ └── volatility/ │ │ ├── __init__.py │ │ ├── fx/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── delta_vol.py │ │ │ ├── sabr.py │ │ │ └── utils.py │ │ ├── ir/ │ │ │ ├── __init__.py │ │ │ ├── base.py │ │ │ ├── sabr.py │ │ │ ├── spline.py │ │ │ └── utils.py │ │ └── utils.py │ └── tests/ │ ├── curves/ │ │ ├── test_curves.py │ │ ├── test_curvesrs.py │ │ ├── test_ns.py │ │ ├── test_nss.py │ │ └── test_sw.py │ ├── instruments/ │ │ ├── test_instruments_bonds_legacy.py │ │ └── test_instruments_legacy.py │ ├── legs/ │ │ ├── test_analytic_delta.py │ │ ├── test_init.py │ │ ├── test_leg_fixings.py │ │ └── test_legs_legacy.py │ ├── periods/ │ │ ├── test_fixings_exposure.py │ │ ├── test_fixings_load.py │ │ ├── test_float_rate.py │ │ ├── test_periods_init.py │ │ ├── test_periods_legacy.py │ │ └── test_static_npv.py │ ├── scheduling/ │ │ ├── test_calendars.py │ │ ├── test_calendarsrs.py │ │ ├── test_frequency.py │ │ ├── test_imm.py │ │ ├── test_schedule.py │ │ └── test_schedulers.py │ ├── serialization/ │ │ ├── test_json.py │ │ ├── test_pickle.py │ │ └── test_repr.py │ ├── test_default.py │ ├── test_dual.py │ ├── test_dualpy.py │ ├── test_dualrs.py │ ├── test_enums.py │ ├── test_fixings.py │ ├── test_fx.py │ ├── test_fx_volatility.py │ ├── test_fxrs.py │ ├── test_ir_volatility.py │ ├── test_serialization.py │ ├── test_solver.py │ ├── test_splines.py │ └── test_to_fix.py ├── robots.txt └── rust/ ├── _README.txt ├── curves/ │ ├── curve.rs │ ├── curve_py.rs │ ├── interpolation/ │ │ ├── interpolation_py.rs │ │ ├── intp_flat_backward.rs │ │ ├── intp_flat_forward.rs │ │ ├── intp_linear.rs │ │ ├── intp_linear_zero_rate.rs │ │ ├── intp_log_cubic.rs │ │ ├── intp_log_linear.rs │ │ ├── intp_null.rs │ │ ├── mod.rs │ │ └── utils.rs │ ├── mod.rs │ ├── nodes.rs │ └── serde.rs ├── dual/ │ ├── docs.rs │ ├── dual.rs │ ├── dual_ops/ │ │ ├── add.rs │ │ ├── convert.rs │ │ ├── div.rs │ │ ├── eq.rs │ │ ├── from.rs │ │ ├── math_funcs.rs │ │ ├── mod.rs │ │ ├── mul.rs │ │ ├── neg.rs │ │ ├── num.rs │ │ ├── numeric_ops.rs │ │ ├── one.rs │ │ ├── ord.rs │ │ ├── pow.rs │ │ ├── rem.rs │ │ ├── signed.rs │ │ ├── sub.rs │ │ ├── sum.rs │ │ └── zero.rs │ ├── dual_py.rs │ ├── enums.rs │ ├── linalg/ │ │ ├── linalg_dual.rs │ │ ├── linalg_f64.rs │ │ └── mod.rs │ ├── linalg_py.rs │ └── mod.rs ├── enums/ │ ├── mod.rs │ ├── parameters.rs │ └── py/ │ ├── float_fixing_method.rs │ ├── ir_option_metric.rs │ ├── leg_index_base.rs │ └── mod.rs ├── fx/ │ ├── mod.rs │ ├── rates/ │ │ ├── ccy.rs │ │ ├── fxpair.rs │ │ ├── fxrate.rs │ │ └── mod.rs │ └── rates_py.rs ├── fx_volatility/ │ ├── mod.rs │ └── sabr_funcs.rs ├── json/ │ ├── json_py.rs │ └── mod.rs ├── lib.rs ├── main.rs ├── scheduling/ │ ├── calendars/ │ │ ├── adjuster.rs │ │ ├── cal.rs │ │ ├── calendar.rs │ │ ├── dateroll.rs │ │ ├── manager.rs │ │ ├── mod.rs │ │ ├── named/ │ │ │ ├── all.rs │ │ │ ├── bjs.rs │ │ │ ├── bjs_script.py │ │ │ ├── bus.rs │ │ │ ├── fed.rs │ │ │ ├── fed_script.py │ │ │ ├── ldn.rs │ │ │ ├── ldn_script.py │ │ │ ├── mex.rs │ │ │ ├── mex_script.py │ │ │ ├── mod.rs │ │ │ ├── mum.rs │ │ │ ├── mum_script.py │ │ │ ├── nsw.rs │ │ │ ├── nsw_script.py │ │ │ ├── nyc.rs │ │ │ ├── nyc_script.py │ │ │ ├── osl.rs │ │ │ ├── osl_script.py │ │ │ ├── stk.rs │ │ │ ├── stk_script.py │ │ │ ├── syd.rs │ │ │ ├── syd_script.py │ │ │ ├── tgt.rs │ │ │ ├── tgt_script.py │ │ │ ├── tro.rs │ │ │ ├── tro_script.py │ │ │ ├── tyo.rs │ │ │ ├── tyo_script.py │ │ │ ├── wlg.rs │ │ │ ├── wlg_script.py │ │ │ ├── zur.rs │ │ │ └── zur_script.py │ │ ├── named_cal.rs │ │ └── union_cal.rs │ ├── convention.rs │ ├── frequency/ │ │ ├── frequency.rs │ │ ├── imm.rs │ │ ├── mod.rs │ │ └── rollday.rs │ ├── mod.rs │ ├── py/ │ │ ├── adjuster.rs │ │ ├── calendar.rs │ │ ├── convention.rs │ │ ├── frequency.rs │ │ ├── imm.rs │ │ ├── mod.rs │ │ ├── rollday.rs │ │ └── schedule.rs │ ├── schedule.rs │ └── serde.rs ├── splines/ │ ├── mod.rs │ ├── spline.rs │ └── spline_py.rs └── tests/ ├── dual1.rs ├── mod.rs └── splines/ └── mod.rs