用过的一些开源c++ xll项目

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用过的一些开源c++ xll项目相关的知识,希望对你有一定的参考价值。

codeplex上一个xll项目

http://xll.codeplex.com/

优点:项目很小巧,不依赖于其他package,比如boost等,下载后编译可直接使用。和excel数据以及函数接口可以满足基本需求。

缺点:就是因为项目只是提供了最基本的接口功能,如果想让自定义函数能完善工作还需要较多的工作,比如内存管理,异常处理等问题(需要有较高的c++以及与excel接口的理解能力),否则excel极易崩溃关闭。最初试用这个代码一段时间后彻底放弃。

 

 

quantlibxl

http://quantlib.org/index.shtml

quantlib是闻名全球的开源金融数量分析库。quantlibxl是在纯c++版本上添加了完善的excel接口处理的xll项目。

优点:功能极其完善。首先,quantlib里面累计的函数种类繁多,从数学函数,到各类金融产品定价函数,以及工具类函数(比如交易日历函数),几乎覆盖了所有量化金融的话题,第二,代码延展性强,充分利用了OOP的特点,同时在excel中也以静态对象的方式存储,方便于excel层面的操作。(这一点与国外大投行quant组设计excel pricer的思路很类似),第三,异常处理非常完善,能够把错误信息直接返回到excel单元格里,极少出现excel崩溃的情况。

缺点:安装较为耗时,需要先装好python和boost,占用空间较大,另外在quantlibxl基础之上添加或者修改代码的过程有时候较为复杂,需要对整个库的结构有一定了解。经过一段时间的试用后,最后还是把quantlibxl作为主要的xll项目。

 

exceldna

http://exceldna.codeplex.com/

优点:也是一个比较小巧的项目,  基于c#, 已经较为成熟,容易上手,另外异常处理等也很完善。利用c#的优势,好像还可以在代码中对excel的页面和ribbon等进行操作(这个功能没试过)

缺点:只提供基本的接口功能,如果要基于此做复杂的工作,可能需要写大量的代码。我目前用到这个项目的地方主要是用来写excel和mysql数据库的接口,这个功能用c#比用c++方便很多。

 

以上是关于用过的一些开源c++ xll项目的主要内容,如果未能解决你的问题,请参考以下文章

整理读研期间用过改进过写过的代码

Excel 自定义函数

.net 平台下三个优秀强劲的开源项目(框架),你用过吗?

谁用过java开源 CMS系统

你从未用过的 C-AK 语言!

盘点阿里巴巴 33 个牛逼的开源项目,你用过哪几个?