Use Case – Smart Futures Trading System

null

From manual to autonomous trading, our client chose Protogenos to take his futures trading to the next level. We designed a system that he could securely login from and had support to upload custom trading algorithms; technology currently unavailable anywhere else in the market.

Our client could upload his sensitive algorithms safely and have them integrated into the trading system. Client can also upload custom training algorithms. Special metrics are logged in the database to determine which algorithm to use for the futures trading in order to produce the best results and make the highest profit.

Client can download system reports on the fly. Great for if something goes wrong and we need to go back in and take a look.

 

Client can disable strategies that exist on the system by toggling them from the menu. This is useful when the client wants to determine which algorithm produces better results without affecting the learning AI.

 

Consultation Early September 2016

We met with our customer personally to discover what their needs were for this project. Through careful questioning and planning, we were able to come up with a solution and costs.

Before writing any code for the system we began with a diagram detailing how each piece would work together. We had multiple diagrams to clarify how the network would behave, how the protocol needed to be written, and how the dynamic algorithm scripts needed to be integrated.

Proposals

Once we had a solid understanding for what it would take to build the system, we wrote proposals that would detail the costs and timeline. We worked with the customer to determine what was possible considering the project of this size and their budget.

Work Begins October 1st 2016

Our team send the hardware specifications for the servers to the customer who purchased them. We began implementing the database and wrote programs that could interface with the R | Trading Platform.

Continuous In-Person Meetups

We met with our customer as we closed in on significant milestones. This was a big project and we made sure everything was to specification. We met every other week in person the final few months.

Completed May 1st 2017

The futures trading server deployed and running, our customer was happily making money even when he slept! We delivered all passwords to the development server, database, and delivered the wiki that details build steps and the custom Python API.

The high level development model featuring the primary components needed in the futures trading system. We would build every component including the Client App.

This project was large, but nothing our team couldn’t handle. However our client depended on us for our software expertise and they had plans to scale the system later. They requested online documentation that could be followed with step-by-step instructions to build the project from source. It includes database table schemas, high-level overview, how to launch the server correctly, and finally the Python API that allows our client to upload scripts to be used as algorithms on-the-fly.

The Python API pages of the documentation provides function names and their use. It includes example scripts for future reference. By allowing the client to upload algorithms on-the-fly, the system becomes programmable, changing the way the system learns which algorithms are best.

The Python API features retrieving orders by fill type, by instrument, PnL, available balance, trades, etc. The API allows algorithms buy, sell, and determine how many open orders exist to name a few.

This system is intricate and feature-rich. If you would like to know more about building a similar product, contact us right now.

We delivered a python API reference so that our client could write algorithms without us.
Example strategy script

You need something similar

null

Featured in this project:

  • Futures Trading
  • Financial Data
  • Machine Learning
  • Algorithms
  • C++
  • Python Scripting
  • Programming API
  • Systems
  • Programmable Systems
  • Networking
  • Protocols
  • Security
  • Artificial Intelligence
  • Database
  • Desktop Applications
  • Linux
  • Windows