Skip to content
All library documents

Choosing .NET and C++ Libraries for Quantitative Options Research

Article Quant Q&A · Author: user3131

Summary

The discussion considers statistical and numerical software for options statistical arbitrage, with needs including regression and optimization and priorities such as speed, usability, and compatibility with C# and C++. One answer lists managed .NET and C++ libraries that could be used directly or wrapped for access from .NET, and notes that linking to Matlab or R is another possibility whose performance depends on the integration. A second answer briefly suggests Python and convex optimization tools.

These are recommendations rather than a benchmark or technical comparison. The replies provide no measured speed results, feature evaluation, or guidance on licensing and maintenance, and one contains broad language performance claims that are not substantiated in the document. The package suggestions reflect the time and context of the discussion, so current support and suitability for a specific research workflow would need separate assessment.

Key ideas

  • Regression and optimization are identified as core needs for options statistical arbitrage research.
  • The answers suggest considering .NET libraries and C++ libraries that can be wrapped for use from .NET.
  • Matlab or R integration is presented as an option whose performance depends on how the connection is implemented.
  • The competing recommendations are opinions and include no controlled speed or functionality comparisons.

Tags

Full text
# .NET statistical packages recommendation


# .NET statistical packages recommendation












What open source or commercial .NET statistical package would you guys recommend? I am doing statistical arbitrage in options. The functions I need mainly are regressions, optimizations..etc. It would be better if the package has some built-in functions specifically for options, but it's fine if it doesn't. Quality, speed, easy-to-do of statistical analysis, good compatibility with C++/C# are my priorities.

## Answer by Matt Wolf (score 4)

https://quant.stackexchange.com/a/4370

Not sure why Python is recommended when you clearly ask for a .Net solution (well you may look at IronPython but I do not recommend it given there are much better options, see below), aside the fact that Python is horribly slow even when performing non-mission-critical data analysis and research. Even C# easily runs circles around most python scripts, given your coding skills are average or better. I understand its the language of choice aside Matlab and R by most quants, mostly because they have a standardized approach in terms of access to data sets, and anyway the language is most often dictated by the trading desk or head quant which means its not necessarily the most optimal choice.

I would recommend you to look at the following for managed C# or otherwise C++ implementation. You can run both in .Net and if not directly you could wrap C++ code in order to have access through a library (following is not in the order of significance):

http://www.boost.org/

http://root.cern.ch/drupal/

http://www.mathdotnet.com/

https://rtmath.net/products/finmath/

http://www.alglib.net/

And here you get another host of packages: http://en.wikipedia.org/wiki/List_of_numerical_libraries#C.2B.2B (not all come with statistical tools and may focus on math, but I included the link as its a comprehensive source of packages)

You can also directly link to Matlab or R out of .Net but again I would argue it will be at the expense of speed given how you implement the link. A raw library will always serve you the best in terms of performance given it offers the algorithms you look for.

Good luck. Hope this helps.

## Answer by Clebson Derivan (score 0)

https://quant.stackexchange.com/a/4362

Python is really a good idea. You could even optimize it with PyPy for better performance.

Python Software for Convex Optimization

PyPy Status Blog

But if you really like C++ try this

But it is just my opinion.

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.