UsageΒΆ
To use Mean Variance Portfolio in a project:
.. code:: python
>>> import mvport as mv
Instantiate a portfolio and add some stocks:
>>> p = mv.Portfolio()
>>> p.add_stock('AAPL', [.1,.2,.3])
>>> p.add_stock('AMZN', [.1,.3,.5])
Evaluate a portfolio given a set of weights:
>>> mean, variance, sharp_ratio, weights = p.evaluate([.5, .5])
>>> print '{} +- {}'.format(mean, variance)
0.25 +- 0.0225
Get the portfolio that minimizes risk for a given expected return:
>>> expected_return = 0.25
>>> mean, variance, _, w = p.get_minimum_variance_portfolio(expected_return)
>>> print 'weights: {} \n {} +- {}'.format(w, mean, variance)
weights: [[0.49999993 0.50000007]]
0.25000000746 +- 0.022500002238
Get tangency portfolio for a given risk free asset:
>>> risk_free_rate = 0.2
>>> mean, variance, _, w = p.get_tangency_portfolio(risk_free_rate)
>>> print 'weights: {} \n {} +- {}'.format(w, mean, variance)
weights: [[2.64767716e-04 9.99735232e-01]]
0.299973523228 +- 0.0399894099924