Cutting Edge Touch Screen Technology Accelerates Stock Trading
Trading communication market leader IPC created revolutionary dealer boards by using the Qt software library
Stock exchanges are some of the most stressful working environments where shares worth millions of Euros/Dollars are traded within milliseconds. Naturally, brokers and stock traders rely on state-of-the-art communications and trading systems to ensure constant availability and reliability of information exchange for transactions.
IPC is a leading global provider of specialized communications solutions for the financial trading community. With a 100-percent focus on this sector and 40 years of expertise, IPC provides customers with integrated solutions that support traders and participants across the entire trade lifecycle. Unigy, IPC’s Unified Trading Communications solution, is the first and only system to offer a portfolio of devices and applications that serve the entire trading workflow, across the front, middle and back offices. IQ/MAX, IQ/MAX Edge and Pulse devices all utilize Qt.
Around ten years ago, IPC switched to embedded Linux and Qt on their turrets, with help from KDAB, the Qt Experts. The initial product was called IQ/MAX which helped name IPC “Best Trading Turret Provider” and “Best Trading Floor Communication System” 10 out of 11 years in the influential Water’s Ranking, with the latest win in 2014.
Multiple products based on the original IQ/MAX code base have been released to the market since its initial success. Most recently, Pulse, a touch screen device aimed at middle and back office staff that require the ability to quickly search and connect to traders on the trading floor.
The user interface for this device has been modernized using Qt’s QML display technology, to meet today’s expectations. Despite the update of display technology and a slightly different focus (middle and back office staff instead of traders) major parts of the existing business logic could be carried over from the IQ/MAX business line, thanks to Qt’s strong C++ layer, and IPC’s well-designed code base.
Tim Potts, Director of Software Development at IPC, explains the choice of Qt, 10 years ago:
“When we selected embedded Linux as the platform for a new generation of trading turrets, we surveyed the options for building the UI. We found that Qt was the most fully featured, efficient, and well-supported option. It allowed us to write native applications that work directly with the frame buffer, without requiring the overhead of a virtual machine (like Java based solutions) or external window management framework (like X-Windows). It gave us a high level of abstraction most of the time, and the ability to get down to the bits and bytes when needed for performance.”
Tim Potts never regrets that choice and continues explaining the benefits of using Qt today: “We have a large code base using Qt that we have been able to port to several different products, through multiple different CPU architectures, many different C++ compiler versions, and 3 major versions of Qt itself!
The recent introduction of QML has enabled us to prototype and build new products much more rapidly. We have expanded our products from being button driven to touchscreen on Pulse very easily through the use of the Qt APIs.”
Qt, which is based on the programming language C++, allows for cross-platform programming of applications with graphical user interfaces (GUI). QML also permits non-developers such as UI- and Web designers to develop GUIs with the help of Qt. Qt has been employed successfully in various industrial branches. Infotainment systems in airplanes and cars, set top speakers, television sets, audio systems as well as domestic hardware from well-known companies such as Panasonic, Magneti-Marelli, LG, Free, Loewe or Netflix, all of which have been conceptualized with Qt.
Software developed with Qt can be implemented without switching between operating systems such as Windows, Linux and QNX. It can also be used with diverse microprocessors such as Intel or ARM. The flexibility of Qt and its’ ability to be used with different platforms, serves as an excellent mechanism to test individual progress continuously and to minimize potential errors.