Matlab证券回报率,MATLAB固定收益证券笔记

月末法则

2015.2.28,半年付息。有月末法则,下次付息为2015.8.31;没有月末法则,下次付息为2015.8.28.

MATLAB默认第一种。

应计天数

计算一下天数,持有固定收益证券的时间不同,收益自然不同,时间很关键。

应计天数是指,债券起息日或上一付息日至结算日的天数,在此期间发生的利息称为应计利息。

ü  Act/Act:按照实际天数计算,分闰年;

ü  Act/360:一年360天;

ü  Act/365:一年365天;

ü  30/360(European):每月30天,每年360天,起始日或到期日为31日的改为30日;

ü  30/360(ISDA):每月30日,每年360天,起始日或到期日为31日改为30日,到期日为31日,起始日不为30日、31日,则不变;

ü  30/360(PSA):每月30日,每年360天,起始日或到期日为31日改为30日,到期日为31日,起始日不为30日、31日,则不变,2月最后一天为30日;

ü  30/360(SIA):每月30日,每年360天,起始日或到期日为31日改为30日,到期日为31日,起始日不为30日、31日,则不变,不是闰年,起始日到期日都为2月28日,则都改为30日,闰年,起始日到期日都为2月29日,则改为30日;

ü  Act/365(Japanese):每月30天,每年365天,不考虑闰年;

概念就到这里,关键是怎么使用Matlab计算:

Act/360的调用:daysact360(startday,endday)

30E/360的调用:daysact360e(startday,endday)

30/360(ISDA)的调用:daysact360isda(startday,endday)

30/360(PSA)的调用:daysact360psa(startday,endday)

例1.计算2000.1.1到2000.3.1的间隔天数,采用上述不同的法则。

PS:daysif函数——daysdif - Days between dates for any day-count basis.

NumDays = daysdif(StartDate, EndDate,Basis) returns the number of days between dates StartDate and EndDate using thegiven day-count basis.

basis=0 1 2 3 4 5 6 7,默认为0计算债券距离到期日还需要支付的票息次数

函数cpncount

NumCouponsRemaining= cpncount(Settle,  Maturity, Period,  Basis,  EndMonthRule,  IssueDate, FirstCouponDate,  LastCouponDate)

参数含义:

NumCouponsRemaining剩余的票息支付次数

Settle债券结算日

Maturity债券到期日

Period年付息次数

Basis应计天数的计算法则

EndMonthRule月末法则(0或1,1为default)

IssueDate发行日

FirstCouponDate首次支付票息日期

LastCouponDate最后一次支付票息日期

例2.债券结算日1997.9.14,到期日分别是2000.9.30、2001.10.31、2002.11.30,问债券支付利息的次数。计算前一个票息支付日

函数cpndatep

PreviousCouponDate= cpndatep(Settle, Maturity, Period, Basis, EndMonthRule, IssueDate,FirstCouponDate, LastCouponDate)

例3.债券结算日1997.9.14,到期日分别是2000.9.30、2001.10.31、2002.11.30,计算前一个票息支付日。

l  计算下一个票息支付日

函数cpndaten

PreviousCouponDate=cpndaten(Settle,Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate,LastCouponDate)

例4.债券结算日1997.9.14,到期日分别是2000.9.30、2001.10.31、2002.11.30,计算下一个票息支付日。

计算债券现金流

函数cfdates

CFlowDates=cfdates(Settle,Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate,LastCouponDate, StartDate)

例5.债券结算日1997.9.14,到期日分别是2000.9.30、2001.10.31、2002.11.30,计算现金流日期。

函数datestr的用法DateString = datestr(t)

MATLAB函数 会将 datetime 数组 t 中的日期时间值转换为表示日期和时间的文本。datestr 返回包含 m 行的字符数组,其中 m 是 t 中的日期时间值的总数。

【课程简介】 本课程适合所有对金融知识和MATLAB感兴趣的同学,通过本课程,你不仅可以学习到如何应用MATLAB,还可以学习到如何使用MATLAB进行金融数据处理与金融数据分析 【完整课程列表】 基于MATLAB的金融数据分析 金融MATLAB-第01,02章 金融市场与金融产品 MATLAB基础知识(共47页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第03章 MATLAB与Excel文件的数据交换(共41页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第05章 贷款按揭与保险产品 现金流分析案例(共44页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第06章 随机模拟 概率分布与随机数(共33页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第07章 cftool数据拟合 GDP与用电量增速分析(共22页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第08章 策略模拟 组合保险策略分析(共32页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第09章 KMV模型求解 方程与方程组的数值解(共31页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第10章 期权定价模型与数值方法(共23页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第12章 马克维兹均值 方差模型(共19页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第13章 投资组合绩效(共22页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第17章 固定收益证券的久期与凸度(共12页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第18章 利率的期限结构(共7页).ppt 基于MATLAB的金融数据分析 金融MATLAB-第22章 技术分析 指标计算与绘图(共8页).ppt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值