Skip to content

feat(itofin-py): expose CapFloorTermVolSurface bindings#630

Merged
benbenbang merged 2 commits into
mainfrom
fable/622
Jul 27, 2026
Merged

feat(itofin-py): expose CapFloorTermVolSurface bindings#630
benbenbang merged 2 commits into
mainfrom
fable/622

Conversation

@benbenbang

@benbenbang benbenbang commented Jul 27, 2026

Copy link
Copy Markdown
Owner
  • feat(itofin-py): expose CapFloorTermVolSurface bindings
  • test(itofin-py): add cap/floor term volatility tests

close #622

Add Python bindings for the market cap/floor term-volatility surface, a
bicubic interpolation over an option-tenor x strike grid used as the
optionlet stripper's input.

**New bindings:**
* Added `crates/itofin-py/src/capfloortermvol.rs` implementing
  `PyCapFloorTermVolSurface`, with a reference-date constructor, a
  `with_quotes` factory that rebuilds and notifies observers on quote
  updates, and `volatility`, `volatility_date`, and `volatility_time`
  queries.
* Registered `PyCapFloorTermVolSurface` in the `termstructures` module
  in `lib.rs`.

**Type stubs:**
* Documented the new `CapFloorTermVolSurface` class in
  `termstructures.pyi`, covering grid validation errors and the pinned
  reference-date semantics.
Add a new test file covering cap/floor term volatility calculations
in the itofin-py crate.

Closes #622

close #622
@benbenbang
benbenbang enabled auto-merge (rebase) July 27, 2026 05:19
@github-actions github-actions Bot added the enhancement New feature or request label Jul 27, 2026
@benbenbang
benbenbang merged commit ce880b2 into main Jul 27, 2026
3 of 6 checks passed
@benbenbang
benbenbang deleted the fable/622 branch July 27, 2026 05:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[D7][itofin-py] Pass B2: PyOptionletVolatilityStructure + PyConstantOptionletVol + PyCapFloorTermVolSurface (#605)

1 participant