Web Development

Web API For Custom Financial Trading Apps

By Adrian Bridgwater, July 31, 2014

IG Labs to give traders more control over the way they trade

Financial services software developers may be interested in the new IG Labs offering that gives traders access to the firm’s web API to enable them to develop their own trading applications that best suit how they like to trade.

By releasing its web application-programming interface, the firm says that institutions, brokers, individual traders, and developers can now automate trades, build integrations, and create trading apps that use the firm’s spread betting and CFD technology.

Head of IT Development at IG Ivan Gowan explains that the IG Trading API follows the REST principles for good use of the HTTP specification to define standard HTTP operations on defined entities; i.e., trades, positions, “watch-lists”, and markets.

Speaking to Dr. Dobb’s directly, Gowan said, “IG has provided a web based companion app to help developers explore the API request headers, body, and response headers and body for each call available in the REST API. This is a powerful way for developers to debug issues they experience while coding against the API. IG offers a streaming API to facilitate the requirement to push prices to clients in real time (sub-second). Both parts to the API do not impose a particular language on the developer, making it very flexible for people to integrate with.”

IG road tested the new service prior to launching at an internal codefest event where the tech team was given free rein to develop new projects with the API. The results demonstrate the potential benefits the firm’s technology offers traders. For example, the team developed an app that allows traders to balance positions across accounts and further apps that provided a live background which interact with the API to display market data as a graph as well as historical client sentiment.

The API is made up of two parts:

REST Trading API

Streaming API

As with standard REST API’s, the data is provided in JSON format and it is client programming language agnostic, meaning a developer can build their own trading system in their language of choice — .NET, Java, JavaScript, and Excel, to name a few.

It also means that the API can be accessed on the standard SSL port (443) and doesn’t require specific firewall access in order for a client to connect. IG has provided a feature-rich interactive Companion App to dynamically explore the API request and response details to help developers get started.

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task.
However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

This month's Dr. Dobb's Journal

This month,
Dr. Dobb's Journal is devoted to mobile programming. We introduce you to Apple's new Swift programming language, discuss the perils of being the third-most-popular mobile platform, revisit SQLite on Android
, and much more!