水晶球APP 高手云集的股票社区
下载、打开
X

推荐关注更多

股道的卢

06年入市实战操作至今,经...


价值领航

稳健的投资风格和淘金精神


柴孝伟

建造十九层每层成倍财富高楼...


邢星

邢 星 党员,国...


石建军

笔名:石天方。中国第一代投...


揭幕者

名博


洪榕

原上海大智慧执行总裁


小黎飞刀

黎仕禹,名博


启明

私募基金经理,职业投资人


李大霄

前券商首席经济学家


banner

banner

科普文 | 量化投资从0到1

止一之路   / 2017-07-15 07:55 发布

网页链接%7CimageView2/2/w/1240" style="height:auto;" /br / /div p style="color:#2F2F2F;font-family:-apple-system, "font-size:16px;-color:#FCFAF2;"> 本文是科普文,对之前个人所写的量化投资相关的文章进行了一些整理,方便初次接触量化的朋友进行学习。

量化投资,可以按照字面分成两部分,分别是“量化”和“投资”。“投资”是指我们把钱投出去,而“量化”指的是投资之前需要做的准备工作。

下面,我将会从这几个方面对量化进行展开,当你弄清楚这些问题之后,就可以快速上手量化投资了。

最近两年,网络上的量化平台如雨后春笋一般涌现出来。

就算你没有听说过,也至少知道alphaGo战胜了李世石、战胜了柯洁的新闻。

在可以预见的未来,投资也会如此。

对于常常和数字打交道的投资领域,量化能够发挥出什么样的光彩呢?

他在1988年3月成立的大奖章基金。在1989-2009年期间,大奖章基金给客户的平均年回报率高达35%。

詹姆斯·西蒙斯给投资界树立了一个标杆,告诉了人们通过量化的方式,可以获得远远超出平均水平的收益。

而我们大部分人都是普通人,他的那套“弹指神通”我们可以学得会吗?

同样作为量化的初学者,我的一些经验或许能够给你提供一些参考。


2007年1月1日到2016年11月24日初始资金5万的回测结果

惊叹过后,我马上就用于实盘,下图是joinquant模拟盘至今的结果:

网页链接%7CimageView2/2/w/1240" style="height:auto;" /br / div class="image-caption" style="padding:10px;margin:0px auto;font-size:13px;color:#999999;" 二八轮动小市值 /div /div p style="color:#2F2F2F;font-family:-apple-system, "font-size:16px;-color:#FCFAF2;"> 实盘是从2016年6月6日开始的,一年多一点的时间里,获得了年化14.02%的收益。

当然,我实际上并没有紧跟这个模拟盘,因为中间对小市值未来存疑,我在2017年4月24日开始更换策略,就是我之前发布过的动态因子策略:

网页链接%7CimageView2/2/w/1240" style="height:auto;" /br / div class="image-caption" style="padding:10px;margin:0px auto;font-size:13px;color:#999999;" 动态因子策略 /div /div p style="color:#2F2F2F;font-family:-apple-system, "font-size:16px;-color:#FCFAF2;"> 所以实盘的结果是,从2016年6月6日至2017年7月13日,实现了24.49%的收益,折算成复合年化收益是21.95%。

对于一些牛人来说,量化的模拟盘可能是这样的:

网页链接%7CimageView2/2/w/1240" style="height:auto;" /br / div class="image-caption" style="padding:10px;margin:0px auto;font-size:13px;color:#999999;" 蚂蚁搬家03_精选策略 /div /div p style="color:#2F2F2F;font-family:-apple-system, "font-size:16px;-color:#FCFAF2;"> 也可能是这样的:

网页链接%7CimageView2/2/w/1240" style="height:auto;" /br / div class="image-caption" style="padding:10px;margin:0px auto;font-size:13px;color:#999999;" 银行日内 /div /div h2 id="1-2-" style="font-family:-apple-system, "color:#2F2F2F;font-size:24px;-color:#FCFAF2;"> 1.2 可以免受情绪的干扰

买了是否还会跌呢?
卖了是否还会涨呢?

既浪费了时间,又消耗了精力,还对我们长期地投资结果没有什么影响。

我们的投资决策,常常会受到情绪的干扰,这源于人性,很难解决。

在制定好量化策略之后,策略会根据市场的情况,对标的进行轮动。

以我个人为例,我设置的策略交易时间为14:50。

因为后面三分钟是深交所集合竞价时间,实际上交易的时间只有不到10分钟。

你说,这样的情况下,还有心思去纠结吗?

功课应该在投资之前就做好。

刚刚学习完价值投资,我就有这样的感觉。

我们还需要了解公司的商业逻辑,分析其竞争环境。

在刚开始还不熟悉的时候,常常需要花费十天半月的时间,才能研究好一个公司,并且这个公司还不一定适合投资。

也不怪有人会说,年轻人最重要的是投资自己。

量化投资,其实很好地解决了这样的问题。

如果你是一个上班族,想要获得不错的收益,又不想在投资上花费太多的精力,量化就是一个非常好的选择。

因为通过量化,你可以节省很多采集数据的时间[3],让自己专注于定性方面的研究和分析。

对于投资,不知道你有没有一些自己的看法?

但是随着研究和理解的深入,我发现作业抄得再好,你也很难超越写作业的人。

然后我就不满足于抄作业,也有了一些自己的想法。

之前看到别人分享的方法论,胜率挺高的,并且实现起来也不困难。

还好当时总投入的金额并不多,并且在亏损之后也没有继续出现想要回本的赌徒心态。

在那之后,我通过量化的方式,使用历史的数据进行了简单的回测,结果是:短期能够获益,长期是要亏损的。

很多投资策略,都可以先通过量化的方式进行回测验证。

例如我觉得技术指标效果不是很好[4],然后我就统计了果仁网所有现成的技术指标数据:

网页链接%7CimageView2/2/w/1240" style="height:auto;" /br / div class="image-caption" style="padding:10px;margin:0px auto;font-size:13px;color:#999999;" 技术指标胜率 /div /div p style="color:#2F2F2F;font-family:-apple-system, "font-size:16px;-color:#FCFAF2;"> 在经过回测之后你会发现,单独使用的技术指标,大部分都跑不赢指数,胜率也不高。

又例如,之前听说在节假日前,市场一般都会上涨[5],我就忍不住去验证了一下:

网页链接%7CimageView2/2/w/1240" style="height:auto;" /br / div class="image-caption" style="padding:10px;margin:0px auto;font-size:13px;color:#999999;" 节前最后一天上涨的概率 /div /div p style="color:#2F2F2F;font-family:-apple-system, "font-size:16px;-color:#FCFAF2;"> 发现还真有这回事。

再例如,我们说中国大部分都是散户[6],怎么样验证这个说法呢?


新增投资者数量和上证指数点位变化情况对比


交易A股的投资者数量和上证指数点位变化情况对比

简单来看,量化其实是对数据的统计。

据说雪球大V持有封基,用了十年的Excel,量化十年赚了十倍。

第一次看到的是这个模型的2.0版本[7]

其实这个策略实现起来非常简单,下面我就告诉你一个5分钟内就可以实现的方法:


表格

网页链接%7CimageView2/2/w/1240" style="height:auto;" /br / div class="image-caption" style="padding:10px;margin:0px auto;font-size:13px;color:#999999;" 净值曲线 /div /div p style="color:#2F2F2F;font-family:-apple-system, "font-size:16px;-color:#FCFAF2;"> 橙色的曲线就是该策略的实现效果。


多指数轮动

3 怎么学习量化?

很多人对量化敬而远之,其实是因为对编程的学习存在迟疑。学习需要花费巨额的时间,却并且不一定能产生相应的价值,这是很多人望而却步的原因。

甚至很多策略在这些量化平台上,都已经实现了,我们直接拿来使用就可以了。

我们之所以学了时间英语,却不能和外国人正常交流,原因是什么你想过吗?

我们可以直接找到一个应用的切入点,例如拷贝别人的代码,然后改成自己想要的样子。

拿之前发布的动态因子策略[8]举例,这个策略真正编程的时间只有半天。

首先是回测部分,如果你看前面几行,还能发现别人的版本标识:

网页链接%7CimageView2/2/w/1240" style="height:auto;" /br / div class="image-caption" style="padding:10px;margin:0px auto;font-size:13px;color:#999999;" 版本标识 /div /div p style="color:#2F2F2F;font-family:-apple-system, "font-size:16px;-color:#FCFAF2;"> 其次是研究部分,代码也是来源于别人的文章《【研究】量化选股-因子检验和多因子模型的构建》[9]

但没有关系啊,我逐行去执行代码,把每一个疑问都研究清楚。

所以实际上,我只是代码的搬运工。

一开始我对matplotlib一窍不通,因为曲线展现的需要,就学会了如何绘图,周二到周六分享的上证指数温度计图片,就是使用得到的结果。

根据自己的需要,不断地去使用就好。也不用强求自己一开始就能做得很好,日拱一卒就够。

4 量化的注意事项

未来数据
边界条件
有效样本

边界条件一般是指那些我们不能达成或者很难达成交易的情况。例如停牌,例如涨跌停。

样本的规模和策略中规则触发的频次有关。触发次数只有关键的几次,很可能这些规则就是过度拟合[12]数据的结果,得到的样本自然就是无效的。

[1]:与横扫华尔街数学家的珍贵对话
[2]:曾经,我找到了投资的圣杯
[3]:有了这几个工具,我研究公司花费的时间下降了80%
[4]:看K线,赚大钱。
[5]:又是一年五一节了
[6]:跌跌不休,什么时候是个头?
[7]:二八轮动模型升级至2.0版,更简单更赚钱
[8]:动态因子策略,圣杯?
[9]:【研究】量化选股-因子检验和多因子模型的构建
[10]:是什么,让你对自己的策略确信无疑?
[11]:投资10年300倍,你相信吗?
[12]:量化的实盘效果为什么总是不如回测?