Summary: | Financial derivatives play significant role in an investor's success.
Financial option is one form of derivatives.
Option pricing is one of the challenging and fundamental
problems of computational finance. Due to highly volatile and dynamic market
conditions, there are no closed form solutions available except
for simple styles of options such as, European options.
Due to the complex nature of the governing mathematics, several
numerical approaches have been proposed in the past to price American style and
other complex options approximately.
Bio-inspired and nature-inspired algorithms have been considered for
solving large, dynamic and complex scientific and engineering problems.
These algorithms are inspired by techniques developed by the insect
societies for their own survival. Nature-inspired algorithms, in particular,
have gained prominence in real world optimization problems such as in mobile ad hoc
networks. The option pricing problem fits very well into this category
of problems due to the ad hoc nature of the market. Particle swarm
optimization (PSO) is one of the novel global search algorithms based
on a class of nature-inspired techniques known as swarm intelligence.
In this research, we have designed a sequential PSO based option pricing algorithm
using basic principles of PSO. The algorithm is applicable for both
European and American options, and handles both constant and variable volatility.
We show that our results for European options compare well with
Black-Scholes-Merton formula.
Since it is very important and critical to lock-in profit making opportunities in
the real market, we have also designed and developed parallel algorithm to expedite
the computing process.
We evaluate the performance of our algorithm on a cluster of
multicore machines that supports three different architectures: shared memory,
distributed memory, and a hybrid architectures.
We conclude that for a shared memory
architecture or a hybrid architecture, one-to-one mapping
of particles to processors is recommended for performance
speedup. We get a speedup of 20 on a cluster of four nodes
with 8 dual-core processors per node.
|