Py学习  »  机器学习算法

CTA拥抱机器学习-预测式信号初探

中信建投期货微资讯 • 5 天前 • 193 次点击  

本报告观点和信息仅供符合证监会适当性管理规定的期货交易者参考。因本平台暂时无法设置访问限制,若您并非符合规定的交易者,为控制交易风险,请勿点击查看或使用本报告任何信息。对由此给您造成的不便表示诚挚歉意,感谢您的理解与配合!


本文作者 | 童力  中信建投期货金融工程量化分析师

本报告完成时间 | 2024年6月26日


摘 要

近年来,机器学习方法在CTA策略研发流程中得到越来越多的应用,本文针对短周期量价策略的应用场景,探讨设计一套预测式信号构建的开发方法,寄希望通过引入机器学习方法,能够有效提升策略开发的生产力与策略多样性。

本文将策略开发拆解为数据预处理、特征工程、拟合工程 三大板块,并对每一个板块应用的方法进行了尝试探索。

测试结果表明,在手续费可控的条件下,策略有非常不错的绩效,但整体策略受手续费影响比较大,后续在策略开发的各个环节,还有很大需要深入研究优化的空间。

风险提示:本研究主要基于历史数据统计,存策略失效风险、模型误设风险、历史统计规律失效等风险。

概述

近年来,国内量化CTA市场发生了比较明显的策略类型变化。早期传统CTA聚焦于市场的动量特征,旨在追踪期货价格的单边趋势,趋势类策略是量化CTA的核心主导策略。2017年后,随着国内投资人对商品期货市场认识的加深,以及国外商品风险因子相关研究的引入,期限结构、基差、库存、对冲压力等因子逐渐在CTA策略体系中占有一席之地。最近几年,随着CTA市场规模以及关注度持续提高,市场策略趋同性愈发明显,各家策略开发人员持续在寻找新的策略研发方向。

在多种量化CTA策略研究方向中,相信短周期量价策略是受关注策略之一。短周期类不依赖期货市场的大级别趋势,信号对价格趋势的反转较为敏感,回撤相对可控,但同时短周期策略存在对海量的数据计算需求,策略不断更新迭代的压力以及交易成本压力的挑战。在策略开发过程中,短周期策略样本数量充足,较为适合在各个环节运用机器学习方法,这里我们把基于机器学习方法开发流程的策略体系分为一下三大类步骤:



如上所示,预测式CTA信号开发这里我们划分成三个流程:数据预处理、特征工程、拟合工程。数据预处理主要对原始量价数据进行数据清洗,数据的重采样、数据标签设计等;特征工程是整个流程的核心,包括因子挖掘、特征编码、特征评估等;拟合工程使用线性/非线性模型组合有效特征,使得整体特征组合绩效有更好的表现。

开发流程

现阶段,我们根据三个流程,分别进行了部分方法的初步实证分析测试,这一部分我们对各个流程目前采用的一些方法进行简要介绍。


2.1 数据预处理

数据采样

对于短周期高采样率数据,数据中噪声成本较高,不利于提取行情有效信息,这里我们在前期报告-“数据新视野:基于信息采样策略开发初探”中曾涉及到一种基于等信息采样的数据行情采样方法,这里我们采用等信息采样的方式降低采样率,提高数据处理效率,具体处理步骤如下:

Step1: 计算基品种归一化ATR波动率natr;

Step2: 每个交易日起始计算砖图采样幅度阈值threshold

Step3: 计算单位时间价格采样点与上一个等幅采样点的价格变动,若价格变动绝对值大于阈值threshold,则生成一个采样点,并记录相应信息。

brick_time: 采样时间

brick_size: 当前采样的设置阈值大小

brick_close: 采样时刻价格

brick_mov: 采样时刻相对上一采样点价格变动率

brick_vol: 采样间隔的累积成交量

oi: 采样时刻持仓量

bar_count: 采样间隔间的原始K线数量

day_first_open: 采样当前交易日开盘价

direction: 当前采样点相对于上一采样点的涨跌方向


采用等信息采样后,一是大幅度降低了采样率,提高了针对采样数据的特征开发效率,二是对噪声进行过滤,提高了后续特征工程/拟合工程的数据质量,最后通过等信息采样一定程度上归一化了标签数据,便于后续使用分类模型进行预测。


2.2 特征工程

特征编码

这里我们采用用于二分类的后验bayesian证据权重编码方式(WOE),采用WOE编码方式特征处理后,特征数据有以下的优势,一是处理缺失值,可以将变量缺失的一部分通过映射得到数值,巧妙的处理缺失值;二是异常值不敏感,对数据噪声有一定的抑制能力;三是较好的离散方法,对于连续型的变量,在制作分箱时提供了较好的离散化方式,使得信息损失较小;最后通过编码的方式,可以将连续型特征变量和离散型特征变量有效的融合在一起,在后续的拟合工程中能够将不同种类特征一起来训练。WOE编码计算如下:


下图为某一离散特征变量的WOE示意图:


特征评估

针对这分类预测类问题,我们采用了IV值(information value)作为特征的评估值,IV值计算公式如下:


2.3 拟合工程

当前,我们采用决策树模型对各个特征进行拟合,决策树模型示意图如下所示:

预测式信号表现

3.1 测试参数

测试标的:

[ 'RB', 'HC', 'I', 'J', 'JM', 'FG', 'SA', 'SF', 'SM' 'A', 'M', 'RM', 'OI', 'P', 'Y', 'C', 'CS', 'CF', 'SR', 'JD', 'UR', 'AP', 'LH', 'PK','CJ', 'AL', 'NI', 'ZN', 'SN', 'PB', 'CU', 'SS', 'BU', 'FU', 'EB', 'EG', 'V', 'L', 'SP', 'RU', 'TA', 'MA', 'PP', 'LU', 'PF', 'PG','SC', 'AG', 'AU', ]

测试时段:2019-01-01至2024-04-30

训练生成信号方式如下图:


3.2 测试结果


测试结果表明,在成本可控的条件下,基于预测式信号可以获得非常不错的交易绩效,但同时交易次数较多,单次获利比较微薄,整体绩效对交易成本比较敏感。如何提高交易胜率以及平均单次获利金额是后续研究的重点。

总结

基于机器学习预测式的CTA是对当前CTA策略体系的一个非常重要的补充,今年来受到越来越多的机构关注。本文梳理了基于机器学习预测式CTA的开发流程,并在每个流程上进行了初步的方法尝试。测试结果表明,当前方法体系在成本可控的情况下,取得不错的交易绩效,但对成本比较敏感是后续亟需解决的重要问题。后续研究中,计划对各个流程环节进行更多的研究尝试。在数据预处理研究中,计划可尝试以下几个方面:一是对砖图生成方式进行优化,对于跨日跳空的情况,修改砖图生成方式;二是尝试其他的标签方式,比如标注连续上涨或连续下跌为阳性标签。在特征工程中,挖掘更多的有效特征是核心的工作,另外如何评估特征与标签之间存在的非线性关系也是后续研究的一方面。拟合工程上,计划尝试更多的模型,以及实现多模型预测结果的融合,也是后续研究的重要工作。


免责声明

向上滑动阅览

本报告观点和信息仅供符合证监会适当性管理规定的期货交易者参考,据此操作、责任自负。中信建投期货有限公司(下称“中信建投”)不因任何订阅或接收本报告的行为而将订阅人视为中信建投的客户。

本报告发布内容如涉及或属于系列解读,则交易者若使用所载资料,有可能会因缺乏对完整内容的了解而对其中假设依据、研究依据、结论等内容产生误解。提请交易者参阅中信建投已发布的完整系列报告,仔细阅读其所附各项声明、数据来源及风险提示,关注相关的分析、预测能够成立的关键假设条件,关注研究依据和研究结论的目标价格及时间周期,并准确理解研究逻辑。

中信建投对本报告所载资料的准确性、可靠性、时效性及完整性不作任何明示或暗示的保证。本报告中的资料、意见等仅代表报告发布之时的判断,相关研究观点可能依据中信建投后续发布的报告在不发布通知的情形下作出更改。

中信建投的销售人员、交易人员以及其他专业人士可能会依据不同假设和标准、采用不同的分析方法而口头或书面发表与本报告意见不一致的市场评论和/或观点。本报告发布内容并非交易决策服务,在任何情形下都不构成对接收本报告内容交易者的任何交易建议,交易者应充分了解各类交易风险并谨慎考虑本报告发布内容是否符合自身特定状况,自主做出交易决策并自行承担交易风险。交易者根据本报告内容做出的任何决策与中信建投或相关作者无关。

本报告发布的内容仅为中信建投所有。未经中信建投事先书面许可,任何机构和/或个人不得以任何形式对本报告进行翻版、复制和刊发,如需引用、转发等,需注明出处为“中信建投期货”,且不得对本报告进行任何增删或修改。亦不得从未经中信建投书面授权的任何机构、个人或其运营的媒体平台接收、翻版、复制或引用本报告发布的全部或部分内容。版权所有,违者必究。



长按图片即可识别二维码


点个【赞】、【在看】· 遇见更多精彩

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/171645
 
193 次点击