債券的凸性如何計算?希望能夠得到詳細的計算過程和公式,最好你能配一個簡單的例子
01-28
本人非金融專業,現在需要了解債券凸性如何計算。在網上找了很久都 沒有找到簡單好懂的計算公式。只在這個地方:金融久期及凸性計算題,看到一個計算公式,但是又不知道計算方法是不是正確。那位能幫忙給一個計算公式,最好 能陪一個簡單好懂的例子。比如類似相面在這些數據,是否可以幫忙展示一下如何計算凸性。
這裡我已經知道如何計算「基點價值」。只想知道如何計算「凸性」。方便的話請給一個普世的計算方法,謝謝啦。
樓上計算凸性的方法的確簡便,但存在一定局限性,必須知道收益率變化同等幅度情況下的價格變動比率才能用這個公式計算。如果只給出一個債券的一些普通信息可以根據下面的方法計算:1. 債券的價格是債券未來現金流的折現值,因此債券的價格與折現率(折現率即到期收益率)存在一個關係等式,凸性與二階導數有關。二階導數的計算公式如下:
Dim nper As Integer
cper = L * cpct / coupyr rper = ytm / coupyr nper = (zeroyr - nowyr) * coupyr rn = (1 + rper) ^ nper rn2 = (1 / (1 + rper)) ^ (nper + 2) c1 = (nper + 1) * (nper + 2) * rn2 / rper c2 = 2 * ((nper + 2) * rn2 - (1 / (1 + rper))) / (rper ^ 2) c3 = 2 * (rn2 - (1 / (1 + rper))) / (rper ^ 3) pv = cper * (rn - 1) / (rn * rper) + L / rnconvper = -cper * (c1 + c2 + c3) / pv + L * nper * (nper + 1) * rn2 / pv
BlakeOrszagBondConvexity = convper / (coupyr ^ 2)End Function這個代碼的作用是生成了計算(年度)凸性的公式BlakeOrszagBondConvexity(當然你也可以給這個公式換個名字,只要在代碼裡面改掉就可以,記得保持一致),在凸性單元格輸入公式:=BlakeOrszagBondConvexity(L,cpct,nowyr,zeroyr,coupyr,ytm),就可以自動得到凸性的值啦,任你怎麼改債券的基本信息。引自金融久期及凸性計算題
Convexity = [(V+) + (V-) - 2(V0)] / [2 (V0) (delta yield)^2]【這個公式就是普世的】
也許推導一下可以加深理解:債券的久期是價格對收益率的一階導數,凸性是價格對收益率的二階導數。convexity=(D- - D+)/delta yieldD+=(V0 - V+)/(0.5delta yield)D-=(V- - V0)/(0.5delta yield)
其中:
V+是收益率增加後的債券價格,這裡是999.53785。V-是收益率下降後的債券價格,這裡是1000.46243。V0是目前收益率下的債券價格,這裡是面值1000。delta yield是上升和下降的收益率之差,這裡是0.0002。用這個公式計算,Convexity是3.5,即G=3.5。
不是很理解非金融為啥會用到凸性推薦閱讀:
※春節後錢突然變貴!你可能不知道
※如何從債券估值來判斷一隻券的好壞?
※什麼是「雙評級制度」?是否能解決評級機構的惡性競爭?
※羅斯柴爾德家族真的像《貨幣戰爭》中描述的那麼厲害嗎?