This repository provides a set of Python modules that implement modern portfolio methods. The modules can be used to collect price data, use goal-based advising techniques, analyze a portfolio for diversification, and visualize the efficient frontier of a portfolio.
To install the modules, simply clone the repository and run the following command:
(coming in release 1.0) pip install -e .
The modules in this repository can be used as follows:
To build a portfolio of assets using the Portfolio
class. The Portfolio
class can:
- get historical closing price data for assets
- analyze a portfolio for diversification, using the
correlation_report()
class method. - visualize the efficient frontier of a portfolio using the
show_efficient_frontier()
class method.
To use goal-based advising techniques, using the goals and riskevaluation modules.
The repository includes a number of examples in Jupyter notebooks that demonstrate how to use the modules. The examples can be found in the examples directory.
The documentation for the modules can be found in the docs directory. The documentation includes detailed descriptions of the functions and classes in the modules.
Contributions to this repository are welcome. To contribute, simply fork the repository and submit a pull request.
This repository is licensed under the MIT License.
This package uses the following packages:
- yfinance: https://pypi.org/project/yfinance/
- pypfopt: https://pypfopt.readthedocs.io/en/stable/