I develops quick, because UnRisk is often made in UnRisk and Mathematica.
A customer once pointedly asked: how can you deliver a new deal type with full valuation capabilities, before we get an inquiry answered by somebody else?
It is a dynamic process.
This is what we have achieved at the moment. The multi-language UnRiskverse that is not a Babylonian language confusion.
In lines of code:
- Act 1- C++: 650.000 representing the most sophisticated numerical schemes (that are not common in financial circles), like advanced assymptotic-math techniques, FE with streamline diffusion, regularization to do the inverse problem of calibration right, code that has been optimized for CUDA architectures, ..
- Act 2 - Mathematica: 200.000 for the treatment of deal types, portfolios, scenarios, VaR; valuation, analytics, visualization ..
- Act 3 - gridMathematica: a few lines of the built-in parallelization techniques
- Act 4 - SQL: 170.000 in combination with Mathematica's data base tool kit and Java
- Act 5 and 6 - 400.000 lines in web-supporting languages (Java, Java Server pages, XML, ....) web-enabling Mathematica
Isn't it horrible to test in such a hybrid environment?
No, we are producing Mathematica Notebook Logs from any action automatically and re-feed them in test and support cases.
What is this architecture made for? Number crunch in London, valuate in Singapore, back-test in NY. Access UnRisk from your desktop, laptop, iPad, ... UnRisk follows its user. Develop your own variants and systems with a bank-proof foundation and an intensively tested architecture.