国内目前的量化交易是否很少涉及到机器学习?
- 5 个点赞 👍
国内不了解
但是头部是广泛使用的,kaggle上就有简街的一个比赛
各种机器学习深度学习轮着来
但是即使是简街,也不敢在金融数据上尝试端到端,依然需要大量的构造特征工程,然后在此基础上进行ml的相关后续
查看全文>>
Dear Luna - 1111 个点赞 👍
在我看来, ML用于金融数据最大的问题是信噪比太低,“同分布”的数据量太少。 其他领域ml效果好的往往都有比较确定的模式, 只是模式很难规则化而已。 比如人脸识别, 虽然很难通过规则话程序语言描述人脸,但100个普通人来识别人脸,错误率非常低。说明这里是有一个规律性pattern的。这样的话,只要给出足够数量的数据,模型性能会显著提高。另外一个例子是智能驾驶,你并
不需要if else编程遍历到所有可能情况,只需要让传感器采集到足够长时间多地域的数据,自动驾驶能够很好的处理这些情况。 以上的例子从数据角度来说,都符合pattern相对固定,数据充足的,信噪比高的特征。这也是ML方法最适合的地方。
而即使是这样,在做预测的时候也需要主动选取特征,feature engineering也是一门巨大的学问。有人也许会说最近很火的cnn/deep learning, 不是可以by pass feature engineering这些,直接靠数据和计算力暴力撸么。 我是这样理解的, 人类识别特征和模式的能力远高于计算机, 如果需要让计算机逼近取代人的调参和feature engineering经验,那么你所需要的数据量是非线性增长的。很多通常运用ML的场所,数据量本身不是制约,或说,数据量的制约取决于你有多大的决心去获取数据。而机器运算能力的同步增长让更是让模型能够处理的数据大大提升。在这种情况下,deep learning才火起来。
然而金融世界里,事情并没有这么美好,最大的制约,在我看来数据是不足的。有人可能会笑,说tick level data,哪怕国内3秒一跳的股市也有4000多行一天,怎么能算是数据不足呢。
这里假设也用之前开车的例子来解释。金融世界里,如果你想训练出这么一个老司机,那么你会发现这辆车一会在人行道上, 一会倒开,一会儿飞起来, 前一刻有用的规律不一定能够稳定到下一刻。 又好比给一张股票k线图,100个人可能有100个说法, 语音识别,图像识别领域,不会出现这么低的识别度的。 所以,对一个正常开车的老司机,你坐副驾驶一个月能够总结出他开车方法,那么对于金融世界里这种逗逼老司机,又要积累多长时间的数据才能总结出它的行为模式呢。
也就是说金融时间序列里,训练集发现的pattern可能并不稳定, 也许只是过拟合的噪音, 哪怕确定不是噪音,pattern本身也会演化。这两个月的市场,和前两个月的市场,明显性状不一样。有个东东叫regime switch...哪怕你做的日内中高频,相对统计性状不受基本面太大影响,日度的波动率的变化也会有明显的变化,而这对你的pnl影响是非常直接的。
目前为止,在金融数据这块我个人还是偏好线性的描述,规则化的描述,因为这样即使错了,我知道错误在哪里,利润来源在哪里。 哪怕需要更复杂的信号组合,我也偏向random forest 或者svm 这种相对不那么容易过拟合的模型. 当然,这只是我个人的看法, 如果有其他的思路,也欢迎指出。
查看全文>>
TraderJay's - 191 个点赞 👍
谢邀
个人是做量化投资的,目前从业6年多,之前是做中低频的量化,近两年转到了做高频,也就是日内的T0。
天外有天,人外有人,以下的观点是从个人的研发路径得到的结论,有问题欢迎讨论。
首先,来聊一聊机器学习在中低频量化的应用。因为最开始是学的Barra那一套,线性模型。所以自然的想法,用机器学习去给股票打分,因子当然还是那一套,只不过省去了因子大类合成这些步骤,毕竟如果合成一下,不到10个因子,好像也不太用机器学习了。
最后的结果,还是挺让人失望的,尝试了很多机器学习模型,最后失败了,结论是所有的机器模型都跑不过传统的线性模型。
中间其实尝试过很多的方法,更换标签、回归问题变成分类问题、更多数据集、模型集成等等, 无一例外,跑赢不了最简单的线性模型。
事后来看,个人认为2个原因,在中低频信噪比太低了,另外就是数据还是太少。比如放入周度的数据,一年大概40~50个时间点,一年3000个股票算(早期的股票数量少,大约估计这个数字),10年也就120万个点。这个数字对于机器学习太少了,更不要说深度学习了。
后来转到日内的T0,机器学习还是展现了比较大的优势。毕竟,日内的因子上百个,谁也不会想着用线性模型去做。另外深度学习也比机器学习有更多的优势。这一块内容,我就不太方便细讲了。
个人认为这一段机器学习能够强于线性模型,一个是信噪比高一点,毕竟很多人工交易员能够在这个尺度上做的非常的优秀,确定性强一点。另外就是数据量的大幅度增加,一个股票的tick数据,全天4800个点,1天3000只股票,1天的数据量是1440万。如果是10天,这个数据量就上亿了。
这么多数据喂给机器学习还是能学点东西出来的,毕竟很多机会,人肉眼都能发现。机器学习再学不出来,就是人工智障了。
最后,聊一聊机器学习。我一直认为,机器学习能够把一件事情做好的前提是,人能够把这件事情也做的比较好。如果人都做不好这件事情,指望机器做好是不可能的。
比如,在中低频尺度上,没有哪一个主观的研究员、基金经理,做到高胜率、低回撤,Barra那一套更多是从风险控制上去考虑的。人都做的颤颤巍巍的,机器在有限的外部信息下,能做的非常少。
再比如,现在大规模用机器学习、深度学习的互联网行业,很多是用来做推荐、反欺诈等等。这个的前提是人能做的不错,当然我说的是针对单个样本。比如一个工程师,看了看这个用户历史的购物记录、浏览页面、消费习惯、资金流水、亲朋好友的购物记录等等,他个人是可以给这个用户一个比较好的推荐广告的。
之所以用机器学习、深度学习,是因为,工程师数量太少了,用户数量是非常庞大的。不可能每个用户,配置一个工程师。所以才会用这些算法,给用户做推荐,做到千人千面。假设我们的工程师、客服数量是无限的,那做出来的推荐,绝对比机器给的结果要好很多。
另外,机器学习用到的特征,也都是人工给标记和提炼的(有听到过,用机器学习深度学习挖因子,但这个我还没用过)。以个人做量化的经验来看,好的因子反而是更加重要的。有效因子增加带来的改变,大于模型的性能提高。最近几年,大的量化公司,纷纷重视财务基本面的研究,希望能够给到模型更多有效的因子。有兴趣的可以去学一个CFA、CPA,拓展一下财务知识,然后再去实战中提炼更加有效的财务基本面因子。
查看全文>>
基股传声