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++
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 license
BSD 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 finance
Mathematical 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
  • Options
    Option (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 option
      Asian option
      An 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 option
      Compound option
      Compound 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 option
      Lookback option
      Lookback 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
  • Bonds
    Bond valuation
    Bond 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 bond
      Convertible bond
      In 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 bond
      Zero coupon bond
      A 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 curve
    Yield curve
    In 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
    • Calendars
      Gregorian calendar
      The 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 methods
      Day count convention
      In 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...

  • Swaps
    • Asset swaps
    • BMA swaps
    • Year-on-year inflation swaps
    • Vanilla swaps
  • Quanto
    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 fixed rate...

    s
  • Currencies
    Currency
    In 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 curve
    Yield curve
    In 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 rate
    Interest rate
    An 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
  • Volatility
    Stochastic volatility
    Stochastic 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 methods
    Binomial options pricing model
    In 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 methods
    Finite difference methods for option pricing
    Finite 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 finance
    Mathematical 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...

  • List of finance topics#Financial markets
  • A Java reimplementation of QuantLib
    JQuantLib
    JQuantLib 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

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK