资源预览内容
第1页 / 共41页
第2页 / 共41页
第3页 / 共41页
第4页 / 共41页
第5页 / 共41页
第6页 / 共41页
第7页 / 共41页
第8页 / 共41页
第9页 / 共41页
第10页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第二讲第二讲 固定收益证券的固定收益证券的matlabmatlab计算计算吴义能吴义能TEL: 15387002178TEL: 15387002178QQ: 294808610QQ: 294808610E-mail: E-mail: wuyineng2003163.comwuyineng2003163.com第一节第一节 固定收益基本知识固定收益基本知识固定收益证券固定收益证券: : 一组稳定现金流的证券一组稳定现金流的证券. .广义上还包括广义上还包括了债券市场上的衍生产品及优先股了债券市场上的衍生产品及优先股. .以债券为以债券为主主. .一一. . 固定收益的品种固定收益的品种国债是固定收益的重要形式国债是固定收益的重要形式, ,以贴现债券以贴现债券(discount security)(discount security)与息票债券与息票债券(coupon (coupon bonds)bonds)两种形式发行两种形式发行. .美国的固定收益证券可以分为以下几个品种美国的固定收益证券可以分为以下几个品种:1. (1. (1. (1. (短期短期短期短期) ) ) )国库券国库券国库券国库券(Treasury bills, T-bills)(Treasury bills, T-bills)(Treasury bills, T-bills)(Treasury bills, T-bills)期限小于一年期限小于一年期限小于一年期限小于一年, , , ,贴现发行贴现发行贴现发行贴现发行, , , ,面值面值面值面值usu. 110usu. 110usu. 110usu. 110万美元万美元万美元万美元. . . .是流是流是流是流动性最高的债券品种,违约风险小,其利率动性最高的债券品种,违约风险小,其利率动性最高的债券品种,违约风险小,其利率动性最高的债券品种,违约风险小,其利率usuusuusuusu当作无当作无当作无当作无风险利率。风险利率。风险利率。风险利率。2 2 2 2政府票据(政府票据(政府票据(政府票据(Treasury notes, T-notesTreasury notes, T-notesTreasury notes, T-notesTreasury notes, T-notes)即美国中期国债,期限即美国中期国债,期限即美国中期国债,期限即美国中期国债,期限110110110110年,是年,是年,是年,是coupon.coupon.coupon.coupon.3. 3. 3. 3. 长期国债(长期国债(长期国债(长期国债(Treasury bonds, T-bondsTreasury bonds, T-bondsTreasury bonds, T-bondsTreasury bonds, T-bonds)期限期限期限期限10101010年,面值年,面值年,面值年,面值110110110110万美元,是万美元,是万美元,是万美元,是coupon.coupon.coupon.coupon.4 4 4 4零息票债券(零息票债券(零息票债券(零息票债券(Zero-coupon bondZero-coupon bondZero-coupon bondZero-coupon bond)零息票债券是指买卖价格相对面值有较大折让的企业零息票债券是指买卖价格相对面值有较大折让的企业零息票债券是指买卖价格相对面值有较大折让的企业零息票债券是指买卖价格相对面值有较大折让的企业或市政债券。或市政债券。或市政债券。或市政债券。 本息剥离式国债本息剥离式国债零息票债券往往由附息债券所零息票债券往往由附息债券所零息票债券往往由附息债券所零息票债券往往由附息债券所”剥离剥离剥离剥离”出来出来出来出来: : : :购购购购买息票国债的经纪人可以要求财政部停止债券的买息票国债的经纪人可以要求财政部停止债券的买息票国债的经纪人可以要求财政部停止债券的买息票国债的经纪人可以要求财政部停止债券的现金支付现金支付现金支付现金支付, , , ,使其成为独立证券序列使其成为独立证券序列使其成为独立证券序列使其成为独立证券序列, , , ,这时每一证券这时每一证券这时每一证券这时每一证券都具有获得原始债券收益的要求权都具有获得原始债券收益的要求权都具有获得原始债券收益的要求权都具有获得原始债券收益的要求权. . . . 如一张如一张如一张如一张10101010年期国债被剥离成年期国债被剥离成年期国债被剥离成年期国债被剥离成20202020张半年期债券张半年期债券张半年期债券张半年期债券, , , ,每每每每张都可视为零息票张都可视为零息票张都可视为零息票张都可视为零息票, , , ,它们到期日从它们到期日从它们到期日从它们到期日从6 6 6 6个月到个月到个月到个月到10101010年不年不年不年不等等等等, , , ,最后本多支付是另一张零息证券最后本多支付是另一张零息证券最后本多支付是另一张零息证券最后本多支付是另一张零息证券, , , ,所有的支付所有的支付所有的支付所有的支付都单独计算都单独计算都单独计算都单独计算, , , ,并配有自己的并配有自己的并配有自己的并配有自己的CUSIPCUSIPCUSIPCUSIP号码号码号码号码 由于这种债券息票被由于这种债券息票被由于这种债券息票被由于这种债券息票被“剥离剥离剥离剥离”了了了了, , , ,因此被称为本因此被称为本因此被称为本因此被称为本息剥离式国债息剥离式国债息剥离式国债息剥离式国债STRIPSSTRIPSSTRIPSSTRIPS(separate(separate(separate(separate trading of trading of trading of trading of registered interest and principal of registered interest and principal of registered interest and principal of registered interest and principal of securities). securities). securities). securities). 5. 5. 5. 5. 美国美国美国美国CDCDCDCD存单存单存单存单美国美国美国美国CDCDCDCD存单存单存单存单(certificate deposit): (certificate deposit): (certificate deposit): (certificate deposit): 由银行等金由银行等金由银行等金由银行等金融机构向存款人发行的证券融机构向存款人发行的证券融机构向存款人发行的证券融机构向存款人发行的证券, , , ,存单上标有一个到期存单上标有一个到期存单上标有一个到期存单上标有一个到期日和利率日和利率日和利率日和利率, , , ,并且以任意面值发行并且以任意面值发行并且以任意面值发行并且以任意面值发行, , , ,可以买卖可以买卖可以买卖可以买卖, , , , 偿还期偿还期偿还期偿还期限小于限小于限小于限小于1 1 1 1年年年年. . . .6. 6. 6. 6. 回购协议回购协议回购协议回购协议(repurchase agreement)(repurchase agreement)(repurchase agreement)(repurchase agreement)是短期抵押贷款是短期抵押贷款是短期抵押贷款是短期抵押贷款. . . . 指一方向另一方出售证券的同指一方向另一方出售证券的同指一方向另一方出售证券的同指一方向另一方出售证券的同时时时时, , , ,承诺在未来的某一天按协定的价格将相同的证承诺在未来的某一天按协定的价格将相同的证承诺在未来的某一天按协定的价格将相同的证承诺在未来的某一天按协定的价格将相同的证券买回券买回券买回券买回, , , ,通常由借款方发起并贷出证券通常由借款方发起并贷出证券通常由借款方发起并贷出证券通常由借款方发起并贷出证券, , , ,回购中涉及回购中涉及回购中涉及回购中涉及的证券通常具有较高的信用质量的证券通常具有较高的信用质量的证券通常具有较高的信用质量的证券通常具有较高的信用质量. . . .回购协议的步骤回购协议的步骤回购协议的步骤回购协议的步骤: : : : (1) (1) (1) (1) 以债券作为抵押借入资金以债券作为抵押借入资金以债券作为抵押借入资金以债券作为抵押借入资金; ; ; ;(2) (2) (2) (2) 经过一段时间经过一段时间经过一段时间经过一段时间, , , ,按照约定的价格买回抵押债券按照约定的价格买回抵押债券按照约定的价格买回抵押债券按照约定的价格买回抵押债券. . . .7. 7. 7. 7. 可转换债券可转换债券可转换债券可转换债券(convertible security)(convertible security)(convertible security)(convertible security)可转换债券可转换债券可转换债券可转换债券( ( ( (简称可转债简称可转债简称可转债简称可转债) ) ) )是一种具有固定是一种具有固定是一种具有固定是一种具有固定收益的证券收益的证券收益的证券收益的证券, , , ,其特点是持有者可以转换为普其特点是持有者可以转换为普其特点是持有者可以转换为普其特点是持有者可以转换为普通股股票通股股票通股股票通股股票, , , ,在合约的条款中规定了可转换债在合约的条款中规定了可转换债在合约的条款中规定了可转换债在合约的条款中规定了可转换债券转换为普通股的条件券转换为普通股的条件券转换为普通股的条件券转换为普通股的条件, , , ,持有者决定何时转持有者决定何时转持有者决定何时转持有者决定何时转换为股票换为股票换为股票换为股票. . . .可转换债券介于普通股和普通债券之间可转换债券介于普通股和普通债券之间可转换债券介于普通股和普通债券之间可转换债券介于普通股和普通债券之间, , , ,故故故故又称股票类连接证券又称股票类连接证券又称股票类连接证券又称股票类连接证券. . . .可转债属于次级债券可转债属于次级债券可转债属于次级债券可转债属于次级债券, , , ,如果企业破产如果企业破产如果企业破产如果企业破产, , , ,满足满足满足满足要求权的次序是要求权的次序是要求权的次序是要求权的次序是: : : :优先债权优先债权优先债权优先债权次级债次级债次级债次级债可转可转可转可转债债债债优先股优先股优先股优先股普通股普通股普通股普通股. . . .8. 8. 8. 8. 浮动利率债券浮动利率债券浮动利率债券浮动利率债券(FRN)(FRN)(FRN)(FRN)浮动利率债券浮动利率债券浮动利率债券浮动利率债券(FRN, floating rate (FRN, floating rate (FRN, floating rate (FRN, floating rate notes)notes)notes)notes)是偿还期内利率发生变化的债券是偿还期内利率发生变化的债券是偿还期内利率发生变化的债券是偿还期内利率发生变化的债券. . . . 浮动利率债券具有以下几个特征浮动利率债券具有以下几个特征浮动利率债券具有以下几个特征浮动利率债券具有以下几个特征: : : : 规定了利率上限与利率下限规定了利率上限与利率下限规定了利率上限与利率下限规定了利率上限与利率下限 基准利率大多为基准利率大多为基准利率大多为基准利率大多为LIBORLIBORLIBORLIBOR,也可为汇率、,也可为汇率、,也可为汇率、,也可为汇率、股票指数、债券指数等;股票指数、债券指数等;股票指数、债券指数等;股票指数、债券指数等; 利率可以正向浮动,也可以反向浮动。利率可以正向浮动,也可以反向浮动。利率可以正向浮动,也可以反向浮动。利率可以正向浮动,也可以反向浮动。二固定收益相关概念二固定收益相关概念1 1 1 1交易日(交易日(交易日(交易日(trade date)trade date)trade date)trade date)交易日就是买卖双方达成交易的日期。但实际情况可交易日就是买卖双方达成交易的日期。但实际情况可交易日就是买卖双方达成交易的日期。但实际情况可交易日就是买卖双方达成交易的日期。但实际情况可能比这更复杂。能比这更复杂。能比这更复杂。能比这更复杂。2 2 2 2结算日(结算日(结算日(结算日(Settlement Date)Settlement Date)Settlement Date)Settlement Date)指买入方支付价格和卖出方交割证券的日期。美国国指买入方支付价格和卖出方交割证券的日期。美国国指买入方支付价格和卖出方交割证券的日期。美国国指买入方支付价格和卖出方交割证券的日期。美国国债交割日为交易之后第一个营业日(债交割日为交易之后第一个营业日(债交割日为交易之后第一个营业日(债交割日为交易之后第一个营业日(T+1T+1T+1T+1)。)。)。)。交割日也可以由交易者之间商定,如果交割日刚好支交割日也可以由交易者之间商定,如果交割日刚好支交割日也可以由交易者之间商定,如果交割日刚好支交割日也可以由交易者之间商定,如果交割日刚好支付利息,则债券当天出售者获得当天的利息支付,而债付利息,则债券当天出售者获得当天的利息支付,而债付利息,则债券当天出售者获得当天的利息支付,而债付利息,则债券当天出售者获得当天的利息支付,而债券的购买者获得其余款项。券的购买者获得其余款项。券的购买者获得其余款项。券的购买者获得其余款项。有时通过有时通过有时通过有时通过Fed WineFed WineFed WineFed Wine机构交割证券,交易日即为交割日。机构交割证券,交易日即为交割日。机构交割证券,交易日即为交割日。机构交割证券,交易日即为交割日。3 3 3 3到期日(到期日(到期日(到期日(Maturity)Maturity)Maturity)Maturity)指固定收益证券债务合约终止的日期。指固定收益证券债务合约终止的日期。指固定收益证券债务合约终止的日期。指固定收益证券债务合约终止的日期。4 4 4 4本金(本金(本金(本金(PrincipalPrincipalPrincipalPrincipal)本金有时称面值本金有时称面值本金有时称面值本金有时称面值( ( ( (par value)par value)par value)par value),是指固定收益票面金额,是指固定收益票面金额,是指固定收益票面金额,是指固定收益票面金额5 5 5 5票面利率(票面利率(票面利率(票面利率(Coupon rateCoupon rateCoupon rateCoupon rate)即发行人支付给持有人的利息,有时也称名义利率即发行人支付给持有人的利息,有时也称名义利率即发行人支付给持有人的利息,有时也称名义利率即发行人支付给持有人的利息,有时也称名义利率(nominal ratenominal ratenominal ratenominal rate). . . .票面利率一般指按照单利计算的年利息率,利息支付票面利率一般指按照单利计算的年利息率,利息支付票面利率一般指按照单利计算的年利息率,利息支付票面利率一般指按照单利计算的年利息率,利息支付的频率不同,实际利率当然就不同。的频率不同,实际利率当然就不同。的频率不同,实际利率当然就不同。的频率不同,实际利率当然就不同。6 6 6 6月末法则(月末法则(月末法则(月末法则(end of month rulerend of month rulerend of month rulerend of month ruler)指当债券到期日在某月的最后一天,而且该月天数小指当债券到期日在某月的最后一天,而且该月天数小指当债券到期日在某月的最后一天,而且该月天数小指当债券到期日在某月的最后一天,而且该月天数小于于于于30303030天,这时有两种情况:天,这时有两种情况:天,这时有两种情况:天,这时有两种情况: 到期日在每月固定日期支付;到期日在每月固定日期支付;到期日在每月固定日期支付;到期日在每月固定日期支付;票息在每月的最票息在每月的最票息在每月的最票息在每月的最后一天支付。后一天支付。后一天支付。后一天支付。MatlabMatlabMatlabMatlab默认的是第默认的是第默认的是第默认的是第种情况。种情况。种情况。种情况。如:今天如:今天如:今天如:今天2011201120112011年年年年2 2 2 2月月月月28282828日,半每付息制,下一次发息日,半每付息制,下一次发息日,半每付息制,下一次发息日,半每付息制,下一次发息日可能是日可能是日可能是日可能是2011201120112011年年年年8 8 8 8月月月月28282828日,也可能是日,也可能是日,也可能是日,也可能是2011201120112011年年年年8 8 8 8月月月月31313131日,日,日,日,如果不用月末法则就是前者,如果用月末法则就是后如果不用月末法则就是前者,如果用月末法则就是后如果不用月末法则就是前者,如果用月末法则就是后如果不用月末法则就是前者,如果用月末法则就是后者。者。者。者。7 7 7 7起息日到交割日的天数(起息日到交割日的天数(起息日到交割日的天数(起息日到交割日的天数(DCSDCSDCSDCS)DSMDSMDSMDSM:days from coupon to settlement)days from coupon to settlement)days from coupon to settlement)days from coupon to settlement):指从计息日(含)到交割日(不含)之间:指从计息日(含)到交割日(不含)之间:指从计息日(含)到交割日(不含)之间:指从计息日(含)到交割日(不含)之间的天数。注意,付息日作为下一个利息期限的天数。注意,付息日作为下一个利息期限的天数。注意,付息日作为下一个利息期限的天数。注意,付息日作为下一个利息期限的第一天而不计入的第一天而不计入的第一天而不计入的第一天而不计入DCSDCSDCSDCS。8 8 8 8交割日距离到期日的天数(交割日距离到期日的天数(交割日距离到期日的天数(交割日距离到期日的天数(DSMDSMDSMDSM)DSMDSMDSMDSM:days from settlement to days from settlement to days from settlement to days from settlement to maturity)maturity)maturity)maturity):其一般规则是包括交割日而不:其一般规则是包括交割日而不:其一般规则是包括交割日而不:其一般规则是包括交割日而不包括到期日。包括到期日。包括到期日。包括到期日。 第二节第二节 应计天数简介应计天数简介应计天数是指,债券起息日或上一付息日至结算日的天数,在应计天数是指,债券起息日或上一付息日至结算日的天数,在应计天数是指,债券起息日或上一付息日至结算日的天数,在应计天数是指,债券起息日或上一付息日至结算日的天数,在此期间发生的利息称为应计利息,此期间发生的利息称为应计利息,此期间发生的利息称为应计利息,此期间发生的利息称为应计利息,matlabmatlabmatlabmatlab中可用中可用中可用中可用help help help help daysdifdaysdifdaysdifdaysdif代代代代码查看。码查看。码查看。码查看。 help help daysdifdaysdif DAYSDIF Days between dates for any day count basis. DAYSDIF Days between dates for any day count basis. DAYSDIF returns the number of days between D1 and D2 DAYSDIF returns the number of days between D1 and D2 using the given day count basis. Enter dates as serial date using the given day count basis. Enter dates as serial date numbers or date strings.numbers or date strings. D = daysdif(D1, D2)D = daysdif(D1, D2) D = daysdif(D1, D2, Basis) D = daysdif(D1, D2, Basis) Optional Inputs: Compounding, Basis Optional Inputs: Compounding, Basis Inputs: Inputs: D1 - Scalar or Vector of dates. D1 - Scalar or Vector of dates. D2 - Scalar or Vector of dates. D2 - Scalar or Vector of dates. Optional Inputs:Optional Inputs:Optional Inputs:Optional Inputs: Basis - Scalar or Vector of day-count Basis - Scalar or Vector of day-count Basis - Scalar or Vector of day-count Basis - Scalar or Vector of day-count basis.basis.basis.basis. Valid Basis are: Valid Basis are: Valid Basis are: Valid Basis are: 0 = actual/actual (default) 0 = actual/actual (default) 0 = actual/actual (default) 0 = actual/actual (default) 1 = 30/360 1 = 30/360 1 = 30/360 1 = 30/360 (SIASIASIASIA) 2 = actual/3602 = actual/3602 = actual/3602 = actual/360 3 = actual/365 3 = actual/365 3 = actual/365 3 = actual/365 (NEW) 4 - 30/360 (PSA compliant) (NEW) 4 - 30/360 (PSA compliant) (NEW) 4 - 30/360 (PSA compliant) (NEW) 4 - 30/360 (PSA compliant) (NEW) 5 - 30/360 (ISDA compliant) (NEW) 5 - 30/360 (ISDA compliant) (NEW) 5 - 30/360 (ISDA compliant) (NEW) 5 - 30/360 (ISDA compliant) (NEW) 6 - 30/360 (European) (NEW) 6 - 30/360 (European) (NEW) 6 - 30/360 (European) (NEW) 6 - 30/360 (European) (NEW) 7 - act/365 (Japanese) (NEW) 7 - act/365 (Japanese) (NEW) 7 - act/365 (Japanese) (NEW) 7 - act/365 (Japanese) 实务中计算方法如下:实务中计算方法如下:实务中计算方法如下:实务中计算方法如下:1.Act/Act:1.Act/Act:按照实际天数计算,分平闰年;按照实际天数计算,分平闰年;按照实际天数计算,分平闰年;按照实际天数计算,分平闰年;2.Act/360:2.Act/360:一年一年一年一年360360天;天;天;天;3.Act/365:3.Act/365:一年一年一年一年365365天;天;天;天;4.30/360(European):4.30/360(European):每月每月每月每月3030天,每年天,每年天,每年天,每年360360天,起始日或天,起始日或天,起始日或天,起始日或到期日为到期日为到期日为到期日为3131日的改为日的改为日的改为日的改为3030日;日;日;日;5.30/360(ISDA):5.30/360(ISDA):每月每月每月每月3030日,每年日,每年日,每年日,每年360360天,起始日或到期天,起始日或到期天,起始日或到期天,起始日或到期日为日为日为日为3131日改为日改为日改为日改为3030日,到期日为日,到期日为日,到期日为日,到期日为3131日,起始日不为日,起始日不为日,起始日不为日,起始日不为3030日、日、日、日、3131日,则不变;日,则不变;日,则不变;日,则不变;6.30/360(PSA):6.30/360(PSA):每月每月每月每月3030日,每年日,每年日,每年日,每年360360天,起始日或到期天,起始日或到期天,起始日或到期天,起始日或到期日为日为日为日为3131日改为日改为日改为日改为3030日,到期日为日,到期日为日,到期日为日,到期日为3131日,起始日不为日,起始日不为日,起始日不为日,起始日不为3030日、日、日、日、3131日,则不变,日,则不变,日,则不变,日,则不变,2 2月最后一天为月最后一天为月最后一天为月最后一天为3030日;日;日;日;7.30/360(SIA):7.30/360(SIA):每月每月每月每月3030日,每年日,每年日,每年日,每年360360天,起始日或到期天,起始日或到期天,起始日或到期天,起始日或到期日为日为日为日为3131日改为日改为日改为日改为3030日,到期日为日,到期日为日,到期日为日,到期日为3131日,起始日不为日,起始日不为日,起始日不为日,起始日不为3030日、日、日、日、3131日,则不变,不是闰年,起始日到期日都为日,则不变,不是闰年,起始日到期日都为日,则不变,不是闰年,起始日到期日都为日,则不变,不是闰年,起始日到期日都为2 2月月月月2828日,日,日,日,则都改为则都改为则都改为则都改为3030日,闰年,起始日到期日都为日,闰年,起始日到期日都为日,闰年,起始日到期日都为日,闰年,起始日到期日都为2 2月月月月2929日,则日,则日,则日,则改为改为改为改为3030日;日;日;日;8.Act/365(Japanese):8.Act/365(Japanese):每月每月每月每月3030天,每年天,每年天,每年天,每年365365天,不考虑闰年;天,不考虑闰年;天,不考虑闰年;天,不考虑闰年;由于各计数法则之间太难区别,我们只讲由于各计数法则之间太难区别,我们只讲由于各计数法则之间太难区别,我们只讲由于各计数法则之间太难区别,我们只讲matlabmatlab的用法:的用法:的用法:的用法:格式:格式:格式:格式:NumDaysNumDays: = : = daysdiff(StrateDatedaysdiff(StrateDate, , EndDateEndDate, Basis), Basis)日期的格式可以是:纯数字日期的格式可以是:纯数字日期的格式可以是:纯数字日期的格式可以是:纯数字 月月月月/ /日日日日/ /年年年年 的形式,的形式,的形式,的形式,如如如如3/1/19993/1/1999表示表示表示表示19991999年年年年3 3月月月月1 1日,也可以是数字加英日,也可以是数字加英日,也可以是数字加英日,也可以是数字加英文月份的前三个字母,这时按日文月份的前三个字母,这时按日文月份的前三个字母,这时按日文月份的前三个字母,这时按日- -月月月月- -年来排,如年来排,如年来排,如年来排,如1-1-Mar-1999,Mar-1999,在在在在matlabmatlab 2010b 2010b版本中版本中版本中版本中, ,也支持也支持也支持也支持” “” “英英英英文月前三字母文月前三字母文月前三字母文月前三字母- -日(数字)日(数字)日(数字)日(数字)- -年(数字)年(数字)年(数字)年(数字)” ”的形式的形式的形式的形式。例例例例1 1: 计算计算计算计算Act/ActAct/Act法则之下法则之下法则之下法则之下20072007年年年年2 2月月月月2727日至日至日至日至20072007年年年年3 3月月月月3131日之间的天数。日之间的天数。日之间的天数。日之间的天数。代码代码代码代码1 1: StartDateStartDate=27-Feb-2007;=27-Feb-2007; EndDateEndDate=31-Mar-2007;=31-Mar-2007; Basis=0; Basis=0; StartDateStartDate=27-Feb-2007;=27-Feb-2007; NumDaysNumDays= =daysdif(StartDate,EndDate,Basisdaysdif(StartDate,EndDate,Basis) )NumDaysNumDays = = 32 32代码代码代码代码2 2:StartDateStartDate=2/27/2007; =2/27/2007; EndDateEndDate=3/31/2007;=3/31/2007;Basis=0;Basis=0;NumDaysNumDays= =daysdif(StartDatdaysdif(StartDate,EndDate,Basise,EndDate,Basis) )NumDaysNumDays = =3232代码代码代码代码3 3:daysdif(2/27/2007,3/31/2007,0)daysdif(2/27/2007,3/31/2007,0)ansans = 32 = 32例例例例2 2 2 2:请分别用:请分别用:请分别用:请分别用30E/36030E/36030E/36030E/360,ISDAISDAISDAISDA,PSAPSAPSAPSA,SIASIASIASIA法计算例法计算例法计算例法计算例1 1 1 1中中中中的应计天数。的应计天数。的应计天数。的应计天数。解:解:解:解:30E/36030E/360,ISDAISDA,PSAPSA,SIASIA对对对对basisbasis代码分别是:代码分别是:代码分别是:代码分别是:E_DaysE_Days=daysdif(2/27/2007,3/31/2007,6)=daysdif(2/27/2007,3/31/2007,6)E_DaysE_Days = 33 = 33 ISDA_DaysISDA_Days=daysdif(2/27/2007,3/31/2007,5)=daysdif(2/27/2007,3/31/2007,5)ISDA_DaysISDA_Days = 34 = 34 PSA_DaysPSA_Days=daysdif(2/27/2007,3/31/2007,4)=daysdif(2/27/2007,3/31/2007,4)PSA_DaysPSA_Days = 34 = 34 SIA_DaysSIA_Days=daysdif(2/27/2007,3/31/2007,1)=daysdif(2/27/2007,3/31/2007,1)SIA_DaysSIA_Days = 34 = 34由于由于由于由于matlabmatlab实际上是矩阵的计算,所以变量多可为向实际上是矩阵的计算,所以变量多可为向实际上是矩阵的计算,所以变量多可为向实际上是矩阵的计算,所以变量多可为向量形式,如我们可以把量形式,如我们可以把量形式,如我们可以把量形式,如我们可以把StrateDateStrateDate和和和和EndDateEndDate写成列向写成列向写成列向写成列向量,一次输入多个起始日和到期日。在此,一般用列向量,一次输入多个起始日和到期日。在此,一般用列向量,一次输入多个起始日和到期日。在此,一般用列向量,一次输入多个起始日和到期日。在此,一般用列向量,列的间隔符号是英语分号。量,列的间隔符号是英语分号。量,列的间隔符号是英语分号。量,列的间隔符号是英语分号。例例例例3 3:计算:计算:计算:计算1998-03-011998-03-01分别至分别至分别至分别至2001-03-012001-03-01,2002-03-012002-03-01和和和和2003-03-012003-03-01之间的应计天数之间的应计天数之间的应计天数之间的应计天数(ACT/ACT)(ACT/ACT)。解:解:解:解: StartDateStartDate=3/1/1998; 3/1/1998; =3/1/1998; 3/1/1998; 3/1/1998;3/1/1998; EndDateEndDate=3/1/2001; 3/1/2002;3/1/2003;=3/1/2001; 3/1/2002;3/1/2003; NumDaysNumDays= =daysdif(StartDate,EndDatedaysdif(StartDate,EndDate) )NumDaysNumDays = = 1096 1096 1461 1461 1826 1826特别注意:特别注意:*作业作业1:请用:请用matlab计算出计算出下表中的应计天数下表中的应计天数Start-end dateSIAAct/360 PSA ISDA 30E/3602007-2-272007-3-12007-2-282007-3-12008-2-282008-3-12008-2-282009-3-1第三节第三节 应计利息、贴现与现金流应计利息、贴现与现金流一应计利息(一应计利息(Accrued interest)公式略。公式略。公式略。公式略。调用方式:调用方式:调用方式:调用方式:AccruInterestAccruInterest = = acrubond(IssueDateacrubond(IssueDate, Settle, , Settle, FirstCouponDateFirstCouponDate, Face, , Face, CouponRateCouponRate, Period, , Period, Basis)Basis)PeriodPeriod和和和和BasisBasis是可选项。是可选项。是可选项。是可选项。PeriodPeriod指付息频率。指付息频率。指付息频率。指付息频率。Period=nPeriod=n表示一年付表示一年付表示一年付表示一年付n n次息。次息。次息。次息。例例例例4 4:公司债券发行日是:公司债券发行日是:公司债券发行日是:公司债券发行日是20002000年年年年3 3月月月月1 1日,到期日为日,到期日为日,到期日为日,到期日为20062006年年年年3 3月月月月1 1日,每年支付两次利息,交割日是日,每年支付两次利息,交割日是日,每年支付两次利息,交割日是日,每年支付两次利息,交割日是20002000年年年年7 7月月月月1717日,日,日,日,息票率息票率息票率息票率10%10%,面值,面值,面值,面值100100元,交割日和下一付息日(元,交割日和下一付息日(元,交割日和下一付息日(元,交割日和下一付息日(2000-2000-09-0109-01)之间的天数按)之间的天数按)之间的天数按)之间的天数按30/36030/360(EuropeanEuropean)计息。请计)计息。请计)计息。请计)计息。请计算应计利息。算应计利息。算应计利息。算应计利息。解法一:解法一:解法一:解法一:( (人工计算人工计算人工计算人工计算) )30E/360E30E/360E制度下,半年是制度下,半年是制度下,半年是制度下,半年是180180天,交割日和下一付息天,交割日和下一付息天,交割日和下一付息天,交割日和下一付息日之间的天数日之间的天数日之间的天数日之间的天数, ,由于每月只算由于每月只算由于每月只算由于每月只算3030天天天天, ,所以是所以是所以是所以是4444天天天天. .那么该债券在本次结算时,应算从上一个付息日到交那么该债券在本次结算时,应算从上一个付息日到交那么该债券在本次结算时,应算从上一个付息日到交那么该债券在本次结算时,应算从上一个付息日到交割日之间的天数,即从割日之间的天数,即从割日之间的天数,即从割日之间的天数,即从2000-03-012000-03-01至至至至2000-7-172000-7-17之间的天之间的天之间的天之间的天数,显然这是数,显然这是数,显然这是数,显然这是180=44=136180=44=136天。天。天。天。由于每半年付一次息,其利率实为由于每半年付一次息,其利率实为由于每半年付一次息,其利率实为由于每半年付一次息,其利率实为10%/2=5%10%/2=5%,所以应该利息所以应该利息所以应该利息所以应该利息AIAI为:为:为:为:AI= 100 5% 136/180 =3.7778AI= 100 5% 136/180 =3.7778解法二:解法二:解法二:解法二:IssueDateIssueDate=3/1/2000;=3/1/2000; Settle = 17-jul-2000; Settle = 17-jul-2000; FirstCouponDateFirstCouponDate=1-sep-2000;=1-sep-2000; Face=100; Face=100; CouponRateCouponRate=0.1;=0.1; Period= 2; Period= 2; Basis=6; Basis=6;AccruInterestAccruInterest= =acrubond(IssueDateacrubond(IssueDate, Settle, , Settle, FirstCouponDateFirstCouponDate, Face, , Face, CouponRateCouponRate, Period, , Period, Basis)Basis)运行错误运行错误运行错误运行错误. .我查了一下我查了一下我查了一下我查了一下helphelp原来原来原来原来是这个是这个是这个是这个7.07.0版的版的版的版的matlabmatlab这里的这里的这里的这里的basisbasis最高只支持到最高只支持到最高只支持到最高只支持到3 3。无赖之下,。无赖之下,。无赖之下,。无赖之下,basis=6basis=6只好用只好用只好用只好用1 1来代。因为来代。因为来代。因为来代。因为1 1是是是是30/36030/360,与,与,与,与6 6的的的的30E/36030E/360较接近。较接近。较接近。较接近。AccruInterestAccruInterest= =acrubond(Issueacrubond(IssueDateDate, Settle, , Settle, FirstCouponDateFirstCouponDate, , Face, Face, CouponRateCouponRate, Period,1), Period,1)AccruInterestAccruInterest = 3.7778 = 3.7778二贴现率与票息率二贴现率与票息率格式一:格式一:格式一:格式一:Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, EndDatesEndDatesEndDatesEndDates, , , , StartDatesStartDatesStartDatesStartDates, , , , ValuationDateValuationDateValuationDateValuationDate) ) ) )where:where:where:where:ValuationDateValuationDateValuationDateValuationDate is the date of observation for which the is the date of observation for which the is the date of observation for which the is the date of observation for which the discount factors are calculated. In this particular discount factors are calculated. In this particular discount factors are calculated. In this particular discount factors are calculated. In this particular example, use February 15, 2000 as the beginning date for example, use February 15, 2000 as the beginning date for example, use February 15, 2000 as the beginning date for example, use February 15, 2000 as the beginning date for all interest-rate terms.all interest-rate terms.all interest-rate terms.all interest-rate terms.StartDatesStartDatesStartDatesStartDates = 15-Feb-2000; = 15-Feb-2000; = 15-Feb-2000; = 15-Feb-2000;EndDatesEndDatesEndDatesEndDates = 15-Aug-2000; 15-Feb-2001; 15-Aug-2001; = 15-Aug-2000; 15-Feb-2001; 15-Aug-2001; = 15-Aug-2000; 15-Feb-2001; 15-Aug-2001; = 15-Aug-2000; 15-Feb-2001; 15-Aug-2001; 15-Feb-2002; 15-Aug-2002;15-Feb-2002; 15-Aug-2002;15-Feb-2002; 15-Aug-2002;15-Feb-2002; 15-Aug-2002;Compounding = 2;ValuationDate = 15-Feb-2000;Compounding = 2;ValuationDate = 15-Feb-2000;Compounding = 2;ValuationDate = 15-Feb-2000;Compounding = 2;ValuationDate = 15-Feb-2000;Rates = 0.05; 0.056; 0.06; 0.065; 0.075;Rates = 0.05; 0.056; 0.06; 0.065; 0.075;Rates = 0.05; 0.056; 0.06; 0.065; 0.075;Rates = 0.05; 0.056; 0.06; 0.065; 0.075;Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, EndDatesEndDatesEndDatesEndDates, , , , StartDatesStartDatesStartDatesStartDates,. ,. ,. ,. ValuationDateValuationDateValuationDateValuationDate) ) ) )可见利率越高,贴现率越低可见利率越高,贴现率越低可见利率越高,贴现率越低可见利率越高,贴现率越低1.1.票息率转贴现率票息率转贴现率格式二:用期数代替起始时间格式二:用期数代替起始时间Rate2discRate2discRate2discRate2disc函数也允许用期数来把票息率转化为贴现率。函数也允许用期数来把票息率转化为贴现率。函数也允许用期数来把票息率转化为贴现率。函数也允许用期数来把票息率转化为贴现率。毕竟,在现实中,贴现多以期数来计算。函数如下,这毕竟,在现实中,贴现多以期数来计算。函数如下,这毕竟,在现实中,贴现多以期数来计算。函数如下,这毕竟,在现实中,贴现多以期数来计算。函数如下,这时相当于时相当于时相当于时相当于ValuationDateValuationDateValuationDateValuationDate为零。为零。为零。为零。Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, EndTimesEndTimesEndTimesEndTimes, , , , StartTimesStartTimesStartTimesStartTimes) ) ) ) Where:Where:Where:Where:StartTimesStartTimesStartTimesStartTimes列向量,指贴现期的起始期,一般设为列向量,指贴现期的起始期,一般设为列向量,指贴现期的起始期,一般设为列向量,指贴现期的起始期,一般设为O O O OEndTimesEndTimesEndTimesEndTimes列向量,实际上是产生现金流的期数列向量,实际上是产生现金流的期数列向量,实际上是产生现金流的期数列向量,实际上是产生现金流的期数上例也可以这样来计算:上例也可以这样来计算:上例也可以这样来计算:上例也可以这样来计算:StartTimesStartTimesStartTimesStartTimes=0;0;0;0;0; =0;0;0;0;0; =0;0;0;0;0; =0;0;0;0;0; EndTimesEndTimesEndTimesEndTimes=1;2;3;4;5;=1;2;3;4;5;=1;2;3;4;5;=1;2;3;4;5; Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, Disc = rate2disc(Compounding, Rates, EndTimesEndTimesEndTimesEndTimes, , , , StartTimesStartTimesStartTimesStartTimes) ) ) ) 格式一,用起止日格式一,用起止日格式一,用起止日格式一,用起止日: : : :Rates = disc2rate(Compounding, Disc, Rates = disc2rate(Compounding, Disc, Rates = disc2rate(Compounding, Disc, Rates = disc2rate(Compounding, Disc, EndDatesEndDatesEndDatesEndDates, , , , StartDatesStartDatesStartDatesStartDates, , , , ValuationDateValuationDateValuationDateValuationDate) ) ) ) 格式二,用期数格式二,用期数格式二,用期数格式二,用期数Rates = disc2rate(Compounding, Disc, Rates = disc2rate(Compounding, Disc, Rates = disc2rate(Compounding, Disc, Rates = disc2rate(Compounding, Disc, EndTimesEndTimesEndTimesEndTimes, , , , StartTimesStartTimesStartTimesStartTimes);););); 各变量含义同前,运行结果:各变量含义同前,运行结果:各变量含义同前,运行结果:各变量含义同前,运行结果:Rates =Rates =Rates =Rates = 0.0500 0.0500 0.0500 0.0500 0.0560 0.0560 0.0560 0.0560 0.0600 0.0600 0.0600 0.0600 0.0650 0.0650 0.0650 0.0650 0.0750 0.0750 0.0750 0.07501. 1. 贴现率转票息率贴现率转票息率disc2ratedisc2rate有五种息券,贴现率分别为有五种息券,贴现率分别为有五种息券,贴现率分别为有五种息券,贴现率分别为3%,4%,5%,6%,7%,3%,4%,5%,6%,7%,3%,4%,5%,6%,7%,3%,4%,5%,6%,7%,期限分别期限分别期限分别期限分别为为为为1 1 1 1,2 2 2 2,3 3 3 3,4 4 4 4,5 5 5 5年,一年付一次息,请计算各票的票年,一年付一次息,请计算各票的票年,一年付一次息,请计算各票的票年,一年付一次息,请计算各票的票息率(贴现)。息率(贴现)。息率(贴现)。息率(贴现)。 clear;clear;clear;clear; Compounding = 1; Compounding = 1; Compounding = 1; Compounding = 1; StartTimesStartTimesStartTimesStartTimes = 0;0;0;0;0; = 0;0;0;0;0; = 0;0;0;0;0; = 0;0;0;0;0; EndTimesEndTimesEndTimesEndTimes = 1; 2;3;4;5; = 1; 2;3;4;5; = 1; 2;3;4;5; = 1; 2;3;4;5; Disc =0.03:0.01:0.07 Disc =0.03:0.01:0.07 Disc =0.03:0.01:0.07 Disc =0.03:0.01:0.07 Rates = rate2disc(Compounding, Rates = rate2disc(Compounding, Rates = rate2disc(Compounding, Rates = rate2disc(Compounding, Disc, Disc, Disc, Disc, EndTimesEndTimesEndTimesEndTimes, , , , StartTimesStartTimesStartTimesStartTimes) ) ) )Rates =Rates =Rates =Rates = 0.97090.97090.97090.9709 0.92460.92460.92460.9246 0.86380.86380.86380.8638 0.79210.79210.79210.7921 0.71300.71300.71300.7130由于折现率太低,所以利率很高。由于折现率太低,所以利率很高。由于折现率太低,所以利率很高。由于折现率太低,所以利率很高。三、计算内部收益率三、计算内部收益率内部收益率是使投资现金流现值等于价格的收内部收益率是使投资现金流现值等于价格的收内部收益率是使投资现金流现值等于价格的收内部收益率是使投资现金流现值等于价格的收益率益率益率益率,其计算公式为:,其计算公式为:,其计算公式为:,其计算公式为:其中:其中:其中:其中:C Ci i为第为第为第为第i i年度现金流,年度现金流,年度现金流,年度现金流,P P为债券价格,为债券价格,为债券价格,为债券价格,N N为年数,为年数,为年数,为年数,r r为内部收益率。为内部收益率。为内部收益率。为内部收益率。MatlabMatlab计算函数:计算函数:计算函数:计算函数: irrirr调用方式:调用方式:调用方式:调用方式: Return = Return = irr(Cashflowirr(Cashflow) )例例例例6 6:一项投资各期现金流如上表,请计算该投:一项投资各期现金流如上表,请计算该投:一项投资各期现金流如上表,请计算该投:一项投资各期现金流如上表,请计算该投资的内部收益率是多少?资的内部收益率是多少?资的内部收益率是多少?资的内部收益率是多少?解:解:解:解: CashflowCashflow=-5000,1000,2000,3000,4000;=-5000,1000,2000,3000,4000; irr(Cashflowirr(Cashflow) )ansans = 0.2727 = 0.2727如果把这里的如果把这里的如果把这里的如果把这里的-5000-5000改成改成改成改成-4000-4000,那么,那么,那么,那么ansans=0.3825=0.3825,这很容易理解。,这很容易理解。,这很容易理解。,这很容易理解。第第0 0期期 第第1 1期期 第第2 2期期 第第3 3期期 第第4 4期期-5000-5000 10001000200020003000300040004000四、现金流现值与终值四、现金流现值与终值1 1现金流现值的计算现金流现值的计算现金流现值的计算现金流现值的计算现金流现值的计算公式是:现金流现值的计算公式是:现金流现值的计算公式是:现金流现值的计算公式是:matlabmatlab命令是命令是命令是命令是: :PesentValPesentVal= =pvvar(Cashflowpvvar(Cashflow, Rte), Rte)PesentValPesentVal= =pvvar(Cashflow,Rate,IrrCFDatespvvar(Cashflow,Rate,IrrCFDates) )其中其中其中其中: :IrrCFDatesIrrCFDates是指现金流发生的日期是指现金流发生的日期是指现金流发生的日期是指现金流发生的日期, ,RateRate是指的贴现率是指的贴现率是指的贴现率是指的贴现率. .例例例例7 7:一项投资各年的现金流如下表,贴现率为:一项投资各年的现金流如下表,贴现率为:一项投资各年的现金流如下表,贴现率为:一项投资各年的现金流如下表,贴现率为0.080.08,求其现值。,求其现值。,求其现值。,求其现值。解:解:解:解: cashflowcashflow=-=-10000,2000,1500,3000,3800,5000;10000,2000,1500,3000,3800,5000; rate =0.08; rate =0.08; pvvar(cashflow,ratepvvar(cashflow,rate) )ansans = 1.7154e+003 = 1.7154e+003 即:现值为即:现值为即:现值为即:现值为1715.41715.4。?请说说这项投资划得来吗?请说说这项投资划得来吗?请说说这项投资划得来吗?请说说这项投资划得来吗? 年份年份当前当前第第1 1年年 第第2 2年年 第第3 3年年 第第4 4年年 第第5 5年年金额金额/ /元元 -10 000-10 000 2 0002 000 1 5001 500 3 0003 000 3 8003 800 5 0005 000例例例例8: 8: 已知贴现率为已知贴现率为已知贴现率为已知贴现率为0.090.09,投资各时期的现金流如上表,投资各时期的现金流如上表,投资各时期的现金流如上表,投资各时期的现金流如上表,求其再值。求其再值。求其再值。求其再值。解:解:解:解: cashflowcashflow=-10000, 2500, 2000, 3000, 4000;=-10000, 2500, 2000, 3000, 4000; rate=0.09; rate=0.09; irrcfdatesirrcfdates=01/12/2007=01/12/2007 02/14/2008 02/14/2008 03/03/2008 03/03/2008 06/14/2008 06/14/2008 12/01/2008; 12/01/2008; PresentValPresentVal= =pvvar(cashflow,ratepvvar(cashflow,rate, , irrcfdatesirrcfdates) )PresentValPresentVal = 142.1648 = 142.1648注意:注意:irrcfdatesirrcfdates这个向量应这个向量应写成列向量写成列向量. .此外,月和年要写此外,月和年要写成成2 2位数,如位数,如3 3月月1 1日不能写成日不能写成3/13/1,只能写成,只能写成03/0103/01,这是因,这是因为列向量的各元素要保持一致。为列向量的各元素要保持一致。现金金发放日期放日期12-Jan-200714-Feb-20083-Mar-200814-Jun-20081-Dec-2008金金额/元元-10 00025002003 0004000判断下列写法是否正确判断下列写法是否正确 irrcfdatesirrcfdates=01/12/2007; =01/12/2007; 02/14/2008;03/03/2008; 06/14/2008; 02/14/2008;03/03/2008; 06/14/2008; 12/01/200812/01/2008 (正确的写法)(正确的写法)(正确的写法)(正确的写法) irrcfdatesirrcfdates=1/12/2007; 2/14/2008; =1/12/2007; 2/14/2008; 3/3/2008; 7/14/2008; 12/1/2008 3/3/2008; 7/14/2008; 12/1/2008 (错误的写法,格式不统一)(错误的写法,格式不统一)(错误的写法,格式不统一)(错误的写法,格式不统一) irrcfdatesirrcfdates=1/12/2007=1/12/2007 2/14/2008 2/14/2008 3/3/2008 3/3/2008 7/14/2008 7/14/2008 12/1/2008 12/1/2008 (错误的写法,格式不统一)(错误的写法,格式不统一)(错误的写法,格式不统一)(错误的写法,格式不统一) irrcfdatesirrcfdates=1/12/2007, 2/14/2008, =1/12/2007, 2/14/2008, 3/3/2008, 7/14/2008, 12/1/2008 3/3/2008, 7/14/2008, 12/1/2008 (错误的写法,写成了行向量)(错误的写法,写成了行向量)(错误的写法,写成了行向量)(错误的写法,写成了行向量)如果内部收益率每年都是变化的,如果内部收益率每年都是变化的,怎么办?现金流现值的公式是怎样怎么办?现金流现值的公式是怎样的?的?可变贴现率下现金流现值的计算:function PreValFlow,PresetVal = PV_variable(P,r) %可变贴现率下现金流现值的计算% 计算可变贴现率和对应的现金流的现值.% P为各期现金流,r为贴现率向量,注意第0期的利率一定要设成0对应P第的一期应为负值,表示投资.% 注意P为行向量,r也为行向量,此二向量的元素要一样多.否则计算会出错.a,b=size(r);for i=1:1:b C(i)=P(i)/(1+r(i)(i-1); % 再变成1/(1+ri)i(次方)end PV_variable=sum(C); % 注意要转置PresetVal =PV_variable各期现值为:PreValFlow=C(见PV_variable.m文件)也可以用也可以用也可以用也可以用excelexcelexcelexcel来计算,也很方便。来计算,也很方便。来计算,也很方便。来计算,也很方便。见文件:可变贴现率情况下的现金流现值见文件:可变贴现率情况下的现金流现值见文件:可变贴现率情况下的现金流现值见文件:可变贴现率情况下的现金流现值计算计算计算计算. . . .xlsxlsxlsxls例例例例9 9 已知四项共已知四项共已知四项共已知四项共50005000元的零息投资组合在其后第元的零息投资组合在其后第元的零息投资组合在其后第元的零息投资组合在其后第1-41-4年分年分年分年分别到期,现金流分别为:别到期,现金流分别为:别到期,现金流分别为:别到期,现金流分别为:1000, 2000, 3000, 40001000, 2000, 3000, 4000元,贴元,贴元,贴元,贴现率分别为现率分别为现率分别为现率分别为5%5%, 6%6%, 7%7%, 8%8%,求这四年的现金流,求这四年的现金流,求这四年的现金流,求这四年的现金流的现值是多少?的现值是多少?的现值是多少?的现值是多少?解:利用我自编的可变现金流现值的函数解:利用我自编的可变现金流现值的函数解:利用我自编的可变现金流现值的函数解:利用我自编的可变现金流现值的函数PV_variablePV_variable进进进进行计算。行计算。行计算。行计算。cashflowcashflow=-5000,1000,2000,3000,4000;=-5000,1000,2000,3000,4000;rate=0,0.05,0.06,0.07,0.08rate=0,0.05,0.06,0.07,0.08PV_variable(cashflow,ratePV_variable(cashflow,rate) )PresetValPresetVal = = 3.1214e+003 3.1214e+003各期现值为各期现值为各期现值为各期现值为: :PreValFlowPreValFlow = = 1.0e+003 * 1.0e+003 * -5.0000 0.9524 1.7800 2.4489 2.9401 -5.0000 0.9524 1.7800 2.4489 2.9401 现金流终值是债券到期时的价值。用现金流终值是债券到期时的价值。用现金流终值是债券到期时的价值。用现金流终值是债券到期时的价值。用fvvarfvvar函数。函数。函数。函数。调用:调用:调用:调用:FutureValFutureVal= = fvvar(CashFlowfvvar(CashFlow, Rate, , Rate, IrrCFDatesIrrCFDates) )例例例例1010:题干同例:题干同例:题干同例:题干同例7 7。求该现金流的终值。求该现金流的终值。求该现金流的终值。求该现金流的终值。解:解:解:解: CashFlowCashFlow=-10000, 2000, 1500, 3000, 3800, 5000; =-10000, 2000, 1500, 3000, 3800, 5000; Rate=0.08;Rate=0.08; FutureValFutureVal= =fvvar(CashFlowfvvar(CashFlow, Rate), Rate)FutureValFutureVal = 2.5205e+003 = 2.5205e+003如果将如果将如果将如果将FutureValFutureVal贴现到当前时刻就是现值。代码如下:贴现到当前时刻就是现值。代码如下:贴现到当前时刻就是现值。代码如下:贴现到当前时刻就是现值。代码如下:FresentValueFresentValue=FutureVal/(1+Rate)5=FutureVal/(1+Rate)5FresentValueFresentValue = 1.7154e+003 = 1.7154e+003 贴现后的结果同例贴现后的结果同例贴现后的结果同例贴现后的结果同例7 7。2现金流终值现金流终值五计算赎回价格五计算赎回价格对于可赎回债券,当赎回时间小于等于一个计息周期对于可赎回债券,当赎回时间小于等于一个计息周期对于可赎回债券,当赎回时间小于等于一个计息周期对于可赎回债券,当赎回时间小于等于一个计息周期时,公式较简单:时,公式较简单:时,公式较简单:时,公式较简单:当息票赎回时间大于一个息票期间时,公式较繁杂:当息票赎回时间大于一个息票期间时,公式较繁杂:当息票赎回时间大于一个息票期间时,公式较繁杂:当息票赎回时间大于一个息票期间时,公式较繁杂:, , 其中:其中:其中:其中:RVRV:赎回时的价格;:赎回时的价格;:赎回时的价格;:赎回时的价格;DSCDSC:结算日到下一个似息票日的天数:结算日到下一个似息票日的天数:结算日到下一个似息票日的天数:结算日到下一个似息票日的天数DSRDSR:结算日到赎回日之间的天数:结算日到赎回日之间的天数:结算日到赎回日之间的天数:结算日到赎回日之间的天数 MM:每年的息票期间:每年的息票期间:每年的息票期间:每年的息票期间NqNq:似息票期间个数:似息票期间个数:似息票期间个数:似息票期间个数 Y Y:息票率:息票率:息票率:息票率这就是贴现,具体地,是每100元的现值调用方式:调用方式:调用方式:调用方式:Price = Price = zeroprice(Yieldzeroprice(Yield, Settle, Maturity, , Settle, Maturity, Period, Basis, Period, Basis, EndMonthRuleEndMonthRule) )输入参数:输入参数:输入参数:输入参数:Yield: Yield: 票息率票息率票息率票息率Settle: Settle: 结算日结算日结算日结算日Maturity: Maturity: 到期日到期日到期日到期日Period: (optional)Period: (optional)付息频率付息频率付息频率付息频率Basis: (optional)Basis: (optional)应计天数法则应计天数法则应计天数法则应计天数法则EndMonthRuleEndMonthRule: (optional): (optional)月末法则月末法则月末法则月末法则输出参数:输出参数:输出参数:输出参数:Price: Price: 零息券价格零息券价格零息券价格零息券价格解:该债券到期日小于一个计息周期,也可以视为一解:该债券到期日小于一个计息周期,也可以视为一解:该债券到期日小于一个计息周期,也可以视为一解:该债券到期日小于一个计息周期,也可以视为一个赎回(注意默认的赎回价格是个赎回(注意默认的赎回价格是个赎回(注意默认的赎回价格是个赎回(注意默认的赎回价格是100100),在赎回期之前),在赎回期之前),在赎回期之前),在赎回期之前没有支付票息,距离到期日小于一个计算期间,所以按没有支付票息,距离到期日小于一个计算期间,所以按没有支付票息,距离到期日小于一个计算期间,所以按没有支付票息,距离到期日小于一个计算期间,所以按公式算可用上述第一式。下面用公式算可用上述第一式。下面用公式算可用上述第一式。下面用公式算可用上述第一式。下面用matlabmatlab解。解。解。解。 Settle =24-Jun-1993; Settle =24-Jun-1993; Maturity =1-Nov-1993; Maturity =1-Nov-1993; Period =2; Period =2; Basis =0; Basis =0; Yield = 0.04; Yield = 0.04; Price = Price = zeroprice(Yieldzeroprice(Yield, Settle, Maturity, Period, , Settle, Maturity, Period, Basis)Basis)Price = 98.6066Price = 98.6066例例例例11 11 某债券结算日是某债券结算日是某债券结算日是某债券结算日是19931993年年年年6 6月月月月2424日,到期日是日,到期日是日,到期日是日,到期日是19931993年年年年1111月月月月1 1日,每年付息日,每年付息日,每年付息日,每年付息2 2次,应计利息法则为次,应计利息法则为次,应计利息法则为次,应计利息法则为ACT/ACTACT/ACT,票,票,票,票息为息为息为息为4%4%,试计算其价格。,试计算其价格。,试计算其价格。,试计算其价格。解:解:解:解: Settle =24-Jun-1993; Settle =24-Jun-1993; Settle =24-Jun-1993; Settle =24-Jun-1993; Maturity =15-Jan-2024; Maturity =15-Jan-2024; Maturity =15-Jan-2024; Maturity =15-Jan-2024; Period = 2; Period = 2; Period = 2; Period = 2; Basis =0; Basis =0; Basis =0; Basis =0; Price = Price = Price = Price = zeroprice(Yieldzeroprice(Yieldzeroprice(Yieldzeroprice(Yield, Settle, Maturity, , Settle, Maturity, , Settle, Maturity, , Settle, Maturity, Period, Basis)Period, Basis)Period, Basis)Period, Basis)Price = 29.8120Price = 29.8120Price = 29.8120Price = 29.8120可见债券提前可见债券提前可见债券提前可见债券提前34343434年左右赎回价格是多么的低。(注:年左右赎回价格是多么的低。(注:年左右赎回价格是多么的低。(注:年左右赎回价格是多么的低。(注:张树德编的课本上的计算结果有误)张树德编的课本上的计算结果有误)张树德编的课本上的计算结果有误)张树德编的课本上的计算结果有误)例例例例12 12 多个计息期间的赎回价格。如果某债券结算日是多个计息期间的赎回价格。如果某债券结算日是多个计息期间的赎回价格。如果某债券结算日是多个计息期间的赎回价格。如果某债券结算日是19931993年年年年6 6月月月月2424日,到期日是日,到期日是日,到期日是日,到期日是20242024年年年年1 1月月月月1515日,每年付息日,每年付息日,每年付息日,每年付息2 2次,应计利息法则为次,应计利息法则为次,应计利息法则为次,应计利息法则为ACT/ACTACT/ACT,票息为,票息为,票息为,票息为10%10%,到期时的,到期时的,到期时的,到期时的赎回价默认是赎回价默认是赎回价默认是赎回价默认是100100试计算其价格。试计算其价格。试计算其价格。试计算其价格。六六. . 计算息券各期算息券各期现金流金流及及发生生时间函数:函数: CFlowAmounts, CFlowDates = cfamounts(. CouponRate, Settle, Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate, StartDate, Face)从从Period开始是可开始是可选项。例:某息票票息例:某息票票息为6%,结算日是算日是2012年年3月月1日,到期日是日,到期日是2022年年3月月1日,日,应计天数法天数法则是是Act/Act,请计算各付息期及算各付息期及现金流。金流。 clear; settle = datenum(03-01-2012); maturity = datenum(03-01-2022); Period = 2; Basis =0; couponrate = 0.06; CFlows,CDates = cfamounts(couponrate,settle, maturity, Period, Basis); FlowDates=CFlows,CDates %写在一个矩写在一个矩阵中中对照照
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号