债券估值——中级

 1 Sec 64 MB |  显示标签
1741
通过提交

题目描述

szz在浙师大上学,由于每学期生活费是一次性打给他的,如果不好好安排,到学期末,就只能喝凉水度日了。为了更好地利用这些生活费,szz决定去投资债券。
在市场上,有三种债券
a).贴现债券
贴现债券是折现债券。是指债券券面上不附有息票,即在票面上不规定利率,发行时按规定的折扣率,以低于债券面值的价格发行,到期按面值支付本息的债券。
b).附息债券
附息债券是指在债券券面上附有息票的债券。息票上标有利息额、支付利息的期限。持有人可从债券上剪下息票,并据此领取利息。附息债券的利息支付方式一般会在偿还期内按期付息,如每半年或一年付息一次,在最后一期支付利息时,同时偿还本金。
c).息票累积债券
与附息债券相似,这类债券也规定了票面利率,但是,债券持有人必须在债券到期 时一次性获得本息,存续期间没有利息支付。
szz了解到债券的估值可以用下面的模型:


式中: P——债券理论价格;
T——债券去到期日时间长短;
t——现金流到达时间;
C——现金流金额;
γ——贴现率。
例1:对于一年期的贴现债券A;以¥96发行,票面价值¥100;设 γ1=4%(以下均设 γ1==4%),有:


例2:对于二年期的附息债券B;票面利率3.5%,按年付息;设 γ2=4%(以下均设 γ2=4%),有:

例3:对于二年期的息票累积债券C;票面利率3.5%;有:

为了简化问题,我们只考虑债券到期日时间在m年之内的债券(szz当然不会去买十年后到期的债券);我们假设szz只关心债券理论价格,给你n种债券,投入本金¥1,000(几乎所有债券最低认购金额),求最大的P。

输入格式

输入数据的第一行是一个数N,表示有N组数据。
每组数据首先是一个整数m(0 < m < 24),接下来一行有m个数,表示第m年的贴现率γm ,第三行是一个整数n(0 < n < 24),接下来n行,表示有n种的债券。每行由一个字母与若干个数字组成,其中,如果字母是a代表贴现债券,接下来是其发行价格p(票面价值均为¥100),及期限t(t <= m);b代表附息债券,接下来是其利率v%,及期限t(t <= m);c代表息票累积债券,接下来是其利率v%,及期限t(t <= m)。详见样例。

输出格式

对于每组输入数据,先输出单独一行"Case #i:"(其中i表示第i组测试数据,从1开始),下一行再输出最大的P(保留4位小数)。

样例输入 #1

2
2
4 4
3
a 96 1
b 3.5 2
c 3.5 2
2
4 4
1
b 3.5 2

样例输出 #1

Case #1:
1001.5385
Case #2:
990.5695
 上传者
coach
 创建时间
2012-12-16 11:56