Skip to main content

MV Port is a Python package to perform Mean-Variance Analysis. It provides a Portfolio class with a variety of methods to help on your portfolio optimization tasks.

Project description

======================= Mean Variance Portfolio

.. image:: https://img.shields.io/pypi/v/mvport.svg :target: https://pypi.python.org/pypi/mvport

.. image:: https://github.com/condereis/mean-variance-portfolio/actions/workflows/python-app.yml/badge.svg :target: https://github.com/condereis/mean-variance-portfolio/actions/workflows/python-app.yml

.. image:: https://readthedocs.org/projects/mean-variance-portfolio/badge/?version=latest :target: https://mean-variance-portfolio.readthedocs.io/en/latest/?badge=latest :alt: Documentation Status

.. image:: https://pyup.io/repos/github/condereis/mean-variance-portfolio/shield.svg :target: https://pyup.io/repos/github/condereis/mean-variance-portfolio/ :alt: Updates

MV Port is a Python package to perform Mean-Variance Analysis. It provides a Portfolio class with a variety of methods to help on your portfolio optimization tasks.

.. Modern portfolio theory (MPT), or mean-variance analysis, is a mathematical framework for assembling a portfolio of assets such that the expected return is maximized for a given level of risk. It is a formalization and extension of diversification in investing, the idea that owning different kinds of financial assets is less risky than owning only one type. Its key insight is that an asset's risk and return should not be assessed by itself, but by how it contributes to a portfolio's overall risk and return. It uses the variance of asset prices as a proxy for risk.

Features

  • Easy portfolio setup
  • Portfolio evaluation
  • Random portfolio allocation
  • Minimum Variance Portfolio optimization
  • Efficient Frontier evaluation
  • Tangency Portfolio for a given risk free return rate

Installation

To install MV Port, run this command in your terminal:

.. code:: bash

$ pip install mvport

Check here <https://mean-variance-portfolio.readthedocs.io/en/latest/installation.html>_ for further information on installation.

Basic Usage

Instantiate a portfolio and add some stock and evaluate it given a set of weights:

.. code:: python

>>> import mvport as mv
>>> p = mv.Portfolio()
>>> p.add_stock('AAPL', [.1,.2,.3])
>>> p.add_stock('AMZN', [.1,.3,.5])
>>> mean, variance, sharp_ratio, weights = p.evaluate([.5, .5])
>>> print '{} +- {}'.format(mean, variance)
0.25 +- 0.0225

Check here <https://mean-variance-portfolio.readthedocs.io/latest/usage.html>_ for further information on usage.

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

mvport-1.3.2.tar.gz (14.8 kB view hashes)

Uploaded Source

Built Distribution

mvport-1.3.2-py2.py3-none-any.whl (7.7 kB view hashes)

Uploaded Python 2 Python 3

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