TWR 時間加權報酬率計算機
排除出入金干擾的真實績效 · 幾何連乘 · 年化 · 純前端計算,資料不離開你的瀏覽器
口徑:每期報酬 r =(期末 − 期初 − 淨入金)÷(期初 + 淨入金),出入金視為期初發生;TWR =(1+r₁)(1+r₂)…(1+rₙ)− 1;年化 =(1+TWR)^(365/天數)− 1。簡單報酬率 =(最終市值 − 期初市值 − 總淨入金)÷(期初市值 + 總淨入金),是 MWR 的粗略近似。
為什麼需要 TWR?
只要你中途入金或出金,「(期末 − 總投入)÷ 總投入」這種簡單報酬率就會失真:高點加碼會把好績效拉低,低點加碼會把爛績效美化,因為每筆錢在場內的時間不一樣長。TWR(Time-Weighted Return,時間加權報酬率)是全球基金業評比經理人用的標準指標,做法是把出入金的影響「切」出去:
- 每次出入金就切一個子期間,算出該期間自身的報酬 r =(期末 − 期初 − 淨入金)÷(期初 + 淨入金)。
- 把所有子期間幾何連乘:TWR =(1+r₁)(1+r₂)…(1+rₙ)− 1。
連乘之後,每一段報酬的權重只跟「時間順序」有關,跟你當時投了多少錢無關 — 所以 TWR 衡量的是策略與標的本身的表現,簡單報酬率(MWR 的近似)衡量的是你的錢實際的體驗,兩者本來就該不一樣。
使用範例:高點加碼的失真
期初投入 100,000,第一段行情 +50% 漲到 150,000;此時你加碼 100,000(帳戶變 250,000),第二段行情 −20%,期末剩 200,000:
- 第一期 r₁ =(150,000 − 100,000)÷ 100,000 = +50%
- 第二期 r₂ =(200,000 − 150,000 − 100,000)÷(150,000 + 100,000)= −20%
- TWR = 1.5 × 0.8 − 1 = +20%
- 簡單報酬率 =(200,000 − 200,000)÷ 200,000 = 0%
市場這段期間其實給了 +20%,但因為你把大錢加在高點,個人實際打平。策略沒問題,是擇時吃掉了報酬 — 這個結論只有同時看 TWR 和簡單報酬率才看得出來。完整原理與更多加密場景(跨所轉帳、定期定額)見教學:TWR 是什麼?為什麼你的加密報酬率可能算錯了。
常見問題
TWR 和簡單報酬率為什麼會不一樣?
簡單報酬率把所有入金都當成從頭就在場內的本金,只要你中途加碼或出金,時間權重就被扭曲。TWR 把時間切成「每次出入金之間」的子期間,先算每段各自的報酬,再幾何連乘,所以結果只反映投資標的與策略本身的表現,和你何時進出金無關。
出入金應該填正的還是負的?
入金(轉進這個投資組合的錢)填正數,出金(轉出去的錢)填負數。本計算機假設出入金發生在該期期初,所以每一段的起算基準是「期初市值 + 淨入金」。
什麼時候該切一個新期間?
每次有出入金就切一段:出入金當下記錄前一段的期末市值,新一段的期初市值 = 前一段期末市值,出入金填在新一段。沒有出入金的期間可以合併成一段,結果不變 — 這正是 TWR 幾何連乘的好處。