上期讲到,凡事都有个开始,现在我们进入Python的学习。由于是以文章的形式给大家展示,所以在此我只是教给大家一个学习方法,具体的语言以及应用就不过多介绍,如果想更快速可以入门的话,请关注我们微信服务号:品职学院,后面我们会推出用Python做量化投资的金融小课。
我们在上篇文章已经介绍了第一步安装Python,并且布置了作业让大家回家安装,不知道大家这步完成没有,还没看上期文章的,可以搭电梯直达:
接下来,我们要继续介绍,第二三四步。
第二步:如何入门?
给大家推荐两本书:《跟老齐学Python——从入门到精通》和《利用Python进行数据分析》。
Python基础:
《跟老齐学Python——从入门到精通》
其实Python基础的学习大家网上任意找本书开始学习都可以,之所以推荐这本主要是因为这是中国人写的,我们读起来更能get到他要表达的含义,老外写的书逻辑性总是读起来不顺,而且这本书语言还比较幽默,读起来不会很枯燥。
但是这本书大家也不用全读,因为我们的目的是做金融数据分析,所以Python怎么做网页这类的功能大家在初级阶段可以不用学。
这里有必要说一下学习方法,学习先要简化,不要给自己太大负担,不然很容易坚持不下去,等你入了门了,学的东西越来越多之后,再复杂化,再自己去研究深入的话题,效率会更高。在阅读这本书并跟着练习的时候,我推荐大家重点学习前三章,简单掌握一下Python的基础,入了门接下来的一本书你才能看懂。
Python数据分析进阶:
《利用Python进行数据分析》
大家要知道一点,我们学习Python并不是为了开发网站,而是为了进行金融数据分析和运行量化交易策略,为了更加贴近这一目标,大家在有了前面Python的语言基础之后,我要跟大家推荐是用Python做量化投资必看的一本书——《利用Python进行数据分析》。此书的作者曾是AQR Capital Management(AQR是2016年全球第三大对冲基金)的定量分析师、Python中用来做数据分析的主要的库——pandas的开发者,所以作者本身就是做金融数据分析的,这本书初学者最好把重点的几章好好练习一下,会有很大的收获。
对于这本书我自己在阅读的时候发现其实前面几章反而看起来吃力,因为前几章的内容对于现在的Python开发环境来讲有些过时,而且作者用很多数据做了一个总体的介绍,对于初学者来讲根本就摸不着头脑,很容易看着看着就放弃了,其实本书最有价值的内容是集中在第四、五、八、十二章对NumPy,pandas,matpotlib等工具库的介绍中,当然因为我们主要处理的是金融数据,所以建议大家也去阅读一下第十(时间序列)、十一章(金融和经济数据应用)。所以我建议大家可以跳过前三章,直接从第四章开始读,反而可读性更强一些。
第三步:阅读经典策略、阅读代码
现在大家已经Python入门了,但是如果直接给大家一个问题让你写一段程序还是比较困难的,在这个阶段,我建议大家广泛阅读代码,然后自己直接模仿。我们都知道“读书破万卷,下笔如有神”,这也适用于编程。通过阅读别人的代码,你可以熟悉一些解决问题基本的思路,相当于“站在巨人的肩膀上”,让自己开阔眼界,思维充实。
去哪里找到别人的代码呢?这个太简单了,现在国内有很多量化投资开源的网站,比如:优矿、聚宽(joinquant)、米筐(ricequant)等。当然还有很多国外优秀程序员的思想我们也不能放过,这个是尤其要向大家推荐的:GitHub。因为是国外的网站,小伙伴们可能不知道该如何去玩耍,没关系,知乎上有个问题专门是“怎样使用 GitHub?”,大家阅读一下就通了。
除了阅读代码以外,这个阶段大家可以结合代码多去研究经典策略。当然这些策略应该是现在已经赚不到钱了,不然不会被我们知道。比如我们之所以对长期资本管理公司的策略如此熟悉,主要是因为它已经倒闭了,所以才会拿来被我们研究,包括现在所知道的西蒙斯的大奖章基金用过的策略也是因为基本已经失效了,西蒙斯才会公布出来。
其实一个量化策略的有效期一般只有24个月,当然现在这个期限越来越短。因为市场上用的人越多,市场自身的价格就会反映这种操作,那么盈利空间也就会越来越小。但是大家阅读经典策略可以对市场、对量化交易有一个最直观的认识。至于经典策略有哪些,大家网上搜索一下就可以。
第四步:开发自己的
当然我们最终的目的是要做量化交易,只会编程以及基本的金融基础是远远不够的。我们要懂策略,更要能在将来开发自己的策略。这个时候拼的就不是编程了,拼的是智商。虽然智商大部分是天生的,但开发量化策略这部分的智商是可以通过后期的努力得到提高的。
不要指望一个新手一下子就能想出牛逼的策略,我们都不能,如果可以的话,自己搞点钱就去赚了,谁也不会告诉。我只是根据业内很多朋友的经验,给大家一些方法。
推荐几本书,先把量化基础打牢,因为量化寻找的是市场规律,那么很多策略也都是有规律的,所以大家要追根溯源,先对一些经典策略所依据的理论基础有一个系统的认识。
《主动投资组合管理:创造高收益并控制风险的量化投资方法》,该书问世已经20多年,一直是权威之作。两位作者都曾在BARRA供职10多年,其实BARRA的一些手册也是学习量化投资必备的,有一本《Barra Handbook——United States Equity》也值得一读。
《量化投资策略:如何实现超额收益Alpha》。本书作者Richard Tortoriello是S&P 标准普尔公司的证券分析师,他的日常工作就是建立一系列的数量选股模型。书中的模型类型覆盖面广,可以说是作者在对所有能够获得超额收益的策略进行了地毯式的搜索,并且提供了超过20种常胜投资idea的详细回测情况,充分展示了经验丰富的Quant是如何通过自己的想法来改进模型的。
《量化投资——策略与技术》。其实这本书写的不好,最大的问题就是看不懂,且没啥前因后果,看起来就像拼凑的。但这本书的最大价值其实是国内第一本将量化投资完整呈现给读者的。而且里面确实包含的策略非常广,我觉得大家通过阅读至少能对每个策略有个大方向的介绍,不过你就不要指望看了它就能自己会做这个策略了。那么怎么利用这本书呢?可以通过它的目录知道经典策略有哪些,然后再上网搜索,具体去研究一下每个策略的思想和实现。所以这本书大家可以把它当成一个索引。
《统计套利》。可以说套利是量化策略的鼻祖,宽客教父索普主要采用的策略就是可转债的套利。统计套利的基本思路是运用统计分析工具对一组相关联的历史价格数据之间的关系进行研究分析,研究该关系在历史上的稳定性,当真实市场上的价格关系偏离normal区域时,则认为该种价格关系不可长久维持,就可以进场套利。这本书是关于统计套利的百科全书,只不过读起来会有点吃力,因为用了很多公式和理论。
多读论文,当你对经典策略已经烂熟于胸了,并且大致了解了量化交易策略的基本构造,量化策略研发的进阶就要靠多吸收新鲜知识来支撑。有一个比较好的办法就是多去读一些论文,因为书的出版周期比较长,而且往往能够出成书的都是比较经典的理论,对量化交易来讲,往往也意味着是一些比较过时的方法。
而论文都是最前沿的思想,所以开卷有益,多多益善,论文多读不要管难易,想法总是会源源不断的产生的。然后再去把想法实现出来,可能错误的概率很高,但是事情总是在进展的,这就是好事,怕的是完全没有想法,那就真的是“巧妇难为无米之炊”。
其实除了多读paper之外,还要对所有可能产生策略的东西很敏锐,包括各种各样的八卦。比如你知道西蒙斯曾经挖过两个人,他们原先是IBM公司语音识别小组的创始人。如果足够敏锐的话(当然这种水平要经验非常丰富才有可能做到),其实你可以猜一下为什么语音识别跟投资是有关系的。因为语音识别程序可以不断地猜测说话人接下来会说出怎样的字句,那么它也可以解读金融数据,然后从中辨认出未来价格方向的概率分布。所以不要鄙视在网上学习一些碎片化的知识,可以多逛逛诸如知乎(中国版Quora)、雪球、Quora等网站。
最后,建议有志于从事量化交易的人也可以多读一些券商研究报告,虽然大部分报告都很水,很多研究员也是为了写报告而写报告,但是读多了还是能有一些启发的。
然后这周末可以期待一下,我们的量化课程准备要推出了。
配图来源网络