Calculation method

ETF 退休試算器如何計算?

這一頁說明試算器實際使用的計算順序、公式與限制,讓你知道結果來自哪些假設,也知道哪些事情沒有被模型納入。

Process

整體計算流程

  1. 01

    讀取並驗證輸入

    檢查投資年數、通膨率、提領率、情境調整、ETF 金額、報酬率與費用率是否有效。

  2. 02

    逐檔 ETF 計算

    每檔 ETF 使用自己的目前市值、每月投入、中性報酬率與費用率。

  3. 03

    形成三種情境

    保守、中性、樂觀情境會在每檔 ETF 的中性報酬率上加減共同百分點。

  4. 04

    加總 ETF 結果

    各 ETF 完成個別試算後,才加總投入、名目資產、今日購買力與提領估算。

  5. 05

    折算今日購買力

    名目退休資產依通膨率與投資年數折現,得到以今日幣值理解的金額。

  6. 06

    渲染結果與圖表

    主要結果、年度明細與 Canvas 圖表使用中性情境;ETF 歸因可切換三種情境。

Per ETF

每檔 ETF 如何被處理

目前市值

起始資產代表現在持有的 ETF 市值,不是過去投入成本。

每月投入

每期投入在月底加入,因此不會提前享有當月完整報酬。

報酬與費用

情境報酬率等於 ETF 中性報酬率加上情境調整,再扣除該 ETF 自己的年費用率。

獨立輸入

不同 ETF 可以有不同的目前市值、每月投入、報酬率與費用率,程式不會先取平均。

Formula cards

公開公式與白話解釋

扣費後年報酬率

白話理解先從每檔 ETF 填寫的中性報酬率出發,加上保守、中性或樂觀調整,最後扣除這檔 ETF 自己的費用率。

公式

netAnnualReturn = neutralAnnualReturn + scenarioAdjustment - expenseRatio

提醒這裡沒有扣除稅負、交易成本或其他費用。

有效月報酬率

白話理解程式會把扣費後年報酬率換算成每月等效成長率。

公式

monthlyRate = (1 + netAnnualReturn)^(1 / 12) - 1

提醒這不是把年報酬率直接除以 12。

期初資產成長

白話理解現在已有的 ETF 市值會從第一個月開始參與複利。

公式

initialFutureValue = currentValue * (1 + monthlyRate)^months

提醒起始資產代表目前市值,不是歷史投入成本。

月底投入複利

白話理解每月投入在月底才加入,因此當月不會先享有完整一個月報酬。

公式

contributionFutureValue = monthlyContribution * (((1 + monthlyRate)^months - 1) / monthlyRate)

提醒這是普通年金的處理方式,不是月初投入。

月報酬率為零時

白話理解如果月報酬率接近零,投入金額就不再套用除法公式,而是直接累加。

公式

contributionFutureValue = monthlyContribution * months

提醒這是為了避免除以零造成無效結果。

累積投入

白話理解累積投入只是目前市值加上未來每月投入的總和。

公式

totalContributions = currentValue + monthlyContribution * months

提醒它不等於稅務成本,也不等於歷史買進成本。

投資收益

白話理解投資收益是試算出的名目資產減掉累積投入。

公式

investmentGain = futureValue - totalContributions

提醒這不是已實現收益,也不是保證收益。

ETF 個別結果

白話理解每檔 ETF 先算完自己的結果,再把各項數字逐項相加。

公式

portfolioFutureValue = sum(eachEtfFutureValue)

提醒程式不會先計算投資組合平均報酬率。

Portfolio

多檔 ETF 加總,不計算組合平均報酬

程式會計算

  • 各 ETF 累積投入加總
  • 各 ETF 名目資產加總
  • 各 ETF 今日購買力加總
  • 各 ETF 提領估算加總

程式不計算

  • 投資組合平均報酬率
  • 投資組合平均費用率
  • 投資組合平均淨報酬率
  • 用單一平均 ETF 取代多 ETF 明細

Purchasing power

名目金額如何折算今日購買力

realValue = nominalValue / (1 + inflationRate)^years

名目資產是退休時帳面金額,今日購買力則是用固定通膨率折回今天感受的金額。今日購買力不是另一筆資產,通膨也不會從投資帳戶中扣款;它只是把未來名目金額換算成今天的購買力尺度。通膨率在整段試算期間固定,程式不會預測未來每年的實際物價變化。

今日購買力不是保證可買到的商品或服務數量;它只是用單一通膨假設協助理解長期購買力差異。

Withdrawal

每月可提領金額如何估算

年提領額

annualWithdrawal = assetValue * withdrawalRate

每月提領額

monthlyWithdrawal = annualWithdrawal / 12

提領估算會分別使用名目資產與今日購買力資產計算。試算器預設提領率為 4%,使用者可以自行調整;結果只是簡化估算,不保證資產不會耗盡,也沒有模擬退休後逐年市場波動、報酬順序風險、稅務與實際支出變化。

Scenarios

三種情境是敏感度測試

情境調整用來觀察:如果未來報酬率比中性假設更低或更高,退休結果可能改變多少。它不是市場預測、信賴區間、發生機率,也不是報酬率建議。

保守情境

填 0 或負數,代表比中性假設低多少個百分點。

中性情境

來自每檔 ETF 自己輸入的中性年報酬率,也是主要結果與年度資料來源。

樂觀情境

填 0 或正數,代表比中性假設高多少個百分點。

百分點,不是乘法百分比

假設中性年報酬率為 6%,保守調整為 -2 個百分點、樂觀調整為 +2 個百分點,代表扣費前報酬假設為:

  • 保守:4%
  • 中性:6%
  • 樂觀:8%

它不是 6% × 98%,也不是 6% × 102%。

如何決定調整幅度

  • 正負 1 個百分點:較小幅度的敏感度測試。
  • 正負 2 個百分點:中等幅度的敏感度測試。
  • 正負 3 個百分點以上:較大幅度或壓力測試。

這些分類只是在說明調整幅度,不代表特定報酬率合理、適合或更可能發生。

欄位運作示意

假設某檔 ETF 的中性年報酬率為 6%、年費用率為 0.2%、保守調整為 -2 個百分點、樂觀調整為 +2 個百分點,則扣費後為:

  • 保守情境:6% - 2% - 0.2% = 3.8%
  • 中性情境:6% - 0.2% = 5.8%
  • 樂觀情境:6% + 2% - 0.2% = 7.8%

這組數字只用來示範欄位如何運作,不是 ETF 報酬率建議,也不表示這三種情境的發生機率。

若暫時沒有自己的情境假設,可以先用對稱幅度比較,例如 -2 與 +2 個百分點。這只是敏感度示範,不是推薦設定。同一組保守與樂觀調整會套用到每一檔 ETF,每檔 ETF 最後仍會扣除自己的年費用率。

Yearly projection

年度明細與圖表使用哪些數值

年度明細以中性情境逐月模擬,再在每一年結束時記錄累積投入、名目資產、今日購買力與投資收益。圖表使用同一批年度資料,Canvas 只負責視覺呈現,不另外建立一套財務計算。

當輸入條件改變時,既有結果會被清除;當只是切換顯示幣別或調整有效匯率時,程式會使用快取結果重新渲染畫面,不重新執行財務試算。

Currency

幣別與手動匯率只影響顯示

內部資料

試算結果、年度資料與 ETF 結果都維持 TWD 原始值。

畫面顯示

選擇外幣時,只在格式化與渲染層使用手動匯率換算。

本站沒有即時匯率 API,也不會預測未來匯率。無效匯率不應讓畫面出現 NaN 或 Infinity,也不應清除有效財務結果。

Scope

目前沒有納入的因素

Advanced details

進階說明

為什麼不用投資組合平均報酬率?

不同 ETF 的投入金額、目前市值、報酬假設與費用率可能不同。先取平均會讓部分差異消失,因此程式採用逐檔計算後加總。

為什麼每月投入放在月底?

月底投入代表當月投入不提前享有整個月的報酬,計算方式較保守,也與普通年金公式一致。

切換幣別為什麼不重新試算?

幣別只是一種顯示方式。內部快取保留 TWD 結果,切換幣別時只重新格式化畫面,避免外幣顯示值被寫回計算資料。

什麼情況會清除既有結果?

當使用者改變投資年數、ETF 輸入、報酬率、費用率、通膨率、提領率或情境條件時,既有結果會失效並清除,直到重新送出試算。

輸入驗證有哪些邊界?

扣費後年報酬率必須大於 -100%,提領率必須大於 0% 且不超過 10%,保守調整不得為正數,樂觀調整不得為負數。

年度資料如何保持一致?

年度資料使用中性情境產生,程式會檢查年度期末結果是否與中性情境結果一致。

帶著公式回到試算器

你可以先理解每個結果的來源,再回到試算器調整 ETF、報酬率、費用率與通膨假設。

回到 ETF 試算器