Skip to main content

投资组合回测是一个 Python 库,用于在 Python 3.7 及更高版本上回测投资组合资产分配。

项目描述

投资组合回测

派皮 执照:麻省理工学院 编解码器 构建状态 PyPI - Python 版本 下载

投资组合回测是一个 Python 库,用于在 Python 3.7 及更高版本上回测投资组合资产分配。

安装

$ pip install portfolio-backtest
$ pip install PyPortfolioOpt

用法

基本运行

from portfolio_backtest import Backtest

Backtest(tickers=["VTI", "AGG", "GLD"]).run()

tangency-portfolio.png 最小方差-portfolio.png 分层风险平价投资组合.png minimum-cvar-portfolio.png 累积回报.png

高级运行

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': '',
  'Cumulative Return': '160.9%',
  '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': '',
  'Cumulative Return': '102.3%',
  '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': '',
  'Cumulative Return': '53.3%',
  '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': '',
  'Cumulative Return': '48.7%',
  '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%',
  'Cumulative Return': '52.1%',
  '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': '',
  'Cumulative Return': '166.5%',
  '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%',
  'Cumulative Return': '251.3%',
  '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}}]

高级你的投资组合.png 高级切线组合.png 高级最小方差-portfolio.png 高级分层风险平价投资组合.png 高级最小 cvar-portfolio.png 高级回报最大化-cvar-portfolio-(target-cvar-2.5%).png 高级半方差投资组合(目标回报 10.0%).png 高级累积回报.png

提供一种方法 (discrete_allocation),可通过输入最新价格和所需的投资组合规模(本例中为 10,000 美元)将其转换为可供购买的实际分配

from portfolio_backtest import Backtest

bt = Backtest(
    tickers={
        "VTI": 0.6,
        "AGG": 0.25,
        "GLD": 0.15,
    }
)
print(bt.discrete_allocation(total_portfolio_value=10000))
{'Discrete allocation': {'VTI': 28, 'AGG': 21, 'GLD': 9}, 'Funds remaining': '$109.45'}

支持的投资组合

  • 您的投资组合
  • 分级风险平价投资组合
  • 相切投资组合
  • 最小方差投资组合
  • 最低 CVaR 投资组合
  • 半方差投资组合
  • 回报最大化 CVaR 投资组合

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

Portfolio-backtest-0.3.0.tar.gz (6.8 kB 查看哈希

已上传 source

内置分布

portfolio_backtest-0.3.0-py3-none-any.whl (5.8 kB 查看哈希

已上传 py3