Does anyone know of a current QuantLib implementation that can run on Mathematica version 10.3.0 (or higher) for Mac OS X x86 (64-bit)?
The QuantLib project is aimed at providing a comprehensive software framework for quantitative finance. QuantLib is a free/open-source library for modeling, trading, and risk management in real-life.
QuantLib is written in C++ with a clean object model, and is then exported to different languages such as C#, Objective Caml, Java, Perl, Python, GNU R, Ruby, and Scheme.
An AAD-enabled version is also available. The reposit project facilitates deployment of object libraries to end user platforms and is used to generate QuantLibXL, an Excel addin for QuantLib, and QuantLibAddin, QuantLib addins for other platforms such as LibreOffice Calc.
Bindings to other languages and porting to Gnumeric, Matlab/Octave, S-PLUS/R, Mathematica, COM/CORBA/SOAP architectures, FpML, are under consideration.
Certainly recent additions to Mathematica in
Financial Derivative and
FinancialBond have added to its functionality, but Mathematica just doesn't have the extensive built-in support for sophisticated quantitative engineering that one can get with something like MATLAB's Financial Instrument's Toolbox (granted its an add-on, but I REALLY wish Wolfram would consider not ceding this professional application to MATLAB).
One does find hints of things...
Thomas Weber has a Mathematica implementation at Weber and Partner, but it only appears to run on Windows.
He has a nice Financial Modeling with Mathematica and QuantLib presentation at a Wolfram Technology Conference which just teases Mac users ;-(
Niels Elken Sønderby has a page for a QuantLib Mathematica project QuantLibMma but it does not appear to have developed beyond 2003 or so.
J. Robert Buchanan, Department of Mathematics Millersville University (circa 2008) has a presentation entitled Integrating QuantLib and Mathematica but doesn't go much beyond:
- Create source code for external function (C/C++/FORTRAN/Java).
- Compile source code with an interface “stub” which specifies how Mathematica expressions will be communicated to the external function.
- Load the external routine into a running Mathematica kernel.
- Evaluate the function as if it were a native function.
This might work, but I haven't knocked around with (C/C++/FORTRAN/Java) in over a decade. I'll try to email him and see if anything developed.
Happy to pursue/try this. If anyone has experience doing this I'd appreciate hearing about it.