Release 2.0.0rc4
Highlights
This release updates Zipline to be compatible with Python >= 3.7 as well as the current versions of relevant NumFOCUS libraries like Pandas, scikit-learn, and others.
- Conda packages for Zipline and key dependencies Bcolz and TA-Lib are now available for Python 3.7-3.9 on the
ml4t
Anaconda channel. - Binary wheels are available on PyPI for Linux ( Python 3.7-3.9) and MacOSx (3.7 and 3.8).
As part of the update, the BlazeLoader
functionality was removed. It was built on the Blaze Ecosystem. Unfortunately, the three relevant projects (Blaze, Odo, and datashape have received limited support over the last several years.
Other updates include:
- A new release for Bcolz which has been marked unmaintained since September 2020 by the author. The new release updates the underlying
c-blosc library from version 1.14 to the latest 1.21.0. There are also conda packages for Bcolz (see links above). - Networkx - used by Zipline to process the Pipeline Graph - now uses the better performing version 2.0.
- Conda packages for TA-Lib version 0.4.19.
This new release also makes it easier to load custom data sources into a Pipeline (such as the predictions of an ML model) when backtesting.
See the relevant examples in the Github repo of the book Machine Learning for Trading,, such as these ones.
Enhancements
custom_loader()
for custom Pipeline data- compatibility with the latest versions of Pandas, scikit-learn, and other relevant libraries.
Bug Fixes
- Numerous tests updates to accommodate recent Python and dependency versions.
Performance
- The latest blosc library may improve compression and I/O performance.
Maintenance and Refactorings
- Removed Python 2 support
Build
- All builds consolidated on GitHub Actions CI
Documentation
- Expanded with additional information on Pipeline and related DataLoaders