跳到主要內容

合理房價計算機

最近遇到有人想用 3000 萬買一棟 40 年老屋,讓我吃驚想問這棟老屋東吸引力為何?

經詢問,原來他原本就在租這棟房子做生意用。

我就問啦:你們一年交多少房租。

他說:60 萬。

我非常無法理解為何要用 3000 萬買這棟房子,我就拿出計算機幫他算了算 60萬/ 0.05  = 1200萬,我說,現在10年期美債殖利率已經 3.5%,任何風險性資產報酬率算 5%,非常不過分。

我看他一臉懵懂,我就知道要不是他不知道我的算式是怎麼來的,不然就是他聽不懂跟 10 年美債殖利率有啥關係。

因此,我現在想寫一篇文章,娓娓道來一些評估房價的客觀公式。

美債殖利率

為何我會提到美債殖利率呢?因為我把美債殖利率當作定存利息的加強版。想像一下銀行定存,說是無風險,大家應該不會有異議,存 100 元,利率 1%,一年後保證拿回 101 元。

美債也是如此,美債據我所知從來沒有違約過,也沒有理由想像美債何時會違約,畢竟美金是美國政府發行的,聯準會也可以透過印鈔票(嚴格正來講是透過公開市場操作,也就是買賣公債增加或減少市場現金量)。

因此美債殖利率可以當作一個獲利基礎,也就是,如果投資美債都可以每年百分之百賺到3.5%,為何我要投資任何有風險,卻賺不到 3.5% 的投資標的?

所以我的計算方式,是用美債殖利率加上一個趴數,專有名詞叫做風險溢酬,得到我認為投資某項投資標的應有的報酬,再反推合理價格。

上面的例子就是 3.5% 加上 1.5 % 等於 5%。

價格計算

了解了為何用美債殖利率當作資產評價方式後,要如何回推房子合理價格呢?

就是用租金除以報酬率,為何?

因為租金是必須要交的,如果把房子買下來,就不用交租金了,所以要用多少代價換得不用交租金,就是用這個公式。

延續上面的例子,每年租金 60 萬,除以 0.05 等於 1200 萬,驗算一下,一個 1200 萬價值的資產,每年給你 5% 報酬率,也是每年賺 60 萬。

只要房子高過 1200 萬,就是在我心目中的貴,畢竟原本的 5% 是我心中合理的報酬率。

假設不加風險溢酬,使用無風險的 10 年期美債殖利率來推算房價呢?我們得到 60 萬 除以 0.035 等於 1714.28 萬,還是比 3000 萬便宜。 3000 萬真的太貴了。

換句話說,你要用 3000 萬買這棟房子,還不如把 3000 萬拿去買美債。

如果覺得買美債會有匯率問題,那最簡單的方式就是用台幣定存利率來取代美債殖利率計算即可。

計算機

美債利率:%
風險溢酬:%
租金:
合理房價為:萬元

房價升值

當然,也有人會說,房子會升值阿!

好吧,那我們就來把房價升值納入計算看看,這邊我把租金跟房價比假設為固定,也就是說,房價漲幾趴,房租就漲幾趴。

計算公式就變成(這個公式與無限期年金的現值計算相同)
房價 = 租金 / (無風險利率 + 風險溢酬 - 租金成長率)

如果這棟房子賣 3000 萬,租金第一年為 60萬,我們可以算出  (無風險利率 + 風險溢酬 - 租金成長率) 為 2%,同時當作無風險利率的 10 年期買債殖利率為 3.5%,且繼續假設風險溢酬為 1.5%,我們得出租金成長率為 3%。
簡單來說,這棟 40 年老屋如果沒有每年升值 3%,就更本值得。

計算機

美債利率:%
風險溢酬:%
租金:
房價:
房租成長率為:%

站在房子賣方的角度

假設我是房子賣方,我一定很開心,一棟房子可以賣 3000 萬,原本的租金才收 60 萬,等於我每年只賺 2%,現在賣掉再去買個公債還比較賺...

留言

這個網誌中的熱門文章

母體變異數(population variance)、樣本變異數(sample variance)及自由度(degrees of freedom)

母體指的是所有的數據,樣本指的是從母體抽樣的數據,舉例來說,一個班級有40人,它們的身高,40個身高數據,若只針對這個班,就是母體,但是,卻只是代表全校學生身高的一部分,也就是樣本。 回到「機率統計」頁面 樣本平均數(mean)不是母體平均數,樣本變異數(variance)也不是母體變異數,一個班40個人身高的平均數很難剛好是全校學生的身高平均數。 一個班40個人的身高變異數也不會是全校學生的身高變異數。 變異數計算 母體變異數的定義如下: 而樣本變異數的定義如下: 奇怪的地方 平均數 雖然樣本平均數不是母體平均數,不過,如果不斷重複從同一個母體抽樣平均,會得到一個近似母體平均數的數字。舉例來說,從一個學校所有學生中,不斷隨機選出40個學生取平均數,再將這些平均數平均,結果會接近直接算全校學生的身高平均數。 也就是說樣本平均數的期望值就是母體平均數: 變異數 樣本變異數跟母體變異數就沒這麼單純了。奇怪的地方是,為什麼樣本變異數公式的除術是n-1,而不是像平均數計算一樣用n? 為何樣本變異數要除的是(n-1)? 除數為n的話,變異數會太小 如果樣本變異數的除數是n,樣本變異數就會常常比母體變異數小。為什麼呢? 因為,樣本是從母體抽取的,抽樣的數據算出平均,並且抽樣的數據會相對的接近抽樣的平均,總不會剛好抽出的樣本平均數剛好是母體平均數,且樣本數據離樣本平均數就像母體數據離母體平均數一樣分散吧? 假設母體數據為0-99的整數,共100個數據,從中選出10個數字,然後計算樣本的平均數,分別用n及n-1當作除數算出變異數,連續執行200次,並將200個樣本平均數及200個樣本變異數平均。 也就是取得樣本平均數及樣本變異數的期望值,結果如下: 母體平均數 = 49.5

中央極限定理(central limit theorem)證明

中央極限定理(central limit theorem )指的是從一個獨立同分布(Independent and identically distributed, i.i.d)取出之變數數量趨近無限多時,其平均數(mean)將趨近常態分布(normal distribution)。 回到「機率統計」頁面 目錄: 動差母函數(moment generating function) 常態分布的動差母函數 中央極限定理證明 中央極限定理模擬 中央極限定理應用 動差母函數(moment generating function) 動差母函數為機率密度函數(probability density fFunction, PDF)及累積分佈函數(cumulative distribution function CDF)之外,另一種描述機率分布模型的一種方式。 定義 M X (t) = E[e tx ] 而 e tx 的泰勒級數(Taylor series)為 e tx  = 1 + tx + t 2 x 2 /2! +  t 3 x 3 /3! + ... 則 M X (t) 的泰勒級數為 M X (t) = E[e tx ]  = 1 + tE[x] +  t 2 /2! E[x 2 ] +  t 3 /3! E[x 3 ] + ... 因此,當t = 0時,以t取 動差母函數m次微分,就可以找到其分布模型的第m動差。 特性 M X+Y (t) = E[e t(x+y) ] =  E[e tx+ty ] =  E[e tx e ty ]  =  E[e tx ]  E[ e ty ] =  M X (t)  M Y (t)  常態分布的動差母

HYG、LQD 與 TLT 風險報酬比較

10 年期公債除了站上 4%,再撰寫這篇文章時,已經在 4.3% 徘迴,上次在 這篇文章 研究了現在是否應該要買 LQD 而不是 TLT,本篇文章我想研究非投資等級債是否更適合。 買點 HYG 現在 HYG 價格為 74.04,距離近一次低點 2020/3/20 的 69.75,差別為 5.794% LQD 上次低點在 2020/10/14 的 100.38 附近,與目前的 105.01 相差 4.612%。 TLT 上次低點在 2022/11/4 的 94.22 附近,與目前的 95.16相差 1%。 殖利率上升時,公司債的表現 TLT 2009-01-06 到 2010-01-05 跌了 16.364% 這段期間美國 30 年期公債殖利率從 3.04% 漲到  3.74%,漲了 0.7%。 TLT 2012-11-14 到 2013-11-13 跌了 15.701% 這段期間 美國 30 年期公債殖利率從 2.73% 漲到  3.83%,漲了 1.1%。 TLT 2016-07-29 到 2017-07-28 跌了 10.307% 這段期間 美國 30 年期公債殖利率從 2.18% 漲到  2.89%,漲了 0.71%。 TLT 2021-11-18 到 2023-8-15 跌了 32.695% 這段期間美國 30 年期公債殖利率從 1.97% 漲到  4.35%,漲了 2.38%。 結論 HYG 現在也很便宜,在公債殖利率還有可能持續上漲狀況下,表現可能勝過公債及投資等級公司債。

如何在Chart.js的圖上加上X軸或Y軸名稱

 Chart.js可以幫助網頁顯示各類圖表,要在X軸及Y軸上標示名稱方法如下: 找到Chart物件。 在Chart物件內找到options。 在options內找到scales,若無,自行加上scales。 即可在scales下設定X軸及Y軸的標示。 程式碼範例 <div> <canvas id="myChart"></canvas> </div> <script src="https://cdn.jsdelivr.net/npm/chart.js"></script> <script> const labels = [ '1', '2', '3', '4', '5', '6', ]; const data = { labels: labels, datasets: [{ label: '數據', backgroundColor: 'rgb(255, 99, 132)', borderColor: 'rgb(255, 99, 132)', data: [0, 10, 5, 2, 20, 30, 45], }] }; const config = { type: 'line', data, options: {scales:{ x:{ title:{ display:true, text:"月" } }, y:{ title:{ display:true, text:"unit" } } } } }; var myChart = new Chart( document.ge

賭徒破產理論(Gambler's ruin)機率公式證明

賭徒破產理論(Gambler's ruin)指指的是兩位賭徒,每局賭1元,A賭徒有i元,B賭徒有n-i元,兩人不斷的賭,直到一人輸光為止。 回到「機率統計」頁面 前言 假設A賭徒勝率為p,輸的機率就是1-p,稱為q,我們要求算A贏光所有錢的機率。 讓p(i)代表A賭徒擁有i元的時候,獲得最後勝利的機率。 p(0) = 0,因為已經輸光所有錢並且賭局已結束。 p(n) = 1,因為已經贏光所有錢並且賭局已結束。 那麼p(i)呢? 遞迴公式(recursive formula) 假設A有i元,它下一局有可能贏,有可能輸。贏的機率為p,輸的機率為1-p = q。 不論這一局是贏還是輸,A要贏光所有錢的機率還是沒有算出來。 這局贏了,接下來贏光所有錢的機率為p(i+1)。 這局輸了,接下來贏光所有錢的機率為p(i-1)。 因此,p(i) = p*p(i+1) + q*p(i-1),且可以繼續延伸,例如p(i+1) = p*p(i+2) + q*p(i)、p(i-1) = p*p(i-) + q*p(i-2)... 每個公式需要套用原本的公式,稱為遞迴公式公式,而遞迴公式解法可以像解微分方程(differential equation)一樣,可以先用猜的! 例如dx/dt = rx,微分之後x還是在公式裡,可以先猜測x = e^y。 猜測 假設,p(i) = x i ,並帶入p(i) = p*p(i+1) + q*p(i-1),得到  x i   = p* x i+1  + q * x i-1 x = p* x 2  + q p* x 2  - x + q = 0 解一元二次方程式得 x = 1 或 x = q/p 微分方程 p(i) = x i , x = 1 或 x = q/p,且有兩已知數 p(0) = 0 及 p(n) = 1。 而x i 的x有兩個根(root),必須都帶入線性組合(linear combination)公式求解。 p(i) = A(1) i  + B ( q/p ) i  =  A +  B ( q/p ) i  p(0) = A + B = 0 , A = -B p(n) = A + B ( q/p ) n   = 1 A + B ( q/p ) n  = -B +  B ( q/p ) n  = B(-1 +  ( q/p ) n )