APP下载

SAS金融计算教学中自定义函数的实验设计

2015-01-13桂文明

科技创新导报 2014年34期

桂文明

摘 要:SAS在金融计算领域有着旺盛的生命力,SAS金融计算课程是金融类专业中实践性较强的课程之一。在该课程的教学过程中,如何设计好实验环节是教学成功与否的关键所在。该文针对难度较高但适用性广的SAS自定义函数部分,结合债券久期理论,采用我国债券市场的真实数据,设计了一个课程实验,具有内容新颖、综合性强的特点,可使学生在动手过程中快速掌握相关知识。课程内容分为SAS自定义函数讲授、久期基本概念回顾、实验内容、实验步骤提示和实验答案讲解五个环节。

关键词:金融计算 SAS编程 债券久期 自定义函数

中图分类号:G420 文献标识码:A 文章编号:1674-098X(2014)12(a)-0152-02

SAS软件在国际上已被誉为统计分析的标准软件,在各个领域得到广泛应用,它在金融计算领域也具有强大的生命力,对金融学及其相关专业的学生来说,掌握SAS并运用它到金融专业的理论计算和实践非常必要[1,2]。SAS金融计算课程是金融学及其相关专业课程体系中的实践性较强的课程。在这类课程中,讲授理论知识的同时,往往需要辅以实验来提升学生理解理论的层次。一些高校的金融学专业中还专门开设此类综合实验课程,以期学生能掌握SAS编程方法,加深对相关金融理论知识的理解,增强动手能力,提升解决金融实务问题的能力,培养和启发用数据说话的理念。SAS金融计算课程对学生的要求较高,难度较大,因为它是一门跨学科性质的课程,既要求掌握金融理论知识,又要具备基本的计算机编程基础,而编程知识一般是金融学及其相关专业学生的弱项。

要使SAS金融计算课程在学生和教师的互动过程中顺利展开,设计好实验环节是关键。实验的内容应该和金融相关,实验数据应该是金融市场中的真实数据。本文针对难度较高但应用性广的SAS自定义函数,设计了债券久期的计算实验,实验数据采用的是我国1981—2006年的真实债券数据。通过教学实践发现这个实验能在学生深刻理解久期概念的基础上,较好掌握SAS自定义函数的使用方法。课程内容分为SAS自定义函数讲授、久期基本概念回顾、实验内容、实验步骤提示和实验答案讲解五个环节。

1 SAS自定义函数

自定义函数是大多数编程语言中的重要组成部分,但是在SAS 9.2版本之前,SAS都不提供这个功能,需借助宏技术来实现自定义函数功能。关于SAS自定义函数,在国内的各种资料上,还鲜有提及。SAS自定义函数是通过一个过程步fcmp来完成。自定义函数的基本语句是:

2 久期基本概念

久期是反映债券价格波动的一个指标。它对到期时间进行加权平均,权重等于各期现金流的现值占总债券现金流现值的比例。久期实际表示的是投资者收回初始投资的实际时间。麦考雷(Macaulay)久期的计算公式:

(1)

其中为以第期对应的市场普遍收益率进行贴现得到的债券在第期的现金流现值,为债券持有期内现金流的期间总数。以上的麦考雷久期计算的是以期间为单位的,如果以年为单位则有:

(2)

其中k为该债券的每年支付现金流次数。

3 实验内容

本文设计的实验内容是利用SAS计算我国1981—2006年发行的,并且满足2个条件债券的发行时点的麦考雷久期(单位为年,所有期间的市场普遍收益率给定为10%):(1)票息类型为固定利率;(2)每年计息次数为2次。其中债券数据存放在一个名称为Bdinfo的数据集文件中,和本实验相关的变量含义的如表1所示。

实验所设计的数据是债券市场的真实数据[3],Bdinfo数据集文件是sas7bdat类型的,需要学生导入到实验所用逻辑库才能使用。实验内容不仅要求学生深刻理解久期的基本概念,而且要求掌握SAS自定义函数的使用方法和简单的数据集加工语句。这是一个综合性程度较高的实验设计,能使学生动手能力提升的同时,加深理论知识的理解。

4 实验步骤提示

在实验提示部分,对实验步骤和实验方法做必要阐述,使学生动手实验过程能更顺利。实验步骤首先包含两大部分:一是自定义一个函数,功能是根据久期公式计算久期;二是使用数据步来调用这个久期函数计算满足条件的债券的久期。第一步最重要,它包括的内容有:(1)输入参数的确定,包括面值、票面利率、普遍收益率、到期年限等。(2)输出参数的确定,即返回值,这里的输出就是以年为单位的麦考雷久期。(3)函数主体部分,它应该是一个循环,过程描述如下:

循环开始(2*到期年限次)

计算pvcf(t)

累加分子

累加分母

循环结束

计算久期并返回

第二步的内容包括:(1)读取Bdinfo数据集的观测;(2)选择满足条件的观测;(3)调用函数(参数为选择的观测的值),并在数据集中创建久期变量。实验步骤提示结束后,学生即可以动手做实验。

5 实验答案讲解

待学生实验完成后,可以讲解实验答案,以供学生参考讨论。本实验的一种求解SAS程序清单如下:

6 结语

SAS金融计算课程是金融学及其相关专业课程体系中的实践性较强的课程,往往要与实验课结合来进行教学。自定义函数是SAS 9.2后推出的重要的新编程功能,学生掌握难度大,该文设计了结合债券久期的综合性程度高的自定义函数实验,能使学生在动手实验过程中促进对SAS自定义函数的学习,同时加深对债券久期理论知识的理解。

参考文献

[1] 朱世武.SAS编程技术教程[M].北京:清华大学出版社,2007.

[2] 朱世武.金融计算与建模:理论、算法与SAS程序[M].北京:清华大学出版社,2007.

[3] 朱世武,严玉星.金融数据库[M].北京:清华大学出版社,2007.endprint

摘 要:SAS在金融计算领域有着旺盛的生命力,SAS金融计算课程是金融类专业中实践性较强的课程之一。在该课程的教学过程中,如何设计好实验环节是教学成功与否的关键所在。该文针对难度较高但适用性广的SAS自定义函数部分,结合债券久期理论,采用我国债券市场的真实数据,设计了一个课程实验,具有内容新颖、综合性强的特点,可使学生在动手过程中快速掌握相关知识。课程内容分为SAS自定义函数讲授、久期基本概念回顾、实验内容、实验步骤提示和实验答案讲解五个环节。

关键词:金融计算 SAS编程 债券久期 自定义函数

中图分类号:G420 文献标识码:A 文章编号:1674-098X(2014)12(a)-0152-02

SAS软件在国际上已被誉为统计分析的标准软件,在各个领域得到广泛应用,它在金融计算领域也具有强大的生命力,对金融学及其相关专业的学生来说,掌握SAS并运用它到金融专业的理论计算和实践非常必要[1,2]。SAS金融计算课程是金融学及其相关专业课程体系中的实践性较强的课程。在这类课程中,讲授理论知识的同时,往往需要辅以实验来提升学生理解理论的层次。一些高校的金融学专业中还专门开设此类综合实验课程,以期学生能掌握SAS编程方法,加深对相关金融理论知识的理解,增强动手能力,提升解决金融实务问题的能力,培养和启发用数据说话的理念。SAS金融计算课程对学生的要求较高,难度较大,因为它是一门跨学科性质的课程,既要求掌握金融理论知识,又要具备基本的计算机编程基础,而编程知识一般是金融学及其相关专业学生的弱项。

要使SAS金融计算课程在学生和教师的互动过程中顺利展开,设计好实验环节是关键。实验的内容应该和金融相关,实验数据应该是金融市场中的真实数据。本文针对难度较高但应用性广的SAS自定义函数,设计了债券久期的计算实验,实验数据采用的是我国1981—2006年的真实债券数据。通过教学实践发现这个实验能在学生深刻理解久期概念的基础上,较好掌握SAS自定义函数的使用方法。课程内容分为SAS自定义函数讲授、久期基本概念回顾、实验内容、实验步骤提示和实验答案讲解五个环节。

1 SAS自定义函数

自定义函数是大多数编程语言中的重要组成部分,但是在SAS 9.2版本之前,SAS都不提供这个功能,需借助宏技术来实现自定义函数功能。关于SAS自定义函数,在国内的各种资料上,还鲜有提及。SAS自定义函数是通过一个过程步fcmp来完成。自定义函数的基本语句是:

2 久期基本概念

久期是反映债券价格波动的一个指标。它对到期时间进行加权平均,权重等于各期现金流的现值占总债券现金流现值的比例。久期实际表示的是投资者收回初始投资的实际时间。麦考雷(Macaulay)久期的计算公式:

(1)

其中为以第期对应的市场普遍收益率进行贴现得到的债券在第期的现金流现值,为债券持有期内现金流的期间总数。以上的麦考雷久期计算的是以期间为单位的,如果以年为单位则有:

(2)

其中k为该债券的每年支付现金流次数。

3 实验内容

本文设计的实验内容是利用SAS计算我国1981—2006年发行的,并且满足2个条件债券的发行时点的麦考雷久期(单位为年,所有期间的市场普遍收益率给定为10%):(1)票息类型为固定利率;(2)每年计息次数为2次。其中债券数据存放在一个名称为Bdinfo的数据集文件中,和本实验相关的变量含义的如表1所示。

实验所设计的数据是债券市场的真实数据[3],Bdinfo数据集文件是sas7bdat类型的,需要学生导入到实验所用逻辑库才能使用。实验内容不仅要求学生深刻理解久期的基本概念,而且要求掌握SAS自定义函数的使用方法和简单的数据集加工语句。这是一个综合性程度较高的实验设计,能使学生动手能力提升的同时,加深理论知识的理解。

4 实验步骤提示

在实验提示部分,对实验步骤和实验方法做必要阐述,使学生动手实验过程能更顺利。实验步骤首先包含两大部分:一是自定义一个函数,功能是根据久期公式计算久期;二是使用数据步来调用这个久期函数计算满足条件的债券的久期。第一步最重要,它包括的内容有:(1)输入参数的确定,包括面值、票面利率、普遍收益率、到期年限等。(2)输出参数的确定,即返回值,这里的输出就是以年为单位的麦考雷久期。(3)函数主体部分,它应该是一个循环,过程描述如下:

循环开始(2*到期年限次)

计算pvcf(t)

累加分子

累加分母

循环结束

计算久期并返回

第二步的内容包括:(1)读取Bdinfo数据集的观测;(2)选择满足条件的观测;(3)调用函数(参数为选择的观测的值),并在数据集中创建久期变量。实验步骤提示结束后,学生即可以动手做实验。

5 实验答案讲解

待学生实验完成后,可以讲解实验答案,以供学生参考讨论。本实验的一种求解SAS程序清单如下:

6 结语

SAS金融计算课程是金融学及其相关专业课程体系中的实践性较强的课程,往往要与实验课结合来进行教学。自定义函数是SAS 9.2后推出的重要的新编程功能,学生掌握难度大,该文设计了结合债券久期的综合性程度高的自定义函数实验,能使学生在动手实验过程中促进对SAS自定义函数的学习,同时加深对债券久期理论知识的理解。

参考文献

[1] 朱世武.SAS编程技术教程[M].北京:清华大学出版社,2007.

[2] 朱世武.金融计算与建模:理论、算法与SAS程序[M].北京:清华大学出版社,2007.

[3] 朱世武,严玉星.金融数据库[M].北京:清华大学出版社,2007.endprint

摘 要:SAS在金融计算领域有着旺盛的生命力,SAS金融计算课程是金融类专业中实践性较强的课程之一。在该课程的教学过程中,如何设计好实验环节是教学成功与否的关键所在。该文针对难度较高但适用性广的SAS自定义函数部分,结合债券久期理论,采用我国债券市场的真实数据,设计了一个课程实验,具有内容新颖、综合性强的特点,可使学生在动手过程中快速掌握相关知识。课程内容分为SAS自定义函数讲授、久期基本概念回顾、实验内容、实验步骤提示和实验答案讲解五个环节。

关键词:金融计算 SAS编程 债券久期 自定义函数

中图分类号:G420 文献标识码:A 文章编号:1674-098X(2014)12(a)-0152-02

SAS软件在国际上已被誉为统计分析的标准软件,在各个领域得到广泛应用,它在金融计算领域也具有强大的生命力,对金融学及其相关专业的学生来说,掌握SAS并运用它到金融专业的理论计算和实践非常必要[1,2]。SAS金融计算课程是金融学及其相关专业课程体系中的实践性较强的课程。在这类课程中,讲授理论知识的同时,往往需要辅以实验来提升学生理解理论的层次。一些高校的金融学专业中还专门开设此类综合实验课程,以期学生能掌握SAS编程方法,加深对相关金融理论知识的理解,增强动手能力,提升解决金融实务问题的能力,培养和启发用数据说话的理念。SAS金融计算课程对学生的要求较高,难度较大,因为它是一门跨学科性质的课程,既要求掌握金融理论知识,又要具备基本的计算机编程基础,而编程知识一般是金融学及其相关专业学生的弱项。

要使SAS金融计算课程在学生和教师的互动过程中顺利展开,设计好实验环节是关键。实验的内容应该和金融相关,实验数据应该是金融市场中的真实数据。本文针对难度较高但应用性广的SAS自定义函数,设计了债券久期的计算实验,实验数据采用的是我国1981—2006年的真实债券数据。通过教学实践发现这个实验能在学生深刻理解久期概念的基础上,较好掌握SAS自定义函数的使用方法。课程内容分为SAS自定义函数讲授、久期基本概念回顾、实验内容、实验步骤提示和实验答案讲解五个环节。

1 SAS自定义函数

自定义函数是大多数编程语言中的重要组成部分,但是在SAS 9.2版本之前,SAS都不提供这个功能,需借助宏技术来实现自定义函数功能。关于SAS自定义函数,在国内的各种资料上,还鲜有提及。SAS自定义函数是通过一个过程步fcmp来完成。自定义函数的基本语句是:

2 久期基本概念

久期是反映债券价格波动的一个指标。它对到期时间进行加权平均,权重等于各期现金流的现值占总债券现金流现值的比例。久期实际表示的是投资者收回初始投资的实际时间。麦考雷(Macaulay)久期的计算公式:

(1)

其中为以第期对应的市场普遍收益率进行贴现得到的债券在第期的现金流现值,为债券持有期内现金流的期间总数。以上的麦考雷久期计算的是以期间为单位的,如果以年为单位则有:

(2)

其中k为该债券的每年支付现金流次数。

3 实验内容

本文设计的实验内容是利用SAS计算我国1981—2006年发行的,并且满足2个条件债券的发行时点的麦考雷久期(单位为年,所有期间的市场普遍收益率给定为10%):(1)票息类型为固定利率;(2)每年计息次数为2次。其中债券数据存放在一个名称为Bdinfo的数据集文件中,和本实验相关的变量含义的如表1所示。

实验所设计的数据是债券市场的真实数据[3],Bdinfo数据集文件是sas7bdat类型的,需要学生导入到实验所用逻辑库才能使用。实验内容不仅要求学生深刻理解久期的基本概念,而且要求掌握SAS自定义函数的使用方法和简单的数据集加工语句。这是一个综合性程度较高的实验设计,能使学生动手能力提升的同时,加深理论知识的理解。

4 实验步骤提示

在实验提示部分,对实验步骤和实验方法做必要阐述,使学生动手实验过程能更顺利。实验步骤首先包含两大部分:一是自定义一个函数,功能是根据久期公式计算久期;二是使用数据步来调用这个久期函数计算满足条件的债券的久期。第一步最重要,它包括的内容有:(1)输入参数的确定,包括面值、票面利率、普遍收益率、到期年限等。(2)输出参数的确定,即返回值,这里的输出就是以年为单位的麦考雷久期。(3)函数主体部分,它应该是一个循环,过程描述如下:

循环开始(2*到期年限次)

计算pvcf(t)

累加分子

累加分母

循环结束

计算久期并返回

第二步的内容包括:(1)读取Bdinfo数据集的观测;(2)选择满足条件的观测;(3)调用函数(参数为选择的观测的值),并在数据集中创建久期变量。实验步骤提示结束后,学生即可以动手做实验。

5 实验答案讲解

待学生实验完成后,可以讲解实验答案,以供学生参考讨论。本实验的一种求解SAS程序清单如下:

6 结语

SAS金融计算课程是金融学及其相关专业课程体系中的实践性较强的课程,往往要与实验课结合来进行教学。自定义函数是SAS 9.2后推出的重要的新编程功能,学生掌握难度大,该文设计了结合债券久期的综合性程度高的自定义函数实验,能使学生在动手实验过程中促进对SAS自定义函数的学习,同时加深对债券久期理论知识的理解。

参考文献

[1] 朱世武.SAS编程技术教程[M].北京:清华大学出版社,2007.

[2] 朱世武.金融计算与建模:理论、算法与SAS程序[M].北京:清华大学出版社,2007.

[3] 朱世武,严玉星.金融数据库[M].北京:清华大学出版社,2007.endprint