量化投资与机器学习学习资料可行性推荐



  • ​2015年我写了一篇量化投资的学习资料推荐文章,有网友抱怨列得太多无从下手。所以我决定结合自己的经历,写一个针对这些资料的可行性学习步骤。
    基础阶段

    基础阶段,我指的是本科期间应该学习的内容。下面列的几个大项内容不分先后,前后没有依赖关系,可以同时进行。每个大项目内部可以按照abc顺序学习。

    1. 编程

    C++ :相信大家都有这个课程,不用我介绍学习资料。非得推荐一本的话就是 《C++ primer》
    python: https://docs.python.org/3/tutorial/index.html 我就是在2010年大三暑假看这个英文官方教程自学的python,当然当时是Python2. 学完这个教程之后python能力就靠边google边进步了。有C++和ACM的经历,看这个文档只用了一周。然后,我边google边写,给女朋友做了一个简单的QQ找茬游戏的游戏外挂,python就算入门了。
    基础算法: 推荐学习《算法导论》,同时去刷一些题,我因为大一的时候阴差阳错进了ACM校队,虽然只在大二上学期参加过一次现场赛,之后依然对算法有浓厚兴趣,所以在参加完比赛之后一年认真看了一遍英文版算法导论并做了上面大部分习题。算法导论里面讲了很多算法设计的基本思想,比如循环不变量的概念,其实非常有用。有的人觉得基础算法又难又不常用,不想学。很多国内学生这方法非常欠缺。我个人经历告诉我,基础算法平时用不上,真到用上的时候就解决大问题了。曾经遇到一个简单的问题,就是求移动时间窗口中任意第k大的数。当时是一家私募在面试的时候问我这个问题,后来得知这是他们实际回测策略的时候自己解决不了的一个问题。最后我用了红黑树做了个O(log(n))的算法解决了这个问题。

    编程需要一个趁手的编辑器,以前流行vim和emacs,现在vim依然是非常重要的编辑器,很多场合都能用上。近几年微软推出的vscode广受好评,我也非常喜欢用这个编辑器。

    1. 数理

    微积分和线性代数:这是看懂机器学习的书本和论文的重要基础。相信大家都有这个课,在这里提醒一下大一新同学一定学好。
    统计:其实我个人没有经过专业的统计方面的训练,我本科阶段是纯数专业的,博士又是计算数学,都和统计无关。有空的话,建议学习一下,工作中肯定能用到。我们统计系的教材应该是下面这本。

    机器学习:这个内容虽然我是工作之后才学的,也是因为工作之后这个方向才火起来,不过里面这些知识应该在大三的时候就能学了。建议本科毕业前就把这两本书看一遍。

    这本《深度学习》号称AI的圣经,有在线版本:https://www.deeplearningbook.org/ 也有中文的开源翻译:https://github.com/exacity/deeplearningbook-chinese

    周志华《机器学习》

    进阶阶段

    1. 金融知识
      如果你在本科阶段有了上述基础,在研究生阶段应该很容易就能找到不错的实习机会。这时候就可以学一些金融方面的知识深入业务了。有的人会选择考CFA。我觉得做量化CFA倒不是必须,有当然更好。我觉得下面这几本书值得读一读:
      《证券组合定价管理》这本书是我在银华基金实习的导师推荐的。

    《海龟交易法则》是非常著名的一本交易策略书,有些思想值得学习。
    这本书里我也找到了一些有用的策略。
    另外可以花点时间考个 “证券从业资格证”。

    1. 技术进阶
      熟练linux命令,熟练linux环境开发。
      版本管理: git/github使用
      学会python的一些常用包,例如pandas, TensorFlow, pytorch,可以根据工作需要学,用到再学应该也不晚。
      spark, 这个技术在我们公司用得比较多,pyspark或者java spark都有用到。
      到了临找工作,需要再突击一下基础算法,leetcode前150道题刷个两三遍也不为过。
      至于R,Matlab, Mathematica, Java等各种编程语言,用到了再学吧。我一般是领导用啥,我用啥,反正主流的这些我都会一些。

    如果有985硕士或者海外知名高校毕业同学(两三年工作经验之内的也要)觉得上面列的知识(除了金融知识)自己非常扎实欢迎加我微信yeshiwei投递简历给我,我们深圳正在急招算法工程师,上海职位应该也处于开放状态。另外如果你相比互联网更想做量化,我也给你准备了一个量化方面的JD:


Log in to reply