第二階段:核心組件深度解讀

模組 10:投資組合 — 資金的全局視角跨帳戶、跨策略地管理盈虧、持倉和績效

一、Portfolio 的角色

Portfolio 提供了整個交易系統的「財務總管」視角。它不是單一策略的帳本,而是所有帳戶、所有持倉的匯總。

flowchart LR
                        subgraph srcs["📥 全局輸入"]
                        direction TB
                        acct["🏦 帳戶 A / B"]
                        pos["📊 所有持倉"]
                        market["📈 市場數據"]
                        end

                        portfolio["💰 Portfolio<br/>投資組合匯總"]

                        subgraph outputs["📤 輸出指標"]
                        direction TB
                        nav["淨資產價值 (NAV)"]
                        pnl["盈虧 (PnL)"]
                        margin["保證金率"]
                        end

                        srcs ==> portfolio ==> outputs

                        style portfolio fill:#0f1419,stroke:#4fc3f7,stroke-width:2px
圖 1:Portfolio 匯總所有帳戶和持倉的信息

二、核心功能

💵

帳戶匯總

跨多個交易所帳戶匯總餘額、可用資金、保證金使用。

📊

持倉管理

追蹤所有開倉持倉,計算各自的未實現盈虧和整體風險暴露。

📈

盈虧計算

即時計算已實現盈虧(平倉部分)和未實現盈虧(按市價盯市)。

📋

績效報告

回測結束後生成完整的績效分析報告:收益率、夏普比率、最大回撤等。

三、API 查詢

# 在策略中查詢投資組合信息

# 淨資產價值(所有帳戶 + 未實現盈虧)
nav = self.portfolio.net_exposures(venue)

# 未實現盈虧
unrealized_pnl = self.portfolio.unrealized_pnl(instrument_id)

# 已實現盈虧
realized_pnl = self.portfolio.realized_pnl(instrument_id)

# 帳戶餘額
balances = self.portfolio.balances_locked(venue)

# 是否完全平倉
is_flat = self.portfolio.is_completely_flat()

四、回測績效分析

回測結束後,Portfolio 會生成詳細的績效指標:

指標說明你應該關注什麼
總收益率策略的整體回報是否為正,是否跑贏基準
年化收益率換算為年度的收益率和其他投資機會比較
夏普比率 (Sharpe)風險調整後收益> 1 不錯,> 2 很好
最大回撤 (Max DD)從峰值到谷底的最大虧損你能承受的最大跌幅
勝率盈利交易的比例需要和盈虧比一起看
盈虧比平均盈利 / 平均虧損> 1.5 比較健康
最大連續虧損連續虧損的最多次數考驗心理承受能力

五、互動練習

🧠 練習:績效評估

策略 A 的回測結果:年化收益 80%,夏普比率 0.5,最大回撤 60%。
策略 B 的回測結果:年化收益 25%,夏普比率 2.1,最大回撤 12%。
哪個策略更好?為什麼?

策略 B 更好。原因:

  1. 策略 A 的夏普比率只有 0.5,說明收益大部分來自承擔了巨大風險
  2. 策略 A 的 60% 最大回撤意味著你的帳戶可能從 100 萬跌到 40 萬
  3. 策略 B 的夏普 2.1 說明風險調整後收益優秀
  4. 策略 B 的 12% 最大回撤在可控範圍
  5. 通過加槓桿,策略 B 可以放到和 A 相似的收益水平,但風險仍然可控

💡 結論:永遠優先看風險調整後的指標(夏普比率),而不是只看絕對收益。

六、本模組重點回顧

📋 關鍵點
  1. Portfolio 是跨帳戶、跨策略的財務總管
  2. 即時盯市:根據市場數據即時更新未實現盈虧
  3. 績效指標:夏普比率比絕對收益更重要
  4. 最大回撤:決定了你能用多大的資金運行策略
  5. 回測結束後會自動生成完整的績效分析報告