Skip to main content

Performance and risk analysis of financial portfolios with Python

Project description

PyPI Tests conda PyPI Coverage Status GitHub issues Discourse users Twitter Follow

pyfolio is a Python library for performance and risk analysis of financial portfolios that works well with the Zipline open source backtesting library.

Trading Strategy Analysis with pyfolio

At the core of pyfolio are various tear sheets that combine various individual plots and summary statistics to provide a comprehensive view of the performance of a trading algorithm.

Here's an example of a simple tear sheet analyzing a strategy executed with the Zipline backtesting engine:

Performance Metrics

The tear sheet presents performance and risk metrics for the strategy separately during the backtest and out-of-sample periods:

Performance Plots

In addition, it visualizes how several risk and return metrics behave over time:

Installation

To install pyfolio, run:

pip install pyfolio-reloaded

or

conda install -c ml4t pyfolio-reloaded

Development

For development, you may want to use a virtual environment to avoid dependency conflicts between pyfolio and other Python projects you have.

To get set up with a virtual env, run:

mkvirtualenv pyfolio

Next, clone this git repository and run python -m pip install .[all] and edit the library files directly.

Usage

A good way to get started is to run the pyfolio examples in a Jupyter notebook. To do this, you first want to start a Jupyter notebook server:

jupyter notebook

From the notebook list page, navigate to the pyfolio examples directory and open a notebook. Execute the code in a notebook cell by clicking on it and hitting Shift+Enter.

Questions?

If you find a bug, feel free to open an issue in this repository.

You can also join our community.

Support

Please open an issue for support.

Contributing

If you'd like to contribute, a great place to look is the issues marked with help-wanted.

For a list of core developers and outside collaborators, see the GitHub contributors list.

Project details


Download files

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

Source Distribution

pyfolio_reloaded-0.9.8.tar.gz (7.1 MB view details)

Uploaded Source

Built Distribution

pyfolio_reloaded-0.9.8-py3-none-any.whl (6.2 MB view details)

Uploaded Python 3

File details

Details for the file pyfolio_reloaded-0.9.8.tar.gz.

File metadata

  • Download URL: pyfolio_reloaded-0.9.8.tar.gz
  • Upload date:
  • Size: 7.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for pyfolio_reloaded-0.9.8.tar.gz
Algorithm Hash digest
SHA256 771ed93ec9e2ead408c421ce0a196acbd1288d1f286634689957334ec13105e9
MD5 0a19d332f80c1e56be8b549afbb5f3d6
BLAKE2b-256 e6b586052dc613d6cdd5dd9daac38f3ece6089028b32725f4aa52268ef1bea08

See more details on using hashes here.

File details

Details for the file pyfolio_reloaded-0.9.8-py3-none-any.whl.

File metadata

File hashes

Hashes for pyfolio_reloaded-0.9.8-py3-none-any.whl
Algorithm Hash digest
SHA256 1722ecead01d29867b7765353400d65759204a56a0e732a66880bd9f3e9090b5
MD5 681f93044faf61bcede6d5fad646e9ae
BLAKE2b-256 3c44617303159e6cd3ea4cb95d7744f6c5cb04fb3ebdae682956575e46782ebe

See more details on using hashes here.

Supported by

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