|
我们教金融的老师主要推荐三个软件:Eviews、WinBugs、Matlab。
金融学中更多遇到的是时间序列数据,这个时候Eviews就是非常好的入门软件,经典的VAR模型、GARCH类模型都可以通过Eviews中对应按钮傻瓜式地实现,无须任何编程。但是如果要在经典模型上加一些变化(例如把回归模型的残差分布改成非正态分布),就比较麻烦,Eviews并非以编程为特色的软件。
如果要用到Bayesian MCMC(可以视为蒙特卡洛模拟的一种)这样相对高级的方法,则可以通过WinBugs较为简单地获得实现,WinBugs是实现Bayesian MCMC的专业软件。不过这需要一点点的编程,但是WinBugs的毛病是速度慢,模拟本来就是同样的模块迭代几千次,而它的速度又慢,所以会有点耗时。
Matlab是一个强大的应用型编程软件,广泛应用于经济金融、统计以及各种理工类学科(只要从其自带的toolbox文件夹名的种类之多中就可见一斑),它不像WinBugs那样专门用于实现一种统计方法,而且大量的代码是开放的(Eviews里的内置程序你很难把它调出来,而Matlab中只要是以.m结尾的程序都是可以直接打开并按自己的需要进行修改的),国外还有很多人会把自己写的Matlab程序包发在网上共享,如果有什么不懂的通过Matlab自带的Help和网上的搜索基本都能找到满意的答案,是一个开放度相当高的软件。我本人在尝试非线性模型的时候,都是用的Matlab。
R语言只研究过一天不太了解,R语言是免费的,当然对于学校的学生来说就无所谓(Eviews、Stata之类的网上就有破解版,Matlab至少在学校内部交流的网站上也会提供破解版),另外它的共享性质很强,别人写好的程序包可以通过镜像直接加载使用(能调用程序,但是不知道能不能打开看具体的代码,我那天因为没有研究出来该如何调出代码,所以就放弃用这个软件了),它基于的语言似乎更接近VB,而Matlab则基于C,当然作为应用类软件它们都比其基于的语言要好学得多,但是如果已经学过一点C的话,可能会觉得Matlab的程序更有熟悉感(虽然我本人是学校里学了VB没学C,但是去学Matlab,后来看到R反而觉得不习惯……)
Stata据说挺好用的,但是我从来没用过所以不评价……
|