Quantitative finance is a field of applied mathematics and statistics used to solve some of the complex problems in finance. Individuals who work in quantitative finance are called quantitative analysts or quants for short. Some of the problems solved by quants include: derivatives pricing, risk management, and quantitative trading (often implemented algorithmically a.k.a algorithmic trading). Quant software encompasses all of the tools which quants often use to assist them in solving these problems.
Quant Software for Trading
Quantitative trading is similar to counting cards in a game of Blackjack (21). Even though the order in which pairs of cards are dealt from a shuffled deck is random and the odds are in favour of the house, if we count the number of high and the number of low cards we may identify times when we are at an advantage. At which point it makes sense to throw more chips down. In the market context that is the time to either invest more or gear your returns. In other words, in the real world probabilities change, so even though the market is unpredictable and random; you can still identify factors which skew the odds in your favour. This is the central tenet of quantitative investing.
Quantopian.com is a website and hedge fund which allows users to backtest algorithmic trading strategies written in Python. Quantopian is associated with Interactive Brokers for paper trading.
Quantconnect.com allows it's users to backtest algorithmic trading strategies written in C# on U.S. and Foreign exchange markets. Quant Connect's algorithmic trading engine, LEAN, is now open source.
Quantmod is a package for R designed to assist quantitative traders develop, test, and deploy trading models. It is a rapid prototyping environment for those who prefer the R to Python or C#
- TheWholeStreet.com - having software to help you trade doesn't help if you don't have good trading strategies and ideas. TheWholeStreet is the best source of new information on quantitative finance, quantitative trading, and algorithmic trading. This information is sourced from more than 100 of the top quant blogs from around the net.
- Quantopian GitHub repository - this project provides complete open-source access to it's backtesting software (ZipLine) and other components of the Quantopian system.
- Quandl.com - Quandl provides access to millions of open source market data sets which can be integrated with Quantopian for trading purposes.
- QuantConnect GitHub repository - you will find access to their LEAN algorithmic trading architecture and other components of the Quant Connect system.
- R-Bloggers - an awesome R blog aggregation website. There are quite a few articles will relate to the use of QuantMod for quantitative trading.
Quant Software for Derivatives and Risk Management
A derivative is a contract which derives its value from the performance of some underlying security. Common underlyings include market indices, financial assets, interest rates, and volatility. Generally speaking derivatives are bought and sold either over the counter derivatives (OTC) or through an exchange or other intermediary. The price of an exchange traded derivatives is equal to the price they are being traded at in the market. Because over the counter derivatives are bought and sold directly between two parties, the fair price of the derivative must be computed using quantitative techniques. The following packages implement those techniques,
QuantLib is the original open-source pricing library. It is written in C++.
JQuantLib is a near-replica (not complete) of QuantLib writtern in Java not C++
OpenGamma is a fully-featured open source market risk management technology.
Maygard is an open-source valuation engine written in Java includes an API
Some other useful tools for quantitative and computational finance include,
- QuantCode - A directory of open source code for quantitative finance and trading. It includes many model implementations in various languages including C++ and VBA.
- RosettaCode - A wiki site containing code for some of the hardest quantitative programming tasks you will come across. I use this site all the time!
- NVidia Computational Finance Tools - NVidia has a number of tools to help quants unlock the power of their graphics cards for modelling and simulation.