最近几年机器学习很火爆,很多行业都尝试将机器学习和自身行业结合起来,启发新的思路,开发新的产品。自动驾驶,智能音箱等不再一一列举。量化方面也尝试将机器学习运用到策略研发中,但目前来看到特别出彩的成果,虽说机器学习大多也是基于概率和统计,和量化使用方法基本一致的。但由于交易数据中高噪声和“目标漂移"(目标不是固定的,比如熊市,猴市的优质策略放牛市可能亏钱)。
量化交易几大部分,选股,择时,套利,事件,趋势。其中选股如果基于多因子,不论是技术还是基本面,由于和统计同源,很难超越统计效果太多,而且这属于传统领域已经发掘多年的课题了,难以找到新的盈利点。择时方面,曾见到过用隐马尔科夫进行牛熊市判断的(训练数据上看起来效果不错),预测新数据效果,持怀疑态度。
对于机器学习+时序的量价信息用于股价预测,个人并不看好。机器学习并未万能,如果一段行情人工判断都无法判断是牛熊市,指望机器如何判断?这里想必有人反驳,人工做不到的机器做到了也有啊,打游戏,下象棋。其实,机器相比人而言,唯一是计算,唯二是记忆,机器没有任何逻辑或抽象能力(计算机做的只是求解了一个or一组方程(模型)的最大值,or最小值)。如果机器做的比人好,那它必依赖这两者其一。大家可以想想,目前所有的机器学习适用场景or领域,是否有例外。象棋,其实是采用了模特卡洛模拟(有一些加速的优化技术),但其本质就是记下当前的棋盘状态,然后瞎猜,瞎蒙,那种下法胜率高就用那种。那么,我们人工无法用大脑预测股票的时序数据,是因为人类存储能力不足?或者是计算能力不足?那么采用20-30个数据点预测下1个数据点,总没有所谓存储or计算问题了吧,可我们依然无法处理。
目前机器处理的问题,分类聚类回归推荐等,本质上都是对过去数据的“总结”或“描述”,总结过去数据特征,要么找到合适分布,或合适分界面,或构造损失最小回归面。总之,学习的数据和预测的数据存在某个共同的规律(或者短期不变的规律)。但股价时序数据并不满足这一点。今天一模一样的行情,明天却大相径庭,机器学习也不擅长处理自相矛盾的数据。
机器发现规律的方式,只是按照人们的前提假设,找出最符合人类假设的参数等。所以在实际做工程时,需要试试LR,试试决策树。这里做的事情就是告诉他,我们认为现在丢给你的数据符合LR的处理规则(比如线性相关),其实就是一种假设信息(而机器也不会发觉“您给的数据不符合LR算法”)。机器学习的抽象化只能依赖与人们开发的现成模型,比如,机器学习输入的数据,输出的模型,这也是一种抽象化,这种抽象化只是套用了人类的模型,然后求了一些方程最优解而已。它无法创造出模型本身。
判断一个工作能否交给机器学习(或机器学习能否处理),最简单办法就是看下人工是否可以完成,如果人们自己都无法对其建模,无法将其转化为”方程求解“问题,他们交给计算机大概率也是徒劳。人干不成说明事情本来就没规律,要么规律或模型过于抽象复杂(别指望计算机解决问题同时创造出一个新学科?),人能,就有戏,人都干不了,就别让机器干了。否则即使做出来,也带概率是预测布朗运动,准不准看运气。
所以,使用应马尔科夫判断牛熊,或者lstm预测指数走向,很难靠得住,可能效果还不如用均线方向做判断。
个人也在进行这方面的思考。目前更倾向于用其发掘‘异常公司".可以认为是”事件“。
比如:会进行收购或者重组的公司,大概率要么特别牛,要么是特别差(或者频繁大宗交易等)。如果对公司按照行业的基本面建模,这些公司大概率属于特殊的“离群点”,在进行收购或重组前,二级市场可能有大宗交易,或者股价会稳定缓慢上涨等(有一小嘬人知道内幕)。或者就是新闻多,有xx热点等。这方面用机器学习应该更容易,概率处理个别的特征比较方便,却很难发现多个维度之间的协同性质的关联,机器学习却能较容易的发掘这种内部关联。通过可视化技术观察数据是否符合自己猜测,如果符合并且计算重组等平均收益,看下是否有利可图,如果有利可图就可以尝试对其建模求解,这只是随手想来的例子,可能未必对。但想来会比预测股价时序要容易。
机器学习结合技术因子的策略:
【研究】机器学习寻找最优技术因子组合
https://www.ricequant.com/community/topic/36754//2
机器学习寻找最优技术因子组合之二
https://www.ricequant.com/community/topic/36829/