請選擇計算模式,再輸入未來的金額、期數和利率。會計算「未來的錢相當於現在的多少錢」(現值)。
這個頁面可以做什麼
- 只要輸入「\(N\) 期後會領到的錢」的金額、期數和利率,就能知道這筆未來的錢相當於現在的多少錢(現值 \(PV\)),以及被折減掉的金額(\(FV - PV\))
- 切換模式,也能計算「每期持續領取相同金額(年金)」時的現值(年金現值)。支援期初、期末切換,也會顯示參考用的終值、本金合計、利息合計;期數是 20 以內的整數時,還會列出逐期明細表
- 可以用圖表確認「把未來的錢倒推回現在價值」的折現過程(可儲存為 PNG、SVG)
- 這個頁面的金額全部輸入正數即可。不使用財務計算機的正負號規則(流出的錢為負),第一次用也不會搞混
- 公式的淺顯解說,以及可直接複製的 Excel(PV 函數)、Google 試算表、Python 公式,也都整理在這個頁面
這個計算有什麼用?
答案是「現在的 100 萬元」。假設能以年利率 2% 運用,10 年後的 100 萬元,現值是 \(1{,}000{,}000 \div 1.02^{10} \approx 820{,}348\) 元(約 82 萬元),比現在的 100 萬元少了約 18 萬元的價值。
把「同樣的金額,早點拿到比較划算」的直覺,加上「能以幾 % 運用」的假設變成數字,就是現值的概念。這個「本來可以運用賺到的部分」稱為機會成本。
美國的威力球(Powerball)等海外高額樂透,有時可以選「一次領(金額較少)」或「分年領(總額較多)」,比較時用的正是現值。例如「20 年間每年領 100 萬元(總額 2,000 萬元)」,以年利率 3% 折現,現值約 1,488 萬元。如果一次領的金額是 1,500 萬元,在這個假設下一次領的價值稍微高一點。
結論會因「認為能以幾 % 運用」(折現率的假設)而改變。實際的用法是改變折現率算幾次,看在哪裡逆轉(沒有考慮稅金)。
在台灣,勞保老年給付、勞工退休金等,在符合條件時可以選擇「一次領」或「按月領(年金)」。例如「20 年間每年領 120 萬元(總額 2,400 萬元)」以年利率 2% 折現,現值約 1,962 萬元。把一次領的金額和這個現值放在一起比較,就是思考的起點。
實際判斷時,請領資格、平均餘命、稅負和運用利率都有很大影響,這個計算只是單獨取出「時間價值」部分的參考。請不要直接下結論,制度面請以勞動部、勞保局的資料為準。
「15 年後領 300 萬元滿期金」的儲蓄險,以年利率 1% 折現,現值約 258 萬元(2,584,048 元)。把繳的保費總額和這個現值比較,就比較容易看出「為保障付了多少錢」。
保險有保障這種難以標價的價值,光看現值無法決定好壞。即使如此,「不要把未來領到的金額直接拿來和現在的保費比較」這個觀點,在投保或檢視保單時很有幫助。
企業決定設備投資或新事業時的代表性方法「淨現值法(NPV 法)」,是把未來的營收和費用等現金流量一筆一筆用這個頁面的公式換算成現值,全部加總後判斷。合計為正,就解讀成「這項投資可望增加得比折現率更多」。
會計、財務、經營企劃自然不用說,公共建設的成本效益分析也使用同樣的計算,「折現」已經成為和錢有關的實務共通語言。
公式與圖表
符號與用語解說
符號
| \(PV\) | 現值(Present Value)。把未來的錢換算成「相當於現在的多少錢」的金額,是這個頁面要求的值。 |
| \(FV\) | 終值(Future Value)。將來的時間點會領到的金額。「未來的一筆錢」模式要輸入這個值,「每期存入、領取(年金)」模式則顯示為參考值。 |
| \(PMT\) | 每期領取金額(Payment)。每期重複領取(或存入)的金額。 |
| \(N\) | 期數。計息的期數。每年領一次時和年數相同,10 年就是 \(N = 10\)。 |
| \(I/Y\) | 以 % 表示的每期利率(Interest per Year),直接沿用財務計算機按鍵的名稱。每年領一次時就是年利率本身。 |
| \(r\) | 以小數表示的每期利率。6% 就是 \(r = 0.06\)(\(I/Y \div 100\))。 |
| \((1+r)^N\) | 錢經過 \(N\) 期膨脹的倍數。年利率 6%、10 年就是 \(1.06^{10} \approx 1.79\) 倍。計算現值時「除以」這個倍數,把未來的錢倒推回現在的價值。 |
| \((1+r)^{-N}\) | 負指數的意思是「除以 \((1+r)^N\)」。像 \(1.06^{-10} = 1 \div 1.06^{10}\) 這樣,可以把折現寫成乘法的形式。 |
用語
| 現值 | 把未來的錢換算成「相當於現在的多少錢」所表示的金額。例如能以年利率 2% 運用時,1 年後的 102 萬元和現在的 100 萬元價值相同。 |
| 終值 | 現在的錢或每期存入的錢,連同利息將來會變成多少的金額(也稱未來值),和現值剛好成對。 |
| 折現 | 把未來的錢換算成現值的計算。因為要把未來的金額除以 \((1+r)^N\),所以稱為「折現」,剛好是加上利息讓錢變多的計算(複利)的反方向。 |
| 折現率 | 折現時使用的利率,相當於這個頁面的利率 I/Y。表示「如果能運用這筆錢,能以幾 % 增加」,數值越大,未來的錢現在的價值就越小。 |
| 年金 | 在數學、財務上是指「每期持續領取相同金額的現金流量」(英文 annuity)。不只是勞保年金、國民年金這類公共年金,分期領取的錢或定期存款也是同樣的形式。 |
| 年金現值因子 | 表示每期領 1 元的權利換算成現在的錢是多少的倍數 \(\dfrac{1-(1+r)^{-N}}{r}\)(英文縮寫 PVIFA,也稱年金現值利率因子)。是財務管理、理財規劃課程中的基本係數之一,乘上每期領取金額使用。 |
| 淨現值 (NPV) |
把錢的進出(領取和支付)各自的現值,以領取為正、支付為負全部加起來的值(Net Present Value)。用在事業和投資的判斷,這個頁面的「一筆錢的現值」就是它的零件。 |
| 機會成本 | 「如果把這筆錢用在別的地方(例如運用)本來能得到的利益」。未來的錢價值比現在的錢低,可以解釋成是因為等待期間失去了運用的機會(產生了機會成本)。 |
| 期末付款 | 每期領取(付款)在每期結束時進行的方式,也稱普通年金。一般的年金和定期存款是這一種。 |
| 期初付款 | 每期領取(付款)在每期一開始進行的方式,也稱期初年金。因為比期末付款提早一期領取,現值會變成 \((1+r)\) 倍。 |
| 複利 | 已經產生的利息也會再生下一次利息的機制。現值的計算,就是把複利讓錢增加的倍數 \((1+r)^N\) 拿來「除」。 |
建議先了解的基礎知識
為了能「理解意義」地使用這個頁面的計算,這裡整理了建議先了解的基礎知識。
| 比率與百分率(國小高年級,10~12 歲) |
|
| 指數(國中七年級,12~13 歲) |
|
| 複利的基礎(本網站的「複利計算機」頁面,國中以上) |
|
| 負指數(高中,15~18 歲,進階) |
|
用 Excel 計算的方法
| 每期利率(6% 就是 0.06) | 0.06 |
| 期數 N | 10 |
| 終值 FV | 1000 |
| 現值 PV | =-PV(B1,B2,0,B3) |
| 每期利率(6% 就是 0.06) | 0.06 |
| 期數 N | 10 |
| 每期領取金額 PMT | 100 |
| 現值 PV | =-PV(B1,B2,B3,0,0) |
| 每期利率(5% 就是 0.05) | 0.05 |
| 期數 N | 5 |
| 每期領取金額 PMT | 200 |
| 現值 PV | =-PV(B1,B2,B3,0,1) |
PV 函數會用和財務計算機相同的正負號規則(輸入領取的錢,答案會是負數)傳回結果,所以在前面加上負號寫成「=-PV(...)」,就會和這個頁面一樣得到正的金額。
第 1 個表格的 B4 會顯示 558.39,第 2 個是 736.01,第 3 個是 909.19。最後一個引數是領取時間點,0 或省略 = 期末,1 = 期初。
用 Google 試算表計算的方法
| 每期利率(6% 就是 0.06) | 0.06 |
| 期數 N | 10 |
| 終值 FV | 1000 |
| 現值 PV | =-PV(B1,B2,0,B3) |
| 每期利率(6% 就是 0.06) | 0.06 |
| 期數 N | 10 |
| 每期領取金額 PMT | 100 |
| 現值 PV | =-PV(B1,B2,B3,0,0) |
| 每期利率(5% 就是 0.05) | 0.05 |
| 期數 N | 5 |
| 每期領取金額 PMT | 200 |
| 現值 PV | =-PV(B1,B2,B3,0,1) |
用 Python 計算的方法
future_value = 1000 # 終值 FV(計算一筆錢時使用)
payment = 100 # 每期領取金額 PMT(計算年金時使用)
periods = 10 # 期數 N
rate_percent = 6 # 每期利率 I/Y(%)
is_beginning = False # True=期初、False=期末(計算年金時使用)
r = rate_percent / 100
# 未來一筆錢的現值 PV = FV / (1+r)^N
pv_lump = future_value / (1 + r) ** periods
print(f"一筆錢的現值 = {pv_lump:,.2f}")
print(f"被折減的金額 = {future_value - pv_lump:,.2f}")
# 每期領取的現值(年金現值)。利率 0% 時沒有折現 = PMT × N
if r == 0:
pv_annuity = payment * periods
else:
pv_annuity = payment * (1 - (1 + r) ** (-periods)) / r
if is_beginning:
pv_annuity *= (1 + r)
print(f"每期領取的現值 = {pv_annuity:,.2f}")
用 LaTeX 等數學式語言的寫法(可直接複製)
PV = FV / (1 + r)ᴺ
PV = \dfrac{FV}{(1+r)^{N}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>PV</mi>
<mo>=</mo>
<mfrac>
<mi>FV</mi>
<msup>
<mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>r</mi><mo>)</mo></mrow>
<mi>N</mi>
</msup>
</mfrac>
</mrow>
</math>
PV = FV / (1+r)^N
pv = fv/(1 + r)^n
pv := fv/(1 + r)^n;
pv = fv/(1 + r)^n;
PV = FV/(1+r)^N
PV = PMT × (1 − (1 + r)⁻ᴺ) / r
PV = PMT \cdot \dfrac{1-(1+r)^{-N}}{r}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>PV</mi>
<mo>=</mo>
<mi>PMT</mi>
<mo>⋅</mo>
<mfrac>
<mrow>
<mn>1</mn>
<mo>−</mo>
<msup>
<mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>r</mi><mo>)</mo></mrow>
<mrow><mo>−</mo><mi>N</mi></mrow>
</msup>
</mrow>
<mi>r</mi>
</mfrac>
</mrow>
</math>
PV = PMT (1 - (1+r)^(-N)) / r
pv = pmt (1 - (1 + r)^(-n))/r
pv := pmt*(1 - (1 + r)^(-n))/r;
pv = pmt*(1 - (1 + r)^(-n))/r;
PV = PMT(1-(1+r)^(-N))/r
PV = PMT × (1 − (1 + r)⁻ᴺ) / r × (1 + r)
PV = PMT \cdot \dfrac{1-(1+r)^{-N}}{r} \cdot (1+r)
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>PV</mi>
<mo>=</mo>
<mi>PMT</mi>
<mo>⋅</mo>
<mfrac>
<mrow>
<mn>1</mn>
<mo>−</mo>
<msup>
<mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>r</mi><mo>)</mo></mrow>
<mrow><mo>−</mo><mi>N</mi></mrow>
</msup>
</mrow>
<mi>r</mi>
</mfrac>
<mo>⋅</mo>
<mrow><mo>(</mo><mn>1</mn><mo>+</mo><mi>r</mi><mo>)</mo></mrow>
</mrow>
</math>
PV = PMT (1 - (1+r)^(-N)) / r * (1+r)
pv = pmt (1 - (1 + r)^(-n))/r (1 + r)
pv := pmt*(1 - (1 + r)^(-n))/r*(1 + r);
pv = pmt*(1 - (1 + r)^(-n))/r*(1 + r);
PV = PMT(1-(1+r)^(-N))/r (1+r)
請 ChatGPT 幫忙計算的方法
你是現值(Present Value)計算助理。請務必實際執行 Python 程式碼來進行下面的計算,並且只根據執行結果的數值回答(不要用心算或推測回答)。 每期利率固定為 6%(r = 0.06)。 請分別求出下面的值。 1. 10 年後領到的 1,000 元(新臺幣)的現值 PV = FV / (1+r)^N 2. 被折減的金額(FV − PV) 3. 10 年間每年年底(期末)領 100 元時的現值 PV = PMT × (1 − (1+r)^(−N)) / r 請列出計算用的公式和執行結果的數值。
使用方法
-
1輸入數值在輸入欄中輸入要計算的數值
-
2計算按下「計算」按鈕
-
3查看結果計算結果會立即顯示。計算的思路和公式的解說,也都能在同一個頁面查看
DataChef 的特色
不需專業知識,操作直覺又簡單
無須登錄任何個人資料
按下「下載」後自動刪除檔案
無須標註來源出處
亦無須事先取得商用授權