如何成为 Quant Dev 2 - 技能树
上一篇文章介绍了量化对冲基金中程序员的分类和职能,其中 Quant Dev
是量化对冲基金的核心业务开发人员,所以这一篇我们重点讨论 Quant Dev 的要求、技能和学习路径。
总体要求
Quant Dev 首先得是一个合格的开发者,然后需要对业务有比较深刻的理解。Quant Dev 是连接策略思想和自动化交易的桥梁,不同的策略对软件的要求也不尽相同,有一些策略,比如高频策略,对计算机底层技能的要求更高;而另一些策略,比如中低频策略,对软件架构和软件工程要求更高。
因此,一个好的 quant dev:
- 首先是一个合格的程序员
- 然后根据不同的策略类型,深入理解模型和执行特性等业务逻辑。
- 对计算机和量化充满热情 < — 这是最重要的
技能树
知道了2个需求,我们看一下技能树。
合格的程序员
关于这个我做过另一起视频(文章)讲解。这里总结必备基础技能如下:
- 计算机组成原理
- 操作系统
- 数据库原理
- 计算机网络
- 计算机语言和编译原理
多说点,计算机语言方面:
- 经典语言:Python | Java/C# | C++
- 更加现代的语言: Go | Rust
- 极客公司:Ocaml | F# | Clojure
关于语言的选择,一定要有自己的“灵魂”语言,即这门语言可以做到精通:掌握基本的语法,可以流畅写出适合该语言代码风格的程序,熟悉语言的生态圈(库和框架),了解语言背后的逻辑(虚拟机、垃圾回收、编译器等等)。
绝大部分公司的技术栈都是比较单一的(这是好事情),你的灵魂语言可能决定了你可以去哪家公司。当然这不是绝对的,一个好的程序员应该可以在短时间适应一个新的语言。尽管如此,精通一门语言会让学习其他语言更轻松。
量化
这部分属于业务相关技能,跟从事的量化策略分类有很大关系,所以应该根据自己所处的公司选择。
当然还是有一些共通的技能:
- 基本的概率论和统计
- 基本的线性代数
- 基本的金融市场基础知识
- 基本的量化交易基础知识
这些共通技能之后,就要根据自己的领域,选择专精了。比如高频、做市、期货、股票等等。
学习路径
计算机学习
可以参考我之前关于转行计算机的视频(文章),里面有推荐书籍和课程。
量化学习
这里我推荐一些书籍和课程,当然主要是针对上面提到的基础知识部分,因为专精的部分我只能根据我自己的领域推荐了,以后会专门给大家讲。
以下是一些量化基础知识:
基本的数学知识: