Financial Modelling and Simulation
In quantitative and technical analysis ever more complex and intensive models are used to improve the pricing of financial products. As the complexity increases the time it takes for a simulation to provide a result increases. Often accuracy is sacrificed to allow the model to give a result in a given time frame.
So how do we accelerate the models and increase their accuracy?
Through implementing parallel processing environments and running these across computer clusters (essentially supercomputers) both an increase in accuracy and speed is possible. However implementing systems to achieve this is not widely understood and can often be incorrectly deployed:
- Cost - An affordable, scalable hardware platform is essential
- Parallel Processing - Understanding how to parallelise applications for deployment on clusters
- Batch Processing - Certain applications by their nature are linear, these can still benefit from clusters.
- Interpreted Languages - Leveraging the simplicity of interpreted languages, but the benefits of parallel computing.
Ainkaboot specialises in providing high performance computing clusters to the financial industries, our focus is on providing a complete system which works out of the box and requires the minimum of understanding, but provides maximum performance. Allowing the developers to focus on the code.
Our consultants have experience in the financial industry and can assist both in selecting the most appropriate methodology for parallelising the applications and in deploying computing clusters for maximising performance of the models.
Suitable Models
Models particularly suited to parallelism are those which make use of loops. A common example is Monte-Carlo simulation which simulates numerous different paths a stock could take and averages over the paths to discover a result. The paths are independent of one another and require generation of large numbers of random numbers. These paths can be simulated simultaneously on different nodes and the result returned to the master node.
Custom Solutions
Some models will parallelise well others will not a short chat with a consultant should help you determine the most effective way of increasing an applications speed.
Resources for those interested in parallel processing for financial application
- MPI Cluster Architecture - MPI cluster architecture.
- Beowulf Supercomputers - A quick summary of supercomputers based on Linux.
- KlustOS Features - MPICH and other Message Passing environments.
External Links:
- An Introduction to Parallel Computing - An excellent article explaining the concepts of parallel computing by the Lawrence Livermore National Laboratory.
- MPI Tutorial - Also by the Lawrence Livermore National Labs.