- 债券:(是一种低风险的投资渠道,但不适合长期持有(其一 久期,其二 贴现率)
- 债券估计值:
- 期利率 > 贴现率 债券才是赚钱(期利率 - 贴现率)
- 风险:
- 时间越长,久期越大(久期:时间越长,时间里所含不确定性因素越多风险越大)
- 例如:十年的债券久期比三年债券的久期大(风险系数相对要高)
- 价值:
- 含权债的久期和凸性是变动的
- 先看久期再比较凸性,凸性大的比较好
- 曲度是好的:债券越“曲”,在利率变动时候赚的钱越多
- Bond A 凸度最大 最好(随利率上升跌的少,随利率下降涨的多,影响利率的主要因素:加息降息,降存准...)
#举例:某债券面值100元,票面利率5%,每年付息,期限2年。如果到期收益率为6%,那么债券的久期为多少?
# 久期:1.9519
# 含权债的久期和凸性一直在变动
# 久期随时间变化,时间越长,久期越大,所含不确定因素越多
# 相同久期下凸性越大越好
F=int(input("请输入票面价格 F="))
R=float(input('请输入票面利率 R='))
n=int(input('请输入年付息次数 n='))
r=float(input('请输入到期收益率 r='))
T=int(input('请输入债券的期限 T='))
import math
t=T*n #计算一共有几期
C=F*R/n #计算每期利息
r0=r/n #表示每期的到期收益率
a=math.pow(1+r0,t) #计算1+r/n的t次方,用a代替他
P=C*(1-1/a)/r0+F/a #计算债券的现值
#下面是计算凸性的部分
x=1 #期数
s=0
while x<=t:
b=math.pow(1+r0,x)
CP=C/b #计算每期利息的现值
Q=CP/P #计算利息现值占债券现值的比例
c=x*(x+1)
M=Q*c
s=s+M #所有利息权重的加总
x=x+1
q=F/a/P #计算面值贴现后占现值的比列
d=t*(t+1)
s0=q*d
S=s+s0
print(S) #利息与面值的现值的权重
e=math.pow(1+r0,2)
L=S/e #得出凸性
print('这个债券的凸性为:L=',L)
#下面是计算久期的部分
i=1 #期数
j=0
while i<=t:
w=math.pow(1+r0,i)
DP=C/w #计算每期利息的现值
U=DP/P #计算利息现值占债券现值的比例
N=U*i
j=j+N #所有利息权重的加总
i=i+1
v=F/a/P
j1=v*t
J=j1+j
print('债券的久期为:J=',J)