GithubHelp home page GithubHelp logo

compatibl / quantlibadjoint Goto Github PK

View Code? Open in Web Editor NEW
45.0 8.0 25.0 59.15 MB

QuantLib with adjoint algorithmic differentiation (AAD)

License: Other

CMake 0.01% C++ 98.93% Makefile 0.44% CSS 0.01% HTML 0.01% M4 0.11% Shell 0.01% C 0.50% Batchfile 0.01%

quantlibadjoint's Introduction

QuantLibAdjoint

QuantLibAdjoint implements adjoint algorithmic differentiation (AAD) in QuantLib using TapeScript, an open source (Apache license) C++ library with support for scalar and vector AAD.

QuantLibAdjoint repository is a fork of the master QuantLib repository located at github.com/lballabio/QuantLib.

QuantLib, QuantLibAdjoint, and TapeScript are Non-Copylefted Free Software and OSI Certified Open Source Software.

The QuantLib project (http://quantlib.org) is aimed at providing a comprehensive software framework for quantitative finance. QuantLib is a free/open-source library for modeling, trading, and risk management in real-life.

Bugs can be reported at https://github.com/compatibl/QuantLibAdjoint/issues; if you have a patch for a bugfix or new feature, you can open a pull request instead.

TapeScript

TapeScript is an open source library for adjoint algorithmic differentiation (AAD) developed and maintained by CompatibL. It can be downloaded from github.com/compatibl/tapescript and used free of charge in academic or commercial applications.

TapeScript supports vector AAD (tape compression), an approach in which each slot of the calculation record (AAD tape) can store not only a single double number, but also an entire array of values. Vector AAD can lead to performance gain of several orders of magnitude due to the reduction of tape size.

TapeScript features:

  • Scalar AAD
  • Vector AAD (tape compression)
  • APIs for C++, C#, and Java
  • Complex numbers
  • Works with Boost and QuantLib
  • Multithreading support

About CompatibL

CompatibL offers turnkey solutions for XVA and regulatory capital as well as custom development, integration, and consultancy.

Check out TapeLib, CompatibL's product suite for AAD that incorporates:

  • A C++ library extending TapeScript with features specific to quantitative finance
  • An application platform for interactive AAD

TapeLib features:

  • Document database preserving AAD data
  • Tape database
  • Finance-specific atomics including adjointable AMC
  • User defined atomics
  • Tape cutting and splicing
  • Parallel tape execution
  • Specialized gate checking API
  • Excel addin, desktop and client

quantlibadjoint's People

Contributors

andres-hernandez avatar aradicchi avatar bernd8 avatar bgc-nglass avatar compatibl avatar eddelbuettel avatar garykennedy avatar gpazmandi avatar igitur avatar japari avatar joequant avatar jrvarma avatar jschnetm avatar klausspanderen avatar lballabio avatar maddazanzi avatar maksqwe avatar maksym-studenets avatar marosaci avatar masrtis avatar mattpd avatar mdriesch avatar nesteruk avatar pcaspers avatar pmazzocchi avatar quanttiger avatar rglarix avatar scchess avatar simon-sql avatar wegamekinglc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.