We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Developing a real-time automated trading platform with Python

Formal Metadata

Title
Developing a real-time automated trading platform with Python
Title of Series
Part Number
111
Number of Parts
169
Author
License
CC Attribution - NonCommercial - ShareAlike 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor and the work or content is shared also in adapted form only under the conditions of this
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Miguel Sánchez de León Peque - Developing a real-time automated trading platform with Python Nowadays Python is the perfect environment for developing a real-time automated trading tool. In this talk we will discuss the development of: a general-purpose multiagent-system module using Pyro and ZeroMQ; a platform, based on it, for developing automated trading strategies using Numpy, Numba, Theano, etc.; and a GUI for visualizing real-time market data using PyQtGraph and Qt. ----- In OpenSistemas we have developed a general-purpose multi-agent system which is written in pure Python: *osBrain*. Agents communicate with each other using ZeroMQ, allowing the user to define different communication patterns based on their needs. Based on this multi-agent system, we have also developed a broker- independent platform for real-time automated trading: *osMarkets*. This platform implements specialized agents: - **Feeder** is an agent which receives real-time data from the broker. - **Router** is an agent which receives data from feeders. It manages the historical data and distributes updates to all the subscribed agents in the network. - **Brain** is the most common agent. It receives data from router or from other brains and processes them, sending the results to other brains or sending orders to be executed. Brains can make use of many useful packages avilable in the Python ecosystem: NumPy, SciPy, Numba, Theano... - **Trader** is an agent which is designed to interact with the broker, just as the feeder, but to execute market orders. While it is still in its earliest stages, we are developing a tool for real-time visualization of trading strategies using PyQtGraph. This tool acts as an agent in the multi-agent system.