portfolio-backtest is a python library for backtest portfolio asset allocation on Python 3.7 and above.
Project description
portfolio-backtest
portfolio-backtest is a python library for backtest portfolio asset allocation on Python 3.7 and above.
Installation
$ pip install portfolio-backtest PyPortfolioOpt
Usage
basic run
from portfolio_backtest import Backtest
Backtest(tickers=["VTI", "AGG", "GLD"]).run()
advanced run
from portfolio_backtest import Backtest
import pprint
bt = Backtest(
tickers={
"VTI": 0.6,
"AGG": 0.25,
"GLD": 0.15,
},
target_return=0.1,
target_cvar=0.025,
data_dir="data",
start="2011-04-10",
end="2021-04-10",
)
pprint.pprint(bt.run(plot=True))
[{'Annual volatility': '10.9%',
'Conditional Value at Risk': '',
'Expected annual return': '9.6%',
'Sharpe Ratio': '0.70',
'portfolio': 'Your Portfolio',
'tickers': {'AGG': 0.25, 'GLD': 0.15, 'VTI': 0.6}},
{'Annual volatility': '6.3%',
'Conditional Value at Risk': '',
'Expected annual return': '7.0%',
'Sharpe Ratio': '0.79',
'portfolio': 'Tangency Portfolio',
'tickers': {'AGG': 0.67099, 'GLD': 0.0, 'VTI': 0.32901}},
{'Annual volatility': '4.3%',
'Conditional Value at Risk': '',
'Expected annual return': '4.3%',
'Sharpe Ratio': '0.53',
'portfolio': 'Minimum Variance Portfolio',
'tickers': {'AGG': 0.91939, 'GLD': 0.00525, 'VTI': 0.07536}},
{'Annual volatility': '4.0%',
'Conditional Value at Risk': '',
'Expected annual return': '4.1%',
'Sharpe Ratio': '0.51',
'portfolio': 'Hierarchical Risk Parity Portfolio',
'tickers': {'AGG': 0.89041, 'GLD': 0.05695, 'VTI': 0.05263}},
{'Annual volatility': '',
'Conditional Value at Risk': '0.5%',
'Expected annual return': '4.2%',
'Sharpe Ratio': '',
'portfolio': 'Minimum CVaR Portfolio',
'tickers': {'AGG': 0.93215, 'GLD': 0.0, 'VTI': 0.06785}},
{'Annual volatility': '7.7%',
'Conditional Value at Risk': '',
'Expected annual return': '10.0%',
'Sharpe Ratio': '1.04',
'portfolio': 'Semi Variance Portfolio (target return 10.0%)',
'tickers': {'AGG': 0.39504, 'GLD': 0.0, 'VTI': 0.60496}},
{'Annual volatility': '',
'Conditional Value at Risk': '2.5%',
'Expected annual return': '13.3%',
'Sharpe Ratio': '',
'portfolio': 'Return Maximize CVaR Portfolio (target CVaR 2.5%)',
'tickers': {'AGG': 0.08851, 'GLD': 0.0, 'VTI': 0.91149}}]
Supported Portfolio
- Your Portfolio
- Hierarchical Risk Parity Portfolio
- Tangency Portfolio
- Minimum Variance Portfolio
- Minimum CVaR Portfolio
- Semi Variance Portfolio
- Return Maximize CVaR Portfolio
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for portfolio-backtest-0.1.14.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5ed0c993306f4b7507c372c13112b98f2bd948f35fba8875c9898076cd03a40b |
|
MD5 | 2867e61e43bb28b1c3deaee9d2ea28cb |
|
BLAKE2b-256 | 205a199c9f96411483ac3c71b7a9ef9e15859cbcb98e643ad5943131be9f05aa |
Close
Hashes for portfolio_backtest-0.1.14-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c7d14dedc1ecbd4b890bbaaefc0031a4e008f77e969fe5e53ab94474c7ab9d7e |
|
MD5 | 2ab311a7c5287fb6d05dc9cdb2ae7c0e |
|
BLAKE2b-256 | c85522381f124c92d4306e553995ea188ac5bc34b43f95370b243c2d85ee43d3 |