
QuantLib
Encyclopedia
QuantLib is an open-source software library which provides tools for software developers interested in financial instrument valuation and related subjects. QuantLib is written in C++
.
source code which is compiled into a library. It is known to work on Linux
, Windows, Mac OS X
and other Unix-like operation systems.
It can be linked with other languages via SWIG
.
It can also be accessed in Microsoft Excel
via QuantLibXL.
known as the XFree86-type license. It is GPL compatible.
. Its main use is in quantitative analysis
.
The financial instruments and derivatives it can evaluate include
It has models for
It can compute derivative prices using methods including:
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
.
History
The QuantLib project was started by a few quantitative analysts who worked at Caboto Banca Intesa. They have now started a company called StatPro Italia. The QuantLib project is headed by Luigi Ballabio and Ferdinando (Nando) Ametrano.Release History
Version | Release date | Notes |
---|---|---|
0.1.1 | November 21, 2000 | |
0.2.0 | September 18, 2001 | |
0.3.4 | November 21, 2003. | |
0.3.7 | July 23, 2004. | From this release onwards QuantLib requires Boost. |
0.4.0 | February 20, 2007. | |
0.8.0 | May 30, 2007. | The jump in version history was to converge to 1.0 faster |
0.9.0 | December 24, 2007. | |
0.9.9 | November 2009. | |
1.0.0 | February 24, 2010 | |
1.0.1 | April 20, 2010 | |
1.1 | May 23, 2011 |
Usage
QuantLib is available as C++C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...
source code which is compiled into a library. It is known to work on Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
, Windows, Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
and other Unix-like operation systems.
It can be linked with other languages via SWIG
SWIG
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 languages like C#, Java, Modula-3, Objective Caml, Octave, and Scheme...
.
It can also be accessed in Microsoft Excel
Microsoft Excel
Microsoft Excel is a proprietary commercial spreadsheet application written and distributed by Microsoft for Microsoft Windows and Mac OS X. It features calculation, graphing tools, pivot tables, and a macro programming language called Visual Basic for Applications...
via QuantLibXL.
Licensing
QuantLib is released under a modified BSD licenseBSD licenses
BSD licenses are a family of permissive free software licenses. The original license was used for the Berkeley Software Distribution , a Unix-like operating system after which it is named....
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 financeMathematical finance
Mathematical finance is a field of applied mathematics, concerned with financial markets. The subject has a close relationship with the discipline of financial economics, which is concerned with much of the underlying theory. Generally, mathematical finance will derive and extend the mathematical...
. Its main use is in quantitative analysis
Quantitative analyst
A quantitative analyst is a person who works in finance using numerical or quantitative techniques. Similar work is done in most other modern industries, but the work is not always called quantitative analysis...
.
The financial instruments and derivatives it can evaluate include
- OptionsOption (finance)In finance, an option is a derivative financial instrument that specifies a contract between two parties for a future transaction on an asset at a reference price. The buyer of the option gains the right, but not the obligation, to engage in that transaction, while the seller incurs the...
- Asian optionAsian optionAn Asian 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...
s - Cliquet options
- Compound optionCompound optionCompound option or split-fee option is 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 used for currency or fixed income markets where...
s - Digital options
- Lookback optionLookback optionLookback options are a type of exotic option with path dependency, among many other kind of options. The payoff depends on the optimal underlying asset's price occurring over the life of the option. The option allows the holder to "look back" over time to determine the payoff...
s - Vanilla options
- Asian option
- BondsBond valuationBond valuation is the determination of the fair price of a bond. As with any security or capital investment, the theoretical fair value of a bond is the present value of the stream of cash flows it is expected to generate. Hence, the value of a bond is obtained by discounting the bond's expected...
- Amortizing bonds
- Convertible bondConvertible bondIn finance, a convertible note is a type of bond that the holder can convert into shares of common stock in the issuing company or cash of equal value, at an agreed-upon price. It is a hybrid security with debt- and equity-like features...
s - Fixed rate bonds
- Floating rate bonds
- Zero coupon bondZero coupon bondA zero-coupon bond is a bond bought at a price lower than its face value, with the face value repaid at the time of maturity. It does not make periodic interest payments, or have so-called "coupons," hence the term zero-coupon bond. When the bond reaches maturity, its investor receives its par ...
s
- Yield curveYield curveIn finance, the yield curve is the relation between the interest rate and the time to maturity, known as the "term", of the debt for a given borrower in a given currency. For example, the U.S. dollar interest rates paid on U.S...
- Date calculations
- CalendarsGregorian calendarThe Gregorian calendar, also known as the Western calendar, or Christian calendar, is the internationally accepted civil calendar. It was introduced by Pope Gregory XIII, after whom the calendar was named, by a decree signed on 24 February 1582, a papal bull known by its opening words Inter...
- Date calculations
- Day counting methodsDay count conventionIn finance, a day count convention determines how interest accrues over time for a variety of investments, including bonds, notes, loans, mortgages, medium-term notes, swaps, and forward rate agreements . This determines the amount transferred on interest payment dates, and also the calculation of...
- Calendars
- Swaps
- Asset swaps
- BMA swaps
- Year-on-year inflation swaps
- Vanilla swaps
- QuantoQuantoA 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 fixed rate...
s - CurrenciesCurrencyIn economics, currency refers to a generally accepted medium of exchange. These are usually the coins and banknotes of a particular government, which comprise the physical aspects of a nation's money supply...
It has models for
- Yield curveYield curveIn finance, the yield curve is the relation between the interest rate and the time to maturity, known as the "term", of the debt for a given borrower in a given currency. For example, the U.S. dollar interest rates paid on U.S...
s - Interest rateInterest rateAn interest rate is the rate at which interest is paid by a borrower for the use of money that they borrow from a lender. For example, a small company borrows capital from a bank to buy new assets for their business, and in return the lender receives interest at a predetermined interest rate for...
s - VolatilityStochastic volatilityStochastic volatility models are used in the field of mathematical finance to evaluate derivative securities, such as options. The name derives from the models' treatment of the underlying security's volatility as a random process, governed by state variables such as the price level of the...
It can compute derivative prices using methods including:
- Analytic formulae
- Tree methodsBinomial options pricing modelIn finance, the binomial options pricing model provides a generalizable numerical method for the valuation of options. The binomial model was first proposed by Cox, Ross and Rubinstein in 1979. Essentially, the model uses a “discrete-time” model of the varying price over time of the underlying...
- Finite difference methodsFinite difference methods for option pricingFinite difference methods for option pricing are numerical methods used in mathematical finance for the valuation of options. Finite difference methods were first applied to option pricing by Eduardo Schwartz in 1977....
- Monte Carlo methods
See also
- Mathematical financeMathematical financeMathematical finance is a field of applied mathematics, concerned with financial markets. The subject has a close relationship with the discipline of financial economics, which is concerned with much of the underlying theory. Generally, mathematical finance will derive and extend the mathematical...
- List of finance topics#Financial markets
- A Java reimplementation of QuantLibJQuantLibJQuantLib is an open-source software library which provides tools for software developers interested on financial instrument valuation and related subjects. JQuantLib is written in Java...
- QLNet a C# reimplementation of QuantLib