QuantLib
   HOME

TheInfoList



OR:

QuantLib is an open-source software library which provides tools for software developers and practitioners interested in
financial instrument Financial instruments are monetary contracts between parties. They can be created, traded, modified and settled. They can be cash (currency), evidence of an ownership interest in an entity or a contractual right to receive or deliver in the form ...
valuation and related subjects. QuantLib is written in
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
.


History

The QuantLib project was started by a few
quantitative analyst Quantitative may refer to: * Quantitative research, scientific investigation of quantitative properties * Quantitative analysis (disambiguation) * Quantitative verse, a metrical system in poetry * Statistics, also known as quantitative analysis ...
s who worked at RiskMap (currently StatPro Italia). The first e-mail announcing QuantLib to the world was sent on December 11, 2000, and signed by Ferdinando Ametrano, Luigi Ballabio and Marco Marchioro. RiskMap was founded by Dario Cintioli, Ferdinando Ametrano, Luigi Ballabio, Adolfo Benin, and Marco Marchioro. The people at RiskMap faced the problem, not for the first time in their life, to build a financial library from scratch. It was Ferdinando's idea to build an open source library that could be used by quants all over the world when starting to build a new quantitative library. Currently, the QuantLib project is headed by Luigi Ballabio and Ferdinando Ametrano.


Release History


Usage

QuantLib is available as
C++ C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
source code which is compiled into a library. It is known to work on
Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
,
Mac OS X macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac (computer), Mac computers. Within the market of ...
,
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which ...
and other Unix-like operation systems. It can be linked with other languages via
SWIG The Simplified Wrapper and Interface Generator (SWIG) is an open-source software tool used to connect computer programs or libraries written in C or C++ with scripting languages such as Lua, Perl, PHP, Python, R, Ruby, Tcl, and other language ...
. The
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
binding can be installed via pip; the "RQuantLib" package makes parts of QuantLib accessible from R. Much of QuantLib's functionality can be used in Excel via the add-i
QuantlibXL


Licensing

QuantLib is released under a modified
BSD license BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD lic ...
known as the XFree86-type license. It is GPL compatible.


Features

The software provides various facilities for computing values of financial instruments and related calculations. It is a major example of
Mathematical finance Mathematical finance, also known as quantitative finance and financial mathematics, is a field of applied mathematics, concerned with mathematical modeling of financial markets. In general, there exist two separate branches of finance that require ...
. Its main use is in quantitative analysis. The
financial instrument Financial instruments are monetary contracts between parties. They can be created, traded, modified and settled. They can be cash (currency), evidence of an ownership interest in an entity or a contractual right to receive or deliver in the form ...
s and
derivatives The derivative of a function is the rate of change of the function's output relative to its input value. Derivative may also refer to: In mathematics and economics * Brzozowski derivative in the theory of formal languages * Formal derivative, an ...
it can evaluate include * Options **
Asian option An Asian option (or ''average value'' option) is a special type of option contract. For Asian options the payoff is determined by the average underlying price over some pre-set period of time. This is different from the case of the usual European op ...
s **
Basket option A basket option is a financial derivative, more specifically an exotic option, whose underlying is a weighted sum or average of different assets that have been grouped together in a basket. A basket option is similar to an index option, where a nu ...
s **
Cliquet option A cliquet option or ratchet option is an exotic option consisting of a series of consecutive forward start options. The first is active immediately. The second becomes active when the first expires, etc. Each option is struck at-the-money when it ...
s **
Compound option A compound option or split-fee option is an option on an option. The exercise payoff of a compound option involves the value of another option. A compound option then has two expiration dates and two strike prices. Usually, compounded options are ...
s ** Digital options **
Lookback option Lookback options, in the terminology of finance, are a type of exotic option with path dependency, among many other kind of options. The payoff depends on the optimal (maximum or minimum) underlying asset's price occurring over the life of the opt ...
s ** Vanilla options * Bonds ** Amortizing bonds **
Convertible bond In finance, a convertible bond or convertible note or convertible debt (or a convertible debenture if it has a maturity of greater than 10 years) is a type of bond that the holder can convert into a specified number of shares of common stock in ...
s ** Fixed rate bonds ** Floating rate bonds **
Zero-coupon bond A zero coupon bond (also discount bond or deep discount bond) is a bond in which the face value is repaid at the time of maturity. Unlike regular bonds, it does not make periodic interest payments or have so-called coupons, hence the term zero ...
s *
Yield curve In finance, the yield curve is a graph which depicts how the yields on debt instruments - such as bonds - vary as a function of their years remaining to maturity. Typically, the graph's horizontal or x-axis is a time line of months or ye ...
*Date calculations **
Calendars A calendar is a system of organizing days. This is done by giving names to periods of time, typically days, weeks, months and years. A date is the designation of a single and specific day within such a system. A calendar is also a physi ...
** Date calculations ** Day counting methods * Swaps ** Asset swaps ** BMA swaps ** Year-on-year inflation swaps ** Vanilla swaps *
Quanto A quanto is a type of derivative in which the underlying is denominated in one currency, but the instrument itself is settled in another currency at some rate. Such products are attractive for speculators and investors who wish to have exposure to a ...
s *
Currencies A currency, "in circulation", from la, currens, -entis, literally meaning "running" or "traversing" is a standardization of money in any form, in use or circulation as a medium of exchange, for example banknotes and coins. A more general def ...
It has models for *
Yield curve In finance, the yield curve is a graph which depicts how the yields on debt instruments - such as bonds - vary as a function of their years remaining to maturity. Typically, the graph's horizontal or x-axis is a time line of months or ye ...
s *
Interest rate An interest rate is the amount of interest due per period, as a proportion of the amount lent, deposited, or borrowed (called the principal sum). The total interest on an amount lent or borrowed depends on the principal sum, the interest rate, th ...
s * Volatility It can compute derivative prices using methods including: * Analytic formulae * Tree methods *
Finite difference methods In numerical analysis, finite-difference methods (FDM) are a class of numerical techniques for solving differential equations by approximating Derivative, derivatives with Finite difference approximation, finite differences. Both the spatial dom ...
*
Monte Carlo methods Monte Carlo methods, or Monte Carlo experiments, are a broad class of computational algorithms that rely on repeated random sampling to obtain numerical results. The underlying concept is to use randomness to solve problems that might be determini ...


See also

*
Mathematical finance Mathematical finance, also known as quantitative finance and financial mathematics, is a field of applied mathematics, concerned with mathematical modeling of financial markets. In general, there exist two separate branches of finance that require ...
* List of finance topics#Financial markets


References

{{Reflist


External links


QuantLib homepage

Is QuantLib over engineered?


Free computer libraries Mathematical finance Free software programmed in C++