投資組合分析工具

Python 投資組合分析入門

Charlotte Werger

Data Scientist

專業投資組合分析工具

專業投資組合管理工具的螢幕截圖

Python 投資組合分析入門

回測你的策略

  • 回測:在歷史資料上執行你的策略並查看表現
  • 策略在歷史資料有效:未必能適用未來資料 → 市場可能改變

投資組合回測結果與指數對照圖

Python 投資組合分析入門

Quantopian 的 pyfolio 工具

$ $

Quantopian 標誌

$ $ Pyfolio 標誌

1 Github: https://github.com/quantopian/pyfolio
Python 投資組合分析入門

在 Pyfolio 進行績效與風險分析

# Install the package
!pip install pyfolio
# Import the package
import pyfolio as pf
# Read the data as a pandas series
returns=pd.Series(pd.read_csv('pf_returns.csv')
returns.index=pd.to_datetime(returns.index)
# Create a tear sheet on returns
pf.create_returns_tear_sheet(returns)
# If you have backtest and live data 
pf.create_returns_tear_sheet(returns, live_start_date='2018-03-01')
Python 投資組合分析入門

Pyfolio 的報表(tear sheet)

Pyfolio 報表輸出中的報酬表

Pyfolio 報表輸出中的滾動 Sharpe 比

Pyfolio 報表輸出中的回撤圖

Python 投資組合分析入門

Pyfolio 的持倉與曝險

# define our sector mappings
sect_map = {'COST': 'Consumer Goods',
            'INTC': 'Technology', 
            'CERN': 'Healthcare', 
            'GPS': 'Technology',
            'MMM': 'Construction', 
            'DELL': 'Technology', 
            'AMD': 'Technology'}
pf.create_position_tear_sheet(returns, positions, 
                             sector_mappings=sect_map)
Python 投資組合分析入門

曝險報表結果

$$

Pyfolio 報表輸出中的前 10 大持倉

$ $

Pyfolio 報表輸出中的產業配置

Python 投資組合分析入門

一起來練習吧!

Python 投資組合分析入門

Preparing Video For Download...