Need help with vollib?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

166 Stars 42 Forks MIT License 21 Commits 0 Opened issues


Fundamentally a swig/python wrapper around Peter Jaeckel's lets_be_rational. lets_be_rational focuses exclusively on Black76, while Vollib extends this to add support for Black-Scholes and Black-Scholes-Merton.

Services available


Need anything else?

Contributors list


is a python library for calculating option prices, implied volatility and greeks. At its core is Peter Jäckel's source code for
, an extremely fast and accurate algorithm for obtaining Black's implied volatility from option prices.

Building on this solid foundation,

provides functions to calculate option prices, implied volatility and greeks using Black, Black-Scholes, and Black-Scholes-Merton.
implements both analytical and numerical greeks for each of the three pricing formulae.

About the initial release

This is the initial release of

. Tests and documentation are still incomplete.


was written in Python 2.7. It depends on the
package, a simple (SWIG) wrapper around Peter Jäckel's original C source code.

To install via pip, type the following:

>>> pip install vollib


via pip will automatically install the necessary dependencies, except for SWIG, pip, and Python. This has been tested to work on Windows, Linux and Macintosh OS X.

Python, pip and SWIG must be installed prior to installing


is quite stable compared to
, which is likely to be updated frequently.

For those who wish to clone the vollib repo, you might prefer to install

separately with pip, since this takes care of the C compilation.

About "Let's be Rational":

"Let's Be Rational" is a paper by Peter Jäckel showing "how Black's volatility can be implied from option prices with as little as two iterations to maximum attainable precision on standard (64 bit floating point) hardware for all possible inputs."

The paper is accompanied by the full C source code, which resides at

Copyright © 2013-2014 Peter Jäckel.

Permission to use, copy, modify, and distribute this software is freely granted, provided that this notice is preserved.

WARRANTY DISCLAIMER The Software is provided "as is" without warranty of any kind, either express or implied, including without limitation any implied warranties of condition, uninterrupted use, merchantability, fitness for a particular purpose, or non-infringement.


We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.