前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何使用图像识别预测趋势反转?

如何使用图像识别预测趋势反转?

作者头像
量化投资与机器学习微信公众号
发布2022-03-10 09:10:16
1.8K0
发布2022-03-10 09:10:16
举报

前言

近几年,深度学习算法在计算机视觉领域有着出色表现。我们也经常好奇,在量化投资领域,我们是否能够使用图像识别技术预测股价。要解决这个问题,首先要回答以下两个问题:

  • 如何将股价序列转换为计算机图片?(X)
  • 如何定义预测的目标?(Y)

以上两个问题,本质上就是如何定义训练样本及训练目标的问题。这是每个机器学习任务都会遇到的问题。对于这两个问题,很多人直观的回答就是:如果是图像识别的模式,是不是直接输入股价K线图,预测未来一段时间的涨跌就可以了。这种端到端的方式,大概率是不会有非常好的效果的。

今天分享的这篇文章,来自IEEE。本文从以下几个方面解答了以上两个问题:首先,通过Market Profile将股价序列转换为灰度的图像,然后定义预测的目标为趋势的反转。最后,使用CNN模型,预测未来是否会发生趋势反转。

Market Profile

市场轮廓指标,国内也称为四度空间指标。与传统的K线图相比,更能直观的展示当前市场的价格分布。假设,我们把一天时间分为5个时间段,以ABCDE五个字母表示。每个时间段都有高开低收的价格,我们只使用最高价和最低价,然后把对应的时间段(字母表示)标注在该时间段对应的价格区间。如下图Day1,A时间段最高价为3130,最低价为3100,那就在3130至3100的对应位置标上A;然后,B时间段最高价为3120,最低价为3090,那就在3120至3090的对应位置标上B;以此类推。

Market Profile到灰度图像

上述转换得到的Market Profile还不能直接作为CNN的输入,必须再转换成图像。在上述示例中,使用了日内的行情数据(把一天分成了5个时间段)。但在实证的模型中,作者只使用的日度的K线价格数据。作者使用了过去25天的价格数据,那么针对这25天的价格数据,转换为Market Profile就有多种方法。作者采用了以下几种作为对比:

  • 把所有25天的K线数据转换为Market Profile
  • 把25天,以5天周期分成5段,每一个5天转换为Market Profile

然后,又可以根据不同日期用不同的颜色表示,最终可以有以下几种定义样本数据的方式(具体参考以下图9和图10):

  • EGA,基于所有25天生成Market Profile,每个日期用不同的颜色表示。
  • EGB,基于5天一个时间段生成5个Market Profile,所有日期用相同颜色表示。
  • EGC,基于5天一个时间段生成5个Market Profile,每个时间段用相同颜色表示,时间段之间颜色不一样。
  • EGC,基于5天一个时间段生成5个Market Profile,每个时间段的第N天用一种颜色,比如所有时间段中的第1天为一个颜色。

作者使用标普500mini期货,过去20年的数据,并采用1日窗口,按下图所示,滚动将K线数据转为图像数据。

数据标注

上述个步骤,如何将K线转换为图像,解决了第一个问题。对于预测目标,也就是趋势反转,作者采用了以下定义,其中c表示收盘价,如果t-5日收盘价大于t-10日收盘价、t日收盘价大于t-5日收盘价且t+5日收盘价小于t日收盘价,侧为上升趋势反转;如果t-5日收盘价小于t-10日收盘价、t日收盘价小于t-5日收盘价且t+5日收盘价大于t日收盘价,侧为下降趋势反转。

模型结构

文中采用CNN模型,对输入的图像做训练与预测,具体模型结构如下:

实证结果

文中首先给出了模型的结果,如下表2表3所示。然后还给出了应用到具体交易策略中的测试结果,如表4表5所示。在其中表4为2%止损的结果,表5为5%止损的结果。具体交易策略逻辑如下:

  • t日,当模型预测趋势下降反转时(预测0),买入,并计划t+5日后卖出:
    • 期间如果触发止损,则卖出;
    • 如果下一日还是预测0,则在t+6日后卖出;
    • 如果下一日预测为1,则还是在t+5日卖出;
    • 如果下一日预测为2,则卖出。
  • t日,当模型预测趋势上升反转时(预测1),卖出,并计划t+5日后买入:
    • 期间如果触发止损,则买入;
    • 如果下一日还是预测1,则在t+6日后买入;
    • 如果下一日预测为0,则还是在t+5日买入;
    • 如果下一日预测为2,则买入。

如图14所示,在所有对比中,EGC获得了最高的平均单笔收益,2%止损的情况下,其年化收益率为50.5%,盈亏比为1.74。

总结

本文最大的创新是利用Market Profile将原本的时间序列预测问题,转换为图像识别的问题。这样就可以使用CNN进行趋势反转的预测。关于其他细节,请参考原文:

https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9693504

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量化投资与机器学习 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图像识别
腾讯云图像识别基于深度学习等人工智能技术,提供车辆,物体及场景等检测和识别服务, 已上线产品子功能包含车辆识别,商品识别,宠物识别,文件封识别等,更多功能接口敬请期待。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档