QuantWorks
QuantWorks is an event driven algorithmic trading framework. It is a fork of PyAlgoTrade (see Motivation).
QuantWorks provides a Python API for strategy authoring, backtesting, paper trading, and of course live trading via the Broker interface.
To get started using QuantWorks, please take a look at the original PyAlgoTrade tutorial and the full documentation.
Main Features
- Python 3 development
- Python 2 support is NOT guaranteed in any capacity.
- Event driven.
- Supports Market, Limit, Stop and StopLimit orders.
- Supports any type of time-series data in Pandas or CSV format (like Yahoo! Finance, Google Finance, Quandl and NinjaTrader), as well as database (i.e. sqlite).
- Technical indicators and filters like SMA, WMA, EMA, RSI, Bollinger Bands, Hurst exponent and others.
- Performance metrics like Sharpe ratio and drawdown analysis.
- Event profiler.
- TA-Lib integration.
Motivation
QuantWorks is a fork of PyAlgoTrade by @gbeced. This project aims to be:
- Modern: first-class Python 3 development (Python 2 is EOL as of 2020)
- Extensible: as a framework, robust extension support is a must, and we encourage users of QuantWorks to give back by publishing their extensions (see Extensions)
- Easy to Develop: state-of-the-art tooling (pytest, poetry, travis) and approachable design principles should make it easy for newcomers to contribute.
- Open: as a fork of an Apache 2.0 license project, QuantWorks maintains the spirit of FOSS development. CONTRIBUTING.md forthcoming
Development
QuantWorks is developed and tested using 3.7 and depends on:
- NumPy and SciPy.
- pytz.
- dateutil.
- requests.
- matplotlib for plotting support.
- ws4py for Bitstamp support.
- tornado for Bitstamp support.
- tweepy for Twitter support.
Developer ergonomics are provided by
- poetry
- pytest
- tox
- travis-ci
Extensions
- Bitstamp (bitcoin) live trading is implemented by the
quantworks-bitstamppackage (https://pypi.org/project/quantworks-bitcoin/) - Twitter real-time feeds are supported via the
quantworks-twitterpackage (https://pypi.org/project/quantworks-twitter/)
Metadata
Release files for quantworks 0.21
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| quantworks-0.21.tar.gz | 82.7 kB | Without provenance | Details for quantworks-0.21.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| quantworks-0.21-py3-none-any.whl | Python 3 | none | any | Details for quantworks-0.21-py3-none-any.whl |
Total release size: 233.2 kB
Release files / quantworks-0.21.tar.gz
| Download URL | quantworks-0.21.tar.gz |
|---|---|
| Size | 82.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d97941d41a8cddf010fc224381c0cd43c935e1936d705b27245242883231a1ac
|
|
BLAKE2b-256 checksum How to use checksums |
8b9ff163b576ee51f667f04a43b4e16d835663978f3d1aec58323524a52d5303
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.0.0 CPython/3.7.3 Darwin/18.2.0
|
Release files / quantworks-0.21-py3-none-any.whl
| Download URL | quantworks-0.21-py3-none-any.whl |
|---|---|
| Size | 150.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
40aa2834f143ee142a2f8337c110bec9382a0a4835ae126a964490536aa02374
|
|
BLAKE2b-256 checksum How to use checksums |
c5a1cf5e0055636ad5e6209a48ea21859ef6c3d0d60d9a90238895347bff0701
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.0.0 CPython/3.7.3 Darwin/18.2.0
|
Security for quantworks 0.21
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.