. 数据分布
. 小样本
. 难以计算的数据
. 十分复杂
. 部分可见马尔科夫决策过程
. 推荐系统的相似性
. 结束思索
金融市场已经成为最早的采用机器学习 (ML) 市场之一 20 世纪 80 年代以来, 人们一直在使用 ML 以发现市场上的规律尽管 ML 在预测市场结果方面取得了巨大成功, 但最近的深度学习并没有对金融市场的预测有多大帮助虽然深度学习和其他 ML 技术终于使 Alexa,Google Assistant 和 Google Photos 成为可能, 但在股票市场上没有取得多大进展
但是, 我将机器学习应用于现实世界的金融预测问题尽管有很多论文声称成功应用了深度学习模式, 但我还是持怀疑态度来看待这些结果有些模型确实有更好的精度然而, 差异的量级往往还不够大
NLP 的改进有助于提高依赖文档分析的定量策略的有效性这是在金融市场中深度学习模型的一个不可多得的好处
所有这一切证实了金融市场本质上是不可预测的事实这里有很多原因让人难以预测我想强调一些使它变得困难的主要原因:
数据分布:
数据分布问题至关重要几乎所有的做金融预测的研究论文都忽略了这一点
我们可以将金融数据集与图像分类数据集进行对比, 以更好地理解这一点让我们考虑 CIFAR-10 数据集. 它包括了 10 个类每个类的训练集中有 5000 个图像, 每个类的测试集中有 1000 个图像
我们期望在狗分类的训练集中, 像素权重的分布与狗分类测试集中的分布相似换而言之, 狗的图像将包含在训练集以及测试集中的狗这比较傻的说明了: 狗的图像必须包含狗
对于大多数金融数据集来说, 这种明显的属性没有效你将来可能看到的和你目前看到的数据完全不同事实上, 将机器学习应用于现实世界是一个比较常见的问题除了确保测试和训练的数据集具有相似的分布以外, 还必须确保只有当将来的数据遵循训练 / 验证的分布才在产品里使用训练过的模型
虽然大多数研究者都注意不去把预测偏差纳入到他们的研究中, 但几乎每个人都不承认涉及数据分布问题
向前优化是解决这个问题的一种可能的选项这在从事者中是已知的, 但是研究人员常常忘记提到这一点然而, 即使是向前推进优化也不是解决潜在问题的灵丹妙药它假设未来数据分布将是什么样的这就是为什么向前优化的方法并不能真正给你带来高精度它只是比较实用
小样本大小(Small Sample Sizes)
机器学习经常需要从小数据集做预测一个例子是劳动力统计, 例如失业率和非农收入每个月得到一个数据点, 没有足够的历史数据一个极端的例子是金融危机只有一个数据点供我们借鉴
这使得应用自动化的学习方法变得非常困难许多人最终采取的一种途径是将不太频繁的统计数据与相对频繁的数据结合起来例如, 你可以结合非农收入与每日股票收益率, 并且把相结合的数据集提供给模型然而, 往往需要进行大量的监督, 以消除对模型质量的怀疑
难以计算的数据(Unquantifiable Data)
有人可能会说, 我们金融历史的时间表同人类历史本身一样不幸的是, 转换成量化的数据以让算法能理解的形式是比较困难的例如, 即使我们对 1930 年代大萧条期间发生的事情有一个全面的了解, 也很难把它转化成一种可以用于自动化的学习过程的形式
十分复杂(Its Quite Complex)
各种各样的因素在不同的规模驱动着价格:
. 高频交易和算法交易是短期内价格的主要驱动力(小于 1 天);
. 开盘价和收盘价都有自己的模式 - 包括在股票和期货 - 我所使用的两个资产类;
. 当涉及到多日线时, 新闻和谣言是驱动力详细的公司新闻可以在任何时候不预先通知的情况下发生然而, 某些事件的时间表是事先知道的, 比如公司的计划报表和经济数据一览;
. 价值投资和经济周期在涉及多年内价格变化时最为重要
专家群可以被用来组合不同规模的模型, 但这也是一个难题(请注意, 专家群是把相同规模的模型进行组合的一个很常见的技术几乎所有定量资产管理公司都采用)
部分可见马尔科夫决策过程(Partially Observable Markov Decision Process)
我乐于考虑把价格的时间序列作为部分可见马尔科夫决策过程(POMDP). 没有人在任何时间点都有完整的图片不知道明天会发生什么但你仍然要对交易做出决定你得到的信息非常少同时, 数据的分布也在不断变化
我已尝试将强化学习方法应用于金融问题即使我把问题 (即状态和行为空间) 简化了, 也学不到有用的东西我花了几个星期对于为什么不工作而进行调试结果是 RL 算法需要足够的可预测性
推荐系统的相似性(Similarities to Recommender Systems)
ML 可应用于非常广泛的领域在所有这些中, 我发现推荐系统是最贴近金融预测问题的对比来说提出了潜在问题的难点跟娱乐 Recsys 系统比较, 分析提出了潜在问题的难点
. 两者都有相对较低的精度. 让我们考虑一下 Netflix 的例子 Netflix 在主页上至少显示了 20 种电影选项因此, 对于每个建议, 选择观看电影的用户的平均可能性小于 1/20 有一个小于的标志, 因为用户可能只是不看任何东西就离开了同样地, 金融时间序列中的大多数二进制分类问题的准确率已经徘徊在 50% 左右了
. 两者的数据都有很多的杂音 (noise). 在这两种情况下, 信噪比都很高在金融时间序列离杂音较高, 因为很多不同的因素影响着价格 Recsys 数据集包含杂音(PDF), 因为用户的浏览通常是受影响的 - 用户可以访问特定的亚马逊产品页面, 完全无意从这类产品中买任何东西这就结束添加杂音(noise) 了
. 两者的数据集都有季节性. 假期间 Amazon 的购买模式 (即产品销售分销) 将与今年其它时间段不同同样适用于其它的 Recsys 问题, 如电影的兴趣和 YouTube 视频的选择还取决于在全年的时间金融数据也是季节性的, 最常见的季节性问题是经济周期
. 两者都必须处理看不见的事件 / 商品. 亚马逊在其目录中添加新商品, 不断增加 Netflix 标题到商品列表, 每一分钟新的视频都被上传到 YouTube 推荐系统必须解决这个问题如何推荐那些不是训练集一部分的商品正如数据分布部分所提到的, 金融数据可以包含与模型训练期间可用的完全不同的事件
. 两者都必须结合不同类型的数据进行模型训练. YouTube 上有一些独立的功能, 比如最后 N 个看过的视频列表, 它也有连续的功能, 比如最后一个视频的观看时长同样, 金融数据集可以由较高的频率价格以及较低的频率经济数字组成
结束思考:
如果因为一件事你要离开这个岗位, 应该这样: 金融时间序列是一个部分信息博弈(POMDP), 甚至对于人类也是很难的, 我们不应该期望的机器和算法突然超越人的能力
这些算法擅长的是发现一个硬编码的模式并应用, 这是一把双刃剑, 但有时可以有时不行它帮助绝大多数的简单模式来识别实例都已经被详细讨论了通过无监督学习在金融时间序列中识别模式的下一阶段仍然是一个难以实现的梦想
来源: http://click.aliyun.com/m/42608/