National Stock Exchange (NSE), set up in 1992, is one of India’s leading stock exchanges. It provides a modern, fully automated screen – based electronic trading system which offers easy trading facility to the investors across the country. On an average, National stock exchange carries out 8-9 million transactions everyday.
NSE’s Equities Trading System was an application written in an older generation programming language over a proprietary operating system with an in-memory file system. However, due to the legacy design and programming language NSE had not been able to take advantage of the recent technological breakthroughs to provide superior customer experience.
“The cost of maitainence of our legacy hardware and application was high. Also, the application did not support multiple servers,” says G.M Shenoy, CTO, NSE.
Also, latency period, or the time taken between taking an order and getting a response, was high. As stock trading is a highly dynamic activity, where share prices change every minute, high latency period had a negative impact on NSE's business.
Consequently Shenoy and his team had to redesign the whole IT infrastructure. The objective of the project included addressing technology obsolescence, capacity enhancement, performance improvement, architecture standardization and cost reduction.
The new standardized IT architecture had to address cost, scalability and performance. “It required meticulous planning, flawless execution and impeccable team work involving internal and external teams. Internal team comprised of delivery managers, project managers, technical leads, and a separate team for architecture design. External team comprised of IT vendors who did coding and testing,” says Shenoy.
At the same time Shenoy and his team also had to re-write the trading application to support multiple servers. “At present, we have 40 Linux servers which can be easily scaled. The system is horizontally scalable as we can add more servers whenever needed and vertically scalable because we can add servers of higher specification,” says Shenoy.
Post implementation of the project NSE has brought down latency period from many milliseconds to 150 microseconds. Also, with this project, NSE has seen 60 times improvement in performance along with ten fold increase in order processing rate. NSE is now capable of carrying out more than 12 million transactions a day.