Skip to main content

A fast algorithmic trading platform with support for AI based strategies

Project description

roboquant logo

PyPI - Version PyPI - License PyPI - Python Version PyPI - Status GitHub Actions Workflow Status discord

Roboquant is an open-source algorithmic trading platform. It is flexible, user-friendly and completely free to use. It is designed for anyone serious about algo-trading.

So whether you are a beginning retail trader or an established trading firm, roboquant can help you to develop robust and fully automated trading strategies. You can find out more at roboquant.org.

Usage

The following code snippet shows the steps required to run a full back-test on a number of stocks.

import roboquant as rq

feed = rq.feeds.YahooFeed("JPM", "IBM", "F", "TSLA")
strategy = rq.strategies.EMACrossover()
account = rq.run(feed, strategy)
print(account)

Install

Roboquant can be installed like most other Python packages, using tools like uv, pip or conda. Make sure you have Python version 3.12 or higher installed.

python3 -m pip install --upgrade roboquant

The core of roboquant limits the number of dependencies. But you can install roboquant including one or more of the optional dependencies if you require certain additional functionality:

# AI based strategies using PyTorch and SB3
python3 -m pip install --upgrade "roboquant[ai]"

# Integration with Interactive Brokers
python3 -m pip install --upgrade "roboquant[ibkr]"

# Integration with Alpaca broker
python3 -m pip install --upgrade "roboquant[alpaca]"

# Integration many crypto exchanges via CCXT package
python3 -m pip install --upgrade "roboquant[crypto]"

Building from source

Roboquant.py uses uv as the main tool for handling package dependencies.

uv sync --all-extras --dev

You should now be in the virtual environment and ready to build/install roboquant:

uv build
uv pip install .

Some other useful commands:

# build & validate the code
./bin/verify.sh

# publish, only works if UV_PUBLISH_TOKEN is set
./bin/publish.sh

License

Roboquant is made available under the Apache 2.0 license. You can read more about the Apache 2.0 license on this page: https://www.apache.org/licenses/LICENSE-2.0.html

Disclaimer

Absolutely no warranty is implied with this product. Use at your own risk. I provide no guarantee that it will be profitable, or that it won't lose all your money very quickly or does not contain bugs.

All financial trading offers the possibility of loss. Leveraged trading, may result in you losing all your money, and still owing more. Back tested results are no guarantee of future performance. I can take no responsibility for any losses caused by live trading using roboquant. Use at your own risk. I am not registered or authorised by any financial regulator.

Kotlin version

Next to this Python version of roboquant, there is also a Kotlin version available. Both share a similar API, just the used computer language is different. Which one to use depends very much on personal preferences, skills and usage.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

roboquant-2.3.4.tar.gz (734.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

roboquant-2.3.4-py3-none-any.whl (757.3 kB view details)

Uploaded Python 3

File details

Details for the file roboquant-2.3.4.tar.gz.

File metadata

  • Download URL: roboquant-2.3.4.tar.gz
  • Upload date:
  • Size: 734.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for roboquant-2.3.4.tar.gz
Algorithm Hash digest
SHA256 96aa8a7d58c9f74542df07d70b60da9a0212046b1d7cc0583c659cd3c8f81688
MD5 c25b9c8cc48c052b8541803d15ac5106
BLAKE2b-256 dbd29257b681fcefed017c9fa3381e7491dce299274dd788a7f64a1b0ea6e8ff

See more details on using hashes here.

File details

Details for the file roboquant-2.3.4-py3-none-any.whl.

File metadata

  • Download URL: roboquant-2.3.4-py3-none-any.whl
  • Upload date:
  • Size: 757.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for roboquant-2.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 52afac95aa918656d5c8e82a612c2d257b854c3a7ed29b4aa4b36f68a888535b
MD5 2e6e7017576b46ccc5837b9218d6ea2c
BLAKE2b-256 158ffcdf162e823bcef5e9c57348bc40b3e3290307fed605d61482f5fa6e7228

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page