API Reference#
Indices and tables#
Defaults#
These objects are used to set values for missing parameters globally: for a list see Defaults.
Classes#
|
The defaults object used by initialising objects. |
Enums#
Objects to define parameter settings across different objects throughout the libary.
Classes#
|
Enumerable type to define floating period rate fixing methods. |
|
Enumerable type to define spread compounding methods for floating rates. |
|
Enumerable type to define determining the index value on some reference value date. |
|
Enumerable type to define the delta expression of an FX option. |
|
Enumerable type for FXOption metrics. |
|
Enumerable type to define |
|
Enumerable type to handle setting default values. |
|
Standard result class indicating success and containing some value. |
|
Standard result class indicating failure and containing some Exception type. |
Fixings#
For interaction with financial fiixngs and data loading, see Fixings.
Classes#
|
Object to store and load fixing data to populate Leg and Period calculations. |
The |
|
Abstract base class to allow custom implementations of a fixings data loader. |
Classes#
|
Define the general parameters of multiple tenors of an interest rate series. |
|
Define the parameters of a specific interest rate index. |
|
A rate fixing value representing an RFR type calculating involving multiple RFR publications. |
|
A rate fixing value referencing a tenor-IBOR type calculation. |
|
A rate fixing value referencing an interpolated tenor-IBOR type calculation. |
|
An index fixing value for settlement of indexed cashflows. |
|
Define the parameters of a specific FX pair and fixing index. |
|
An FX fixing value for cross-currency or non-deliverable settlement. |
|
An FX fixing value for cross currency settlement. |
|
A |
|
Abstract base class for core financial fixing implementation. |
Scheduling#
Functions#
|
Add a tenor to a given date under specific modification rules and holiday calendar. |
|
Returns a calendar object either from an available set or a user defined input. |
|
Return an IMM date for a specified month. |
|
Return the next IMM date after the given start date. |
|
Calculate the day count fraction of a period. |
Classes#
|
Generate a schedule of dates according to a regular pattern and calendar inference. |
|
A business day calendar defined by weekends and a holiday list. |
|
A wrapped |
|
A calendar defined by a business day intersection of multiple |
|
Enumerable type for date adjustment rules. |
|
Specifier for day count conventions |
|
Enumerable type for a scheduling frequency. |
|
Enumerable type for International Money-Market (IMM) date definitions. |
|
Enumerable type for roll days. |
|
Enumerable type for |
Curves#
Functions#
|
Return the geometric, 1-day, average simple rate for a given simple period rate. |
|
Return the interval index of a value from an ordered input list on the left side. |
|
Determine an index value from a reference date using combinations of known fixings and forecast from a Curve. |
Classes#
|
A |
|
A |
|
A dynamic composition of a sequence of other |
|
A dynamic composition of a sequence of other |
|
A |
|
Imply a |
|
Create a new |
|
Create a new |
|
Create a new |
An ABC defining the base methods of a Curve. |
|
Provides automatic implementation of the curve operations required on a |
|
|
This class is designed as a mixin for the methods for Curve Pricing Objects, i.e. the |
|
A container of meta data associated with a |
|
Enumerable type to define the difference between a discount factor (DF) based and values based |
|
A container for data relating to interpolating |
|
A container for data relating to interpolating |
|
An immutable container for the pricing parameters of a |
|
A container for data relating to interpolating the DFs of a |
Class Inheritance Diagram#

Academic Curves#
Classes#
|
A Nelson-Siegel curve defined by discount factors. |
|
A Nelson-Siegel-Svensson curve defined by discount factors. |
|
A Smith-Wilson style Curve defined by discount factors. |
Instruments#
Objects#
Classes#
|
An interest rate swap (IRS) composing a |
|
A forward rate agreement (FRA) compositing a |
|
A single currency basis swap (SBS) composing a |
|
A short term interest rate (STIR) future compositing a |
|
A zero coupon swap (ZCS) composing a |
|
A cross-currency swap (XCS) composing either |
|
A non-deliverable cross-currency swap (XCS) composing either |
|
A non-deliverable FX forward (NDF), composing two |
|
An FX swap composing two |
|
A dated FX exchange composing two |
|
An indexed zero coupon swap (ZCIS) composing a |
|
An indexed interest rate swap (IIRS) composing a |
|
A credit default swap (CDS) composing a |
|
A fixed rate bond composed of a |
|
A floating rate note (FRN) composed of a |
|
An index-linked fixed rate bond composed of a |
|
A bond future derivative containing a basket of |
|
A bill, or discount security, composed of a |
|
An FX Put option. |
|
An FX Call option. |
|
An FX Risk Reversal |
|
An FX Straddle |
|
An FX Strangle |
|
An FX BrokerFly |
|
A collection of |
|
A Butterfly of |
|
A Spread of |
|
A pseudo Instrument used to calibrate a Curve within a |
|
A pseudo Instrument used to calibrate an FX Vol Object within a |
|
Define calculation conventions for |
|
Define calculation conventions for |
|
Abstract base class used in the construction of Instruments. |
|
Abstract base class used in the construction of bond type Instruments |
|
An abstract base class for implementing FXOptions. |
|
A custom option strategy composed of a list of |
Protocols#
Classes#
|
Class to manage keyword argument population of Leg based Instruments. |
|
Protocol to establish value of any Instrument type. |
|
Protocol to establish a rate pricing metric of any Instrument type. |
|
Protocol to determine cashflows for any Instrument type. |
|
Protocol for determining fixing sensitivity for a Period with AD. |
|
Protocol to determine the analytic rate delta of a particular Leg of an Instrument. |
|
Protocol to determine the analytic rate fixings' sensitivity of a particular Instrument. |
|
Protocol to establish delta and gamma calculations using a |
FX#
Functions#
|
Return a forward FX rate based on interest rate parity. |
Classes#
|
Class for storing and calculating FX forward rates. |
|
Object to store and calculate FX rates for a consistent settlement date. |
FX Volatility#
Classes#
|
Create an FX Volatility Smile at a given expiry indexed by strike using SABR parameters. |
|
Create an FX Volatility Surface parametrised by cross-sectional Smiles at different expiries. |
|
Create an FX Volatility Surface parametrised by cross-sectional Smiles at different expiries. |
|
Create an FX Volatility Smile at a given expiry indexed by delta percent. |
|
An immutable container of meta data associated with a |
|
|
A container for data relating to interpolating the nodes of a |
|
|
A container for data relating to interpolating the nodes of a |
|
An immutable container of meta data associated with a |
|
A container for data relating to the SABR parameters of a |
Legs#
Link to the Legs section in the user guide.
Objects#
Classes#
|
A Leg containing |
|
A Leg containing |
|
A zero coupon Leg composed of a single |
|
A zero coupon Leg composed of a single |
|
A Leg composed of indexed |
|
Define a Leg containing |
|
Create a credit protection leg composed of |
|
A Leg containing user specified |
|
An amortization schedule for any |
|
Abstract base class used in the construction of Legs. |
Protocols#
Classes#
|
Protocol to establish value of any Leg type. |
|
Protocol to generate cashflows of any Leg type. |
|
Protocol for determining fixing sensitivity for a Period with AD. |
|
Protocol to calculate analytical rate delta sensitivities of any Leg type. |
|
Protocol to calculate analytical rate fixing sensitivities of any Leg type. |
|
Protocol to determine if a Leg is ex-dividend on a given settlement. |
Periods#
Link to the Periods section in the user guide.
Objects#
Classes#
|
A Period defined by a fixed interest rate. |
|
A Period defined by a floating interest rate. |
|
A Period defined by a fixed interest rate, as a representation of multiple compounded Periods. |
|
A Period defined by compounded floating rate Periods. |
|
A Period defined by a specific amount. |
|
A Period defined by a specific amount calculated from the difference between two |
|
A Period defined by a fixed interest rate and contingent credit event. |
|
A Period defined by a credit event and contingent notional payment. |
|
A Period defined by a European FX call option. |
|
A Period defined by a European FX put option. |
|
Abstract base class for Period types. |
|
Abstract base class for Static Period types. |
|
Abstract base class for FXOptionPeriods types. |
Protocols#
Period protocols establish common functionality and methods that all Periods share consistently.
Classes#
|
Protocol to define value of any Period type. |
|
Protocol for parameter and calculation display for the Period. |
|
Protocol for determining fixing sensitivity for a Period with AD. |
|
Protocol to establish analytical sensitivity to rate type metrics. |
|
Protocol to derive a rate fixings sensitivity DataFrame. |
|
Protocol to derive analytic FXOption greeks. |
|
Protocol to establish value of any Static Period type. |
|
Protocol for parameter and calculation display for the Static Period. |
|
Protocol to establish analytical sensitivity to rate type metrics for Static Period types. |
|
Protocol to derive an analytic rate fixings sensitivity DataFrame from pricing Curves. |
|
Protocol to provide indexation for Static Period types. |
|
Protocol to provide non-deliverable conversion for Static Period types. |
Parameters#
Period parameters define containers for input values used in the construction of functionality.
Classes#
|
Parameters for Period cashflows adjusted under some indexation. |
|
Parameters for settlement of Period cashflows. |
|
Parameters of Period cashflows associated with some |
|
Parameters for a Period containing a fixed rate. |
|
Parameters for a Period containing a floating rate. |
|
Parameters for determination of non-deliverable Period cashflows. |
|
Parameters for Period cashflows associated with credit events. |
|
Parameters for Period cashflows associated with multiple |
|
Parameters for FX Option Period cashflows. |
Solver#
Classes#
Class Inheritance Diagram#

Piecewise Polynomial Splines#
Functions#
|
Calculate the m th order derivative (from the right) of an indexed b-spline at x. |
|
Calculate the value of an indexed b-spline at x. |
|
Evaluate a single x-axis data point, or a derivative value, on a Spline. |
Classes#
|
Piecewise polynomial spline composed of float-64 values on the x-axis and |
|
Piecewise polynomial spline composed of float-64 values on the x-axis and |
|
Piecewise polynomial spline composed of float-64 values on the x-axis and float-64 values on the y-axis. |
Dual (for AD)#
Functions#
|
Calculate the logarithm of a regular int or float or a dual number. |
|
Calculate the exponential value of a regular int or float or a dual number. |
|
Solve a linear system of equations involving dual number data types. |
Return the standard normal probability density function. |
|
Return the cumulative standard normal distribution for given value. |
|
Return the inverse cumulative standard normal distribution for given value. |
|
|
Return derivatives of a dual number. |
|
Convert a float, |
|
|
|
Use the Newton-Raphson algorithm to determine a function root searching many variables. |
|
Use the Newton-Raphson algorithm to determine the root of a function searching one variable. |
|
Use the inverse function theorem to determine a function value of one variable. |
|
Solve the quadratic equation, \(ax^2 + bx +c = 0\), with error reporting. |
Classes#
|
Defines the order of gradients available in a calculation with AD. |
|
Dual number data type to perform first derivative automatic differentiation. |
|
Dual number data type to perform second derivative automatic differentiation. |
|
A user defined, exogenous variable that automatically converts to a |
Serialization#
Functions#
|
Create an object from JSON string. |
Cookbook#
Please see here for the cookbook index.