finmetrics-s-plus中金融数据数量分析的工具_第1页
finmetrics-s-plus中金融数据数量分析的工具_第2页
finmetrics-s-plus中金融数据数量分析的工具_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Finmetrics: 时间序列统计分析的好的教学模块欧阳资生摘要: 对于专业统计学研究人员来说 , 各国用的最多的是功能强大和灵活的 S-plus 软 件。近来 , 一个新的模块 - Finmetrics, 被添加到 S-plus 中 , 它被用来专门处理金融时间序 列数据 , 对金融时间序列进行数量分析。本文中,我们对 Finmetrics 模块的功能作了介绍, 希望对广阔金融时间序列定量分析人员起到抛砖引玉的作用。关键词 : S-plus , Finmetrics 模块,数值计算一、引言对于专业统计学家来说,各国用的最多的是功能强大和灵活的 S-plus 软件。它是美国 AT&T

2、公司的贝尔实验室开发的。用S-plus编程序很方便,入门容易。它的统计方法丰富,而且在不断增长。 S-plus 透明度大,很容易知道它在作什么。在 S-plus 中可以任意参加自 己编写的程序, 或修改原来的一些程序, 为创造性的统计学家所钟爱。 许多最新的统计方法 都是一些统计学家用 S-plus 程序编写出来的,甚至可以从互联网上下载下来。原来的 S-plus 主要是为统计学家编程而用,现在的最新版本也已经更加友好,已经实现可视化, 很容易操作,同时还保存了其原来的优点,不失为一个好软件。近来,一个新的模块-Fin metrics 模块,被添加到 S-PLUS中,它被用来专门处理金融时间序

3、列数据,对金融时间 序列进行数量分析。 S-PLUS 本身可在许多不同的平台上操作 Windows、Linux 、Solaris 、 Unix ,但是 Finmetrics 模块却只能在 Windows、 Linux 、 Unix 上实现,而且 Finmetrics 模块只能添加到 S-PLUS6及以上版本上,S-PLUS2000及以下版本,这个模块无法运行。二、Finmetrics 模块的一般回忆S-plus语言的根底是 S语言,它是对S语言的界面化和菜单化,有优秀的内在帮助系统和作图功能 , 它能够轻松地转到商业支持的 S-Plus 程序 如果需要使用商业软件 。 S-plus 有一个强大

4、的,容易学习的语法,有许多内在的统计函数,通过用户自编程序,S语言很容易延伸和扩大,它是电脑编程语言.类似于UNIX语言、C语言、Pascal、Gauss语言等。对于 熟练的编程者,它将觉得该语言比其他语言更好用。但是它与C语言、Pascal、Gauss语言不同,它是一种面向对象的程序语言。 S-PLUS 语言的函数可以由菜单和命令语句得到 ,但由 命令语句得到的函数要比由菜单得到的多得多。而且 , 对 Finmetrics 模块, 使用者只能使用 命令语句才能得到函数。 这事实上就要求使用者必须对S语言的语法和编程比拟熟悉。但是,Finmetrics 模块并不是标准的 S-PLUS软件的一局

5、部,因此,它必须独立于S-PLUS,要求单独 安装。模块的学习帮助通过在线帮助和两个PDF格式的文件形式提供给使用者。一个文件是对这个模块中的所有函数类 包括 198个主要函数 及其使用方法进行了详细的说明 ,我们在 表一中列出了这些说明另一个文件是由 Zivot,E. 和Wang,J.H.2002两人合作的,专门 介绍每个函数族的电脑编程的书。这本书的电脑程序也可在Zivot,E. 的个人网页上下载。表 1: Finmetrics 模块中函数类型时间序列格子图函数Time series trellis plotti ng fun ctio ns动态的最小二乘法 外表上不相关回归 单位根、协整

6、过程和Dyn amic ordinary least squares Seemi ngly un related regressi on VECM Unit root, cointegration and VECM长记忆模型Long memory modelling 固定收益分析 Fixed in come an alytics古典的极值理论Classical extreme value theory 状态空间模型State space modelling时间序列控制与插值 Time series man ipulati on and in terpolatio n统计概述与统计检验 Summ

7、ary statistics and test statistics滚动估计Rolli ng estimation自回归与矢量自回归 Autoregressi on and Vector autoregressi onGARCH波动模型GARCH volatility modelling 技术分析Technical analysis多因子统计模型Statistical multi-factor model多元极值 Copula 估计和分析 (Extreme value analysis with statistical copula estimati on)从表1可以看出,Fin metric

8、s 模块包含了许多其他金融分析软件不具备的函数族,在其他金融风险分析的软件里,我们很难找到像技术分析、极值理论和Copulas等相关的内容 的。当然,这个模块也包含了许多众所周知的数据,例如,就包含了 S& P500指数从1960年1月5日到1987年10月16日共6986个日收盘价数据。Danish.dat包含了自1980 年元月3日到1990年11月31日之间丹麦保险公司的理赔额超过一百万丹麦克朗的火灾保 险理赔额。这些数据的来源和使用可在在线帮助中很容易查到,这为我们在使用这个模块时提供了很好的便利。三、Finmetrics 模块的编程S-PULS是一种面向对象的程序语言,因此,

9、数据结构可以通过类获得。Finm etrics 模块的数据库是基于 Timeseries类的。在Timeseries类中,时间间隙从年、月、日到小时、 分钟、秒,相当精确,当然,这也是研究高频数据的需要。时间序列的数据类型也可以包含 任何类型:数值型、字符串型等等均可以。前面已经说过,Finm etrics 模块不能通过S-PLUS的图形界面或菜单直接得到,因此它 必须编程。这意味着使用者必须对模块中的函数要相对熟悉,幸运的是,我们可以借助这个模块的很好的在线帮助来编程。为了对利用模块编程语法有个直观的了解,我们通过下面例子来说明。我们的例子来自于Zivot,E. 和Wang,J.H. 200

10、2,我们在例子中分析了利用极值理论中Peak-over-Threshold POT方法计算S&P500指数该数据名为的在险风险值VaR的编程方法。注意,在每一个语句前,我们以命令“> 开始。我们首先可以通过以下程序观察S&P500指数的收盘价和日收益率折线图见图1。> spto87 = getRetur ns(sp.raw, type="discrete", perce ntage=T)> par(mfrow=c(2,1)> plot(sp.raw, mai n="Daily Clos ing Prices")&g

11、t; plot(spto87, main="Daily Percen tage Retur ns")>广7pA尸7-Daily Closing Prices19850119601965197019751980Daily Percentage Returns图1当然,我们可以分析收益率分布是否服从正态分布,这可以通过以下一句语句实现。> qqPlot(spto87)在Peak-over-Threshold POT方法中,一个关键的问题是怎样适中选取门限值,这可 以通过平均超出函数图来判断。Fin metrics模块的实现程序是:> me.sp500=mepl

12、ot(-spto87)对于这个数据集而然,它的平均超出函数图如图2,从中我们可以判断出门限值取1比拟恰当。§- eexE ngM-4-2 0Threshold图2因此,我们就可以得到 S&P 500指数的VaR了。> gpd.sp500.1 = gpd(-spto87, threshold=1)> riskmeasures(gpd.sp500.1, c(0.95,0.99)p qua ntile1.25392.0790即置信水平为95%的VaF为,置信水平为 99%的VaF为。利用正态假设计我们也可以将利用极值方法所得结果与利用正态假设所得结果进行比拟, 算VaR

13、的语句为:> sp500.mu = mean(-spto87)> sp500.sd = sqrt(var(-spto87)> var.95 = sp500.mu + sp500.sd*qnorm(0.95)> var.99 = sp500.mu + sp500.sd*qnorm(0.99)即在收益率服从正态假设时,置信水平为95%的VaF为,置信水平为 99%的VaR为。从这个例子, 我们可以看出, 只要熟悉了 Finmetrics 模块中的函数, 编程还是相当简单、 便捷的。四、Finmetrics 模块的数值计算的精确性 几乎所有的金融时间序列模型都是高度非线形的。

14、 因此, 我们在进行数值计算时, 就对 计算的精度提出了较高的要求。 Finmetrics 模块恰好满足了这一要求。由于模型的非线性, 各个参数的解析解是很难得到了, 这就要求对其分析解进行精确的数值逼近。 在 Finmetrics 模块中, 参数的估计都是通过其对数似然函数的最优化得到。 当然, 最优问题涉及到计算精 度的默认值,算法的选择和初始值等。 McCullough & Renfro 1999和Brooks et al.(2001) 就指出,就是最简单的GARCH(1,1)模型,使用不同的软件就会产生不同的结果。现在我们就利用GARCH(1,1)模型来分析Finmetrics

15、 模块是怎样实现数字的精确计算的。GARCH(1,1) 模型已经为金融工作者所熟悉,它的模型形式是:212yt c t , t | t 1 N(0, t )2201 t1 1 t 1我们利用Ford公司的股票收益率数据自1984年2月2日到1991年11月31日共2000 个数据来进行分析在模块的数据库中,该数据名为ford.s。GARCH(1,1)模型的参数通过下面语句得到> garch(ford.s1,garch(1,1)在上面的语句中,我们事实上是使用了所有的默认值。当然,在这个模型中, 我们是无法设定参数的初始值的。默认的收敛偏差和步长均为 0.0001 。当然,我们可以对精度作

16、进 一步的要求,将上面运算的收敛偏差和相应的步长由0.0001加强为1*10A(-12),即利用下面的程序我们可以得到更为精确的结果。具体见图 3。> garch(ford.s1,garch(1,1),control=bhhh.control(tol=1e-12,delta=1e-12)在图3中,我们给出了 GARCH(1 1)模型的四个参数的估计的折线图。用“0标出的点是收敛偏差和步长取默认值时的估计值。 对这个数据而言, 模型的默认值似乎太大, 并不 能很好的估计模型的参数。 很明显, 参数的估计依赖于最大似然估计, 而最大似然估计依赖 于收敛准那么。从这个例子可以看出,在 Finm

17、etrics 模块中,我们可以根据自己的要求进行 精确计算。2468 10 12tolera nce(1*10A-k)oannra6rcoo C2CCOO 006OH- n.c4681012tolera nce(1*10A-k)5 入 C. 3 5 入 C.26-AO-T52468 10 12tolera nce(1*10A-k)O-.O 900000.0r7>olahnra1awleD2y o4681012tolera nce(1*10A-k)000.0oo08 0五、Finmetrics 模块的评论和结论Fin metrics 提供了先进且丰富的金融数据分析模型。利用这个模块,我们可

18、以方便地对金融数据进行模型构建、分析及可视化。与其他的套装软件不同,Finm etrics 可以轻易地计算出技术指标及移动平均运算子,它的其他高级的分析技术,包含回归方法单变数、 最小平方、双变数、多变量及联立方程式等,可对金融数据做更可靠、更有效的分析。Finm etrics 包含了可做固定收益分析的重要函数,也包含了许多极值分析方法,可用于保 险公司对风险值分析及构建灾难超额损失模型的应用。Fin metrics 包含了估计FARIMA模型及波动率模型的功能,如单变数及多变数 GARCH模型有EGARCH TGARCHpower GARCH及fraction integrated GARCH 模型,因此,它提供了现今最完整的GARCH模型组合。Fin metrics让你使用最有效的状态空间模型功能来发现隐藏的金融市场消息。Fin metrics包含了许多统计的多因子模型,提供你更大的精确性及可靠度来处理投资组合的绩效及风 险。Fin metrics 支持被先进的计量分析专家所钟爱的滚动估计和回馈检验来检测你的金融 模型。总之,正如In sight公司所评价的,"Fi nmetrics 是一个无价的计量经济分析工具, 提供现代的、弹性的财经、金融数据分析功能。不像其他的竞争软件,Finm etrics提供所有重要的分析方法,从滚动

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论