All Projects → yazanobeidi → flow

yazanobeidi / flow

Licence: Apache-2.0 license
High frequency AI based algorithmic trading module.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to flow

Qtrader
Reinforcement Learning for Portfolio Management
Stars: ✭ 363 (+536.84%)
Mutual labels:  q-learning, algorithmic-trading
catalyst
An Algorithmic Trading Library for Crypto-Assets in Python
Stars: ✭ 2,364 (+4047.37%)
Mutual labels:  algorithmic-trading
Warehouse Robot Path Planning
A multi agent path planning solution under a warehouse scenario using Q learning and transfer learning.🤖️
Stars: ✭ 59 (+3.51%)
Mutual labels:  q-learning
roq-samples
How to use the Roq C++20 API for Live Cryptocurrency Algorithmic and High-Frequency Trading as well as for Back-Testing and Historical Simulation
Stars: ✭ 119 (+108.77%)
Mutual labels:  algorithmic-trading
marley
A framework for multi-agent reinforcement learning.
Stars: ✭ 261 (+357.89%)
Mutual labels:  q-learning
py-investment
Extensible Algo-Trading Python Package.
Stars: ✭ 19 (-66.67%)
Mutual labels:  algorithmic-trading
tictactoe-reinforcement-learning
Train a tic-tac-toe agent using reinforcement learning.
Stars: ✭ 36 (-36.84%)
Mutual labels:  q-learning
quick trade
convenient script for trading with python.
Stars: ✭ 63 (+10.53%)
Mutual labels:  algorithmic-trading
VREP-RL-bot
Reinforcement Learning in Vrep
Stars: ✭ 14 (-75.44%)
Mutual labels:  q-learning
URT
Fast Unit Root Tests and OLS regression in C++ with wrappers for R and Python
Stars: ✭ 70 (+22.81%)
Mutual labels:  algorithmic-trading
java-reinforcement-learning
Package provides java implementation of reinforcement learning algorithms such Q-Learn, R-Learn, SARSA, Actor-Critic
Stars: ✭ 90 (+57.89%)
Mutual labels:  q-learning
Algorithmic-Trading
Algorithmic trading using machine learning.
Stars: ✭ 102 (+78.95%)
Mutual labels:  algorithmic-trading
fin
finance
Stars: ✭ 38 (-33.33%)
Mutual labels:  algorithmic-trading
portfoliolab
PortfolioLab is a python library that enables traders to take advantage of the latest portfolio optimisation algorithms used by professionals in the industry.
Stars: ✭ 104 (+82.46%)
Mutual labels:  algorithmic-trading
RL
Reinforcement Learning Demos
Stars: ✭ 66 (+15.79%)
Mutual labels:  q-learning
freqtrade-gym
A customized gym environment for developing and comparing reinforcement learning algorithms in crypto trading.
Stars: ✭ 192 (+236.84%)
Mutual labels:  algorithmic-trading
gobacktest
event-driven backtesting framework written in golang
Stars: ✭ 179 (+214.04%)
Mutual labels:  algorithmic-trading
algo-coin
Python library for algorithmic trading cryptocurrencies across multiple exchanges
Stars: ✭ 386 (+577.19%)
Mutual labels:  algorithmic-trading
sdoosa-algo-trade-python
Algo trade project in python
Stars: ✭ 320 (+461.4%)
Mutual labels:  algorithmic-trading
Chrome-Dino-Reinforcement-Learning
An RL implementation in Keras
Stars: ✭ 98 (+71.93%)
Mutual labels:  q-learning

Flow

Flow is a high frequency algorithmic trading module that uses machine learning to self regulate and self optimize for maximum return.

The current approach uses a stack of financial indicators which is consumed by a Q-learning algorithm which determines an Agent's action at a given step in the stream of financial quotes.

Flow uses an idea called Scopes which is essentially a sampling of the time series quotes to discover trends along any sort of time interval. At every moment, the Supervisor ensures there is at least one Agent per scope looking for an opportunity to make a profitable trade.

Currently trades CAD/USD from quotes taken from January 2016. A fork that actually ties into a trading platform practice account has also been developed - this fork actually makes a profit before accounting for spread.

Installation

  1. Clone the project:

    $ git clone https://github.com/yazanobeidi/flow.git && cd flow

  2. Pip-install dependencies. For example using a virtualenv:

    $ virtualenv env && source env/bin/activate && pip install -r requirements.txt

Usage

  1. To live stream transactions, open a second terminal window and:

    $ tail -f -n 40 logs/bankroll.log

  2. Now to run Flow, back to the first tab:

    $ python python/executive.py

  3. The simulation should begin to run.

Contributing

  1. Fork it
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request

Authors

Yazan Obeidi

Matthew Robichaud

Contributors

Micheal Broughton

Copyright

2016, Yazan Obeidi

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].