Algorithmic Intraday Stock Trading System – Stock Trading Bot

SaaS system for automated intraday stock trading, allowing investors to connect their brokerage accounts and configure a robot to trade stocks from their accounts automatically, for a commission and subscription fee.

Industries
Technologies / Platforms

Client’s request

 

The client is a wealth management company with 20 years of experience and a proprietary active stock trading strategy. The client wanted to digitize their business to increase their customer base, increase profits from trading, and decrease the cost of operations by creating a SaaS system that would automate trading strategy and operations. The client contracted Itexus for the system’s development because they were impressed with our expertise in the financial/stock markets, which gave us the ability to easily grasp complicated financial requirements and commit to a very aggressive deadline (3 months to create and launch the MVP). A holistic approach to software architecture and experience with real-time, high-load applications were other crucial factors in choosing Itexus as a development partner.

Engagement model

 

Fixed Price for the MVP stage, Agile/Scrum for other stages

Solution

Web Application

Effort and Duration

3 months to create and launch the MVP

Project Team

3 Developers, 1 Business Analyst, 2 QA Engineers, 1 Project Manager

Tech stack / Platforms

Solution Overview

The system allows users to register and connect their brokerage accounts, configure the trading strategy’s parameters (buying power, leverage, risk level, etc.), run automated trading from their brokerage accounts, monitor trades in real time, and review profit/loss reports. For this, they pay our client a commission fee and a percentage of the generated profit. The system uses technical analysis to generate forecasts for certain stocks for the next trading session, opens short and long positions according to the forecasts, monitors real-time execution in accordance with complex rules, closes the positions that don’t perform properly, and fixes profits at the end of each trading session. Algorithmic Intraday Stock Trading System

Development Process

The project started with a fixed scope/fixed price/waterfall phase with a very aggressive deadline: the system had to be live in 4 months because of the tight end-client constraint. To meet the deadline, the Itexus team worked on the requirements specification in conjunction with the implementation of the system. When the system itself was implemented and the stabilization phase started, the Client notified us that because of heightened consumer interest, they wanted to go live a few weeks earlier than the previously established deadline – in time for the first trading session of the new year (January 1, 2018). The Itexus team emphatically reacted to the client’s request, going so far as to conduct system stabilization and real funds testing on New Year’s Eve.  As a result, the product was released on time, live and ready to go on January 1, on the NYSE and NASDAQ.  Once the first version of the system was completed and live, the team switched to Kanban to support it and deliver new functionality and updates.

Third-Party Integrations

algorithmic intraday stock trading system - third-party integrations

  • NYSE is a publicly traded company that provides a platform for its members to conduct trades, i.e. buying and selling shares of companies. This product integrates orders and trades sequentially, providing a more deterministic and transparent view of the order book and related activities.
  • NASDAQ is a trading network that relies on multiple market makers — broker-dealers that are members of this exchange. Real-time data provided through the Nasdaq Information Interface Service includes price information and reference data from vendors, trading calendars for multiple markets, trade capture from multiple marketplaces, corporate action data from multiple vendors, etc.
  • Interactive Brokers is a direct market access broker that provides execution, clearing, settlement and prime brokerage for clients, including securities and commodities brokerage. They allow users to trade stocks, options, futures, and ETFs around the world through a single account and provide real-time account balances and portfolio monitoring.

Technical Solution Highlights

The architecture of the system is defined by very high performance requirements. Trading opportunities may appear and disappear in a fraction of a second, so the system has to process massive volumes of data simultaneously to react the market events in real time.

Technology Stack and Components

Microsoft .NET, C# and Microsoft Azure, and SQL Server were selected as a mature, well-supported, enterprise-grade technology stack. React.js and SignalR were chosen to implement a rich, real-time web interface into the system. Open-source QuantConnect/Lean Engine component was used to reduce the cost and time-to-market factors. It features powerful adapters and connectors, which provide for simple implementation of trading algorithms, backtesting, and connection to the broker API. Interactive Brokers’ API and Gateway were used to process live trading data and send trading orders to the market.

Low Latency Data Processing

The system experiences its peak load in the first initial seconds of the trading session when large volumes of data have to be processed, all positions must be opened at the right price, and trading orders should arrive in the brokerage account before the price changes. To ensure quasi-real-time performance, the system uses parallel computation in multiple threads with asynchronous event processing queues to fully utilize multi-core, multi-processor server instances.

Horizontal Scalability

The system is able to automatically fire up additional server instances as the number of accounts and the volume of data increases.

Real-time UI

The admin interface of the system has detailed, real-time charts and alerts (with current prices, statuses of trades, etc.) which allows the administrator to monitor the trading session in real time and manually close the position in case of an emergency. The interface features the implemented SignalR library, which allows server code to send asynchronous notifications to client-side web applications.

Automated Testing and Broker API Emulation

To allow for automated testing of the application, our team created a Broker API emulator that allowed us to record and play back the trading session for selected securities. This was done because the Interactive Brokers’ paper trading account limitations only allow app tests once a day in parallel with the real trading session; a number of other peculiarities resulted in different system behaviors in paper trading and in live accounts.

Results

The first version of the platform was delivered in full compliance with the specifications, in accordance with the client’s deadline. Just 3 months after the project began, the system was live and available to real end-clients trading with real money. The system significantly lowered operational costs associated with personnel, while simultaneously allowing total business capacity to increase, able to handle hundreds and potentially thousands of clients. The project is still ongoing, with Itexus providing support and maintenance services. Currently, we are also working on future versions of the system, which is evolving into an advanced wealth management and personal finance solution, where the active intraday trading module is just one of its components.

 
 

Contact Form

Drop us a line and we’ll get back to you shortly.

For Quick Inquiries

Offices

United States

8, The Green, STE road, Dover, DE 19901

Poland

Żurawia 6/12/lok 766, 00-503 Warszawa, Poland

Name
Company name
Phone number
Text
x