Release Notes#
Rough Development Plan#
The future development of rateslib is open to many avenues. Some possibilities are listed below. The author is very interested in any feedback and this can be given on the public Issues board at the project github repository: Rateslib Project, or by direct email contact through rateslib@gmail.com.
Feature |
Description |
Consideration |
Timeframe |
---|---|---|---|
Vanilla FX options and volatility products |
Adding option instruments and benchmark trades such as risk-reversals. |
Highly likely (v2.0?) |
By mid 2024 |
Vanilla Swaptions |
Adding the instruments priced by a volatility input. |
Likely (v2.0 or v3.0?) |
By end 2024 |
SABR model for options |
Adding the parameters to construct SABR vol surfaces/ cuves. |
Possible, with dependencies to other developments. (v3.0?) |
By end 2024 |
Optimization of code |
Using C extensions, or rust, or re-writing certain blocks to improve performance. |
Likely to some degree, depending upon community adoption and contributions. |
no ETA |
AD backend |
Changing the AD implementation to another 3rd party (JAX, PyAudi) |
Very unlikely, maturity of those libraries must increase and the performance improvements must be sufficient to warrant such a large codebase change. |
no ETA |
1.2.0 (not released)#
This version uses Rust bindings. See getting started for notes about installation changes.
Feature |
Description |
---|---|
Performance |
The modules |
Splines |
New methods |
Splines |
Added |
Instruments |
Basic FX Volatility Instruments have been added, including
|
FX Volatility |
A new pricing component |
AD |
Added |
AD |
Added |
Bug |
“ActActICMA” convention now handles |
1.1.0 (20th Mar 2024)#
Feature |
Description |
---|---|
Automatic Differentiation |
Breaking Change! Dual number gradient method is no longer calculable on the object.
Instead of dual.gradient(vars) use the following call gradient(dual, vars), using the
provided function |
Instruments |
Added argument |
Bug |
|
Bug |
|
Bug |
|
Performance |
Curve iterations in the |
Performance |
|
Performance |
|
1.0.0 (1st Feb 2024)#
Feature |
Description |
---|---|
Bug |
|
Bug |
|
0.7.0 (29th Nov 2023)#
Feature |
Description |
---|---|
Legs |
Refactor how the |
Legs |
Allow |
Instruments |
|
Instruments |
Added |
Instruments |
|
Instruments |
Added |
Solver |
Add an attribute |
Bug |
Update |
Bug |
Add the |
Bug |
|
Bug |
|
0.6.0 (19th Oct 2023)#
Feature |
Description |
---|---|
Instruments |
Add a |
Instruments |
Merge all |
Curves |
Separate |
Curves |
Add the ability to supply curves in a dict for forecasting FloatPeriods to be
able handle interpolated stub periods under an “ibor” |
Solver |
Added the methods |
Bug |
Instrument |
Bug |
The |
Bug |
Now emit a warning if a discount factor or rate is requested on a curve with a spline outside of the rightmost boundary of the spline interval. |
0.5.1 (11 Sep 2023)#
Feature |
Description |
---|---|
Instruments |
Rename |
Instruments |
Add a |
Instruments |
Add |
Periods |
|
Curves |
The |
Schedule |
A |
Defaults |
Change the default |
Bug |
|
Bug |
|
Bug |
|
Bug |
|
0.4.0 (12 Aug 2023)#
Feature |
Description |
---|---|
Instruments |
Added |
Instruments |
Added |
Legs |
Removed all |
Instruments |
The |
Defaults |
Added historic fixing data until end July for ESTR, SOFR, SWESTR, SONIA and NOWA, for testing and validation. |
Instruments |
Collateral tags were added to Curves to permit the new method |
Performance |
Calendars are now cached which improves general performance by about 10%. |
Bug |
When performing operations on CompositeCurves the resultant curve now correctly inherits
the |
Bug |
|
Bug |
NumPy.float128 datatype is not available on Windows and caused loading errors. |
Bug |
The holiday calendars: ‘ldn’, ‘tgt’, ‘nyc’, ‘stk’, ‘osl’, and ‘zur’, have been reviewed and validated historic fixings against the historic fixing data. These are also now fully documented. |
Bug |
CompositeCurve can now be constructed from ProxyCurve and Curve combinations. |
0.3.1 (29 Jul 2023)#
Feature |
Description |
---|---|
Legs |
Added |
Instruments |
Added |
Curves |
Added |
0.2.0 (15 May 2023)#
Feature |
Description |
---|---|
Instruments |
Added |
Curves |
Added |
0.1.0 (24 Apr 2023)#
Feature |
Description |
---|---|
Automatic Differentiation |
A toolset for making risk sensitivity and gradient based calculations. |
Calendars |
A toolset for handling dates and holiday calendars for schedules. |
Schedule |
A toolset for generating financial schedules of financial instruments. |
Splines |
A toolset for allowing spline interpolation. |
Curves |
Initial classes for DF bases and value based interest rate curves. |
Periods |
Initial classes for handling fixed periods, float periods and cashflows. |
Legs |
Initial classes for aggregating periods. |
Instruments |
Adding standard financial instruments such as securities: bonds and bills, and derivatives such as: IRS, SBS, FRA, XCS, FXSwap |
Solver |
A set of algorithms for iteratively determining interest rate curves. |
FX |
Initial classes for handling FX rates an Fx forwards. |