one*_*day 23 ocaml programming-languages quantitative-finance
谈到一些quants/hedgies,我得出的结论是,他们中的很多人似乎都在使用自制语言或OCaml执行许多任务.许多人无法回答的原因是.
我当然可以理解他们为什么不想在大多数情况下使用C++,但为什么OCaml与其他脚本语言(如Python,Ruby等)相比更适合这些用途?
Don*_*eld 24
尝试阅读Caml交易 -由Yaron Minsky和Stephen Weeks 在华尔街进行函数式编程的经历(道歉,虽然这篇文章曾经在Jane Capital免费托管,但它已经不存在了,所以我留下了ACM链接供参考).他们详细了解了他们认为OCaml的优点和缺点,尽管他们在很大程度上认为它比他们考虑的大多数其他选项更好(即没有很多与C++,Python的直接比较) , 你有什么).
作者在Jane Street Capital工作,该公司对OCaml代码进行了大量投资.
更新:参见线程编写的算法交易软件是什么编程语言?.其中一条评论提到了Yaron Minsky在CMU对Jane Street Capital使用Caml的演讲.大约一个小时,非常有趣.
更新二:Yaron写了另一个概述,这次是ACM Queue,名为OCaml for the Masses.
Dir*_*tel 12
例如,参见用于速度比较的编程语言枪战:
现在,我们都听说过有关谎言,该死的谎言和基准的线条,所以推荐使用盐粒 - 但这是一个相当不错的比较.在一天结束时,重要的是用一个人自己的问题和数据做什么.
小智 8
首先要记住的是,即使OCaml具有REPL和清晰简洁的语法,它也不是像Python或Ruby那样的动态语言.它具有静态类型并编译为本机代码.
对于定量分析,脚本语言更方便.您可以访问很多库,很容易使用快速和脏的脚本来管理信息,即使对于非程序员来说,构建中小型程序也很容易.
要创建实际参与交易的算法和系统,您需要像OCaml这样的东西.OCaml的主要优点是它的功能性,可读性(它几乎与Python这样的动态语言一样好),可靠性,但主要是速度.OCaml比大多数人认为的要快得多 - 它的速度很快(实际上比C慢一点,但比动态语言快很多倍).OCaml足以创建一个HFT系统,这对于Python或Ruby来说都不是.
另外,请记住,在Scala和Clojure出现之前,Jane Street(最有声音的OCaml福音传道者)采用了OCaml.