志远——久期和凸性

  • 债券:(是一种低风险的投资渠道,但不适合长期持有(其一 久期,其二 贴现率)
    • 债券估计值:
      • 期利率:债券升值赚的系数
      • 贴现率:货币的通货膨胀的贬值系数
      • 期利率 > 贴现率 债券才是赚钱(期利率 - 贴现率)
      • 所以说慢速货币的通货膨胀也是影响因素
    • 风险:
      • 时间越长,久期越大(久期:时间越长,时间里所含不确定性因素越多风险越大)
      • 例如:十年的债券久期比三年债券的久期大(风险系数相对要高)
    • 价值:
      • 含权债的久期和凸性是变动的
      • 先看久期再比较凸性,凸性大的比较好
      • 曲度是好的:债券越“曲”,在利率变动时候赚的钱越多
      • 反之,“负曲度”是不好的,即凹度不好
      • 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)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据提供的引用内容,可以使用以下步骤在Matlab中计算图像轮廓的度: 1. 读取图像并转换为灰度图像。 2. 对灰度图像进行阈值化处理,得到二值图像。 3. 对二值图像进行膨胀处理,使图像中的轮廓更明显。 4. 使用边缘检测算法(如Canny算法)提取图像的边缘。 5. 使用cv.convexHull函数计算图像边缘的包。 6. 计算包的面积和轮廓的长度。 7. 根据包的面积和轮廓的长度计算轮廓的度。 以下是一个Matlab示例代码,演示了如何计算图像轮廓的度: ```matlab % 读取图像并转换为灰度图像 img = imread('image.jpg'); grayImg = rgb2gray(img); % 阈值化处理得到二值图像 brightnessThreshold = 100; binBrightImg = grayImg > brightnessThreshold; % 膨胀处理 se = strel('disk', 3); dilatedImg = imdilate(binBrightImg, se); % 边缘检测 edgeImg = edge(dilatedImg); % 计算包 [B, L] = bwboundaries(edgeImg, 'noholes'); convexHull = cellfun(@(x) convhull(x(:,2), x(:,1)), B, 'UniformOutput', false); % 计算度 convexity = cellfun(@(x) polyarea(x(:,2), x(:,1)) / length(x), convexHull); % 显示结果 imshow(img); hold on; for k = 1:length(B) boundary = B{k}; plot(boundary(:,2), boundary(:,1), 'r', 'LineWidth', 2); text(boundary(1,2), boundary(1,1), sprintf('%.2f', convexity(k)), 'Color', 'y'); end hold off; ``` 请注意,上述代码仅为示例,实际应用中可能需要根据具体情况进行调整和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值