Skip to content
OpenRedukti is a C++ library for Interest Rate Swaps and Fras, supports bootstrapping of Interest Rate Curves, computing NPV and sensitivities using automatic/algorithmic differentiation. It provides a scripting environment in Python and Ravi (a Lua dialect).
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Create FUNDING.yml May 24, 2019
cmake
cminpack
cpp
docker
docs
grpc-server
proto Reformat protobuf files Jul 8, 2019
ravi Update Ravi to latest, update copyright, and merge minor changes from… Apr 30, 2019
scripts
testdata issue #7: added two new IndexFamily enum values, and revised the bond… May 31, 2019
tests
.clang-format
CMakeLists.txt
LICENSE
README.rst
THIRD_PARTY_LICENSE

README.rst

Introduction

OpenRedukti is a C++ library for working with Interest Rate Derivative products such as Interest Rate Swaps, and FRAs. It allows you to build Interest Rate curves with different interpolation methods, and then use these curves to compute present value and sensitivities of Interest Rate Derivatives.

OpenRedukti is Free Software, licensed under the GNU General Public License, v3. If you wish to use OpenRedukti under a non-GPL license, you can raise an issue on GitHub repository. A liberal license will be granted to your company at zero cost, provided you agree to allow your company to be listed as a user of OpenRedukti.

Main Features

  • Small library with minimal external dependencies (only external dependencies are BLAS, LAPACK and Google Protocol Buffers)
  • Ability to express an interest rate product as a set of cashflows
  • Bootstrap continuously compounded zero coupon interest rate curves using Linear, CubicSpline, and MonotoneConvex interpolators
  • Interpolate curves in the discount factor space using LogLinear and LogCubicSpline interpolators
  • Compute present value of cashflows
  • Compute first and second order derivatives using Automatic/algorithmic Differentiation.
  • Script using Ravi - a derivative of Lua programming language
  • New! Script using Python - see PyRedukti for details.
  • New! gRPC server implementation enables access from multiple programming languages.

Background

OpenRedukti is part of the MyCCP product that is being developed by REDUKTI LIMITED.

The main differences between the Open Source release and the proprietary version used in MyCCP are:

  • Only the core C++ pricing library has been released
  • The functionality for generating cashflows from FpML trades has not been released as this is fine tuned for the needs of MyCCP
  • The Limit Checker and VaR Calculator have not been released
  • The MyCCP front-end and middle tier components, written in C#, have not been released as these are very specific to requirements of a CCP.

For further details of the full scope of the MyCCP product, please visit Redukti.Com.

Documentation

See redukti.github.io.

Ackowledgements

OpenRedukti gratefully acknowledges ideas and code it is using from other projects.

You can’t perform that action at this time.