Java量化金融/数学库

16

我目前正在从事一个项目,该项目依赖于几个数学、统计和金融工具,我希望能够将它们包含在一个(或多个)库中。我想要的是:

  1. 统计量-众数,方差等
  2. 概率分布+可进行抽样的分布
  3. 金融模型,例如期权定价

有人知道哪些库可能有用吗?

4个回答

15

我在Java和Clojure中做了大量数字工作,希望我的经验能够有所帮助。

对于问题1和2,以下是一些可供探索的选项:

  • Parallel Colt -非常全面、高性能的数学库。适用于金融应用中的向量处理。
  • Incanter -类似R的用于Clojure的统计库(非常容易嵌入Java应用程序中)。拥有几乎所有您想要的统计工具,而且如果您想要创建自己的DSL,则非常容易扩展
  • EJML -可能是Java中最快的矩阵库
  • Apache Commons Math -方便的数学和统计工具集

对于问题3(财务模型),这些往往是根据您试图解决的问题而量身定制的。即使存在现成的解决方案,我也不认为您会希望使用它。我建议使用上述工具包自己开发。


谢谢,确实是非常有帮助的文章。但是你如何在Java中使用Incanter呢? - Bober02
1
我通常在Clojure REPL(使用Counterclockwise插件的Eclipse)中进行开发工作。然后,您可以将完成的Incanter代码保存在.clj文件中,并将其与clojure.jar一起打包到Java项目中作为依赖项。然后,您可以使用正常的技术从Java调用您的函数来调用Clojure代码。运行得非常顺畅。甚至有很好的Maven集成(因此您可以将Clojure测试套件作为一键构建的一部分运行等)。 - mikera
+1 - 非常好。听起来你正在做出色的工作。 - duffymo

2

QuantLib 似乎通过 SWIG 具有 Java 绑定。


2
JQuantLib 是 QuantLib 的纯 Java 重现。虽然我还没有尝试过,但它看起来很有前途。 - cww

2

OpenGamma的Strata包含这些内容。它是一个用Java编写的专业量化金融库,也是开源的。

量化金融部分包括利率、外汇和股票模型。它由银行和对冲基金的行业量化分析师开发。我不知道您想使用哪种类型的金融模型;有大量的模型和资产类别可供选择,您应该能够找到一个专业的实现方案。


这个库已经不再维护了。新的库叫做 Strata - https://github.com/OpenGamma/Strata - Faisal Feroz

1

IdylFin可能正是您所需要的--受quantmod启发,它包含一些快速、数值稳定的统计方法、一个访问雅虎财经的API,以及一些组合优化方法,并且正在积极扩展。

免责声明:我是该库的作者,如果您使用它,我会感到非常高兴;)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接