分类
外汇剥头皮交易策略基础知识介绍

绝对收益之CTA策略开发

专注量化十五载,全周期CTA策略穿越牛熊,双隆投资靠什么取胜?


Notice: The content above (绝对收益之CTA策略开发 including the pictures and videos if 绝对收益之CTA策略开发 any) is uploaded and posted by 绝对收益之CTA策略开发 a user of NetEase Hao, which is a social media platform and only provides information storage services.

2022年CTA线性趋势及展期策略专题报告 CTA策略指数收益率稳步上升

2019 年至今,各个头部的量化私募开始搭建自己的集群服务器,几乎百亿规模 以上的量化私募都有自己的中型或者大型的集群云服务器。集群云服务器带来 的开发便利性,让大范围的策略协作开发成为可能。如:将 CTA 的投研方法运 用到股票、可转债和场内 ETF 等。其中股票全市场每天的 Leve2 行情数据量达 到 15-20G,如果用非集群的方式,每个研究员都需要下载并清洗这么大的数据 量,开发效率会大打折扣,而且分工协作也会受到很大的限制。同时集群服务 器的搭建,也为大范围机器学习用于交易层面的研究提供了很好的算力平台。

1.7.CTA 策略收益来源

价格的趋势延续收益,也即趋势策略。在金融市场,不论是商品期货还是股 票,市场的波动分布都呈现出肥尾状。即出现单边行情时,价格往往会延续 同方向运行。

CTA 的另一个收益来源于展期收益,即商品远近月合约不同的结构带来的 收益。即:通过做多贴水较多的合约,做空升水较多的合约。获得一个较为 稳定的展期收益。

2. 线性趋势策略开发

2.1.使用数据来源、各品种的板块分类

本研报所有 tick 级的原始数据来源于 CTP 柜台接收的行情。历史上缺失的 数据,来源于掘金量化平台数据库。

分钟 K 线数始的 tick 数据自行合成各类字段。

2.2.线性趋势策略开发步骤

线性趋势策略的特点体现在线性和趋势两个方面,线性主要区别于非线性的趋势 策略。如:海归策略,压力位支撑位判断这种类型的策略都是非线性的。线性策略实 际交易展现出来的特点是随着信号值越大,仓位越大。

一般的线性趋势策略的开发步骤: 单因子挖掘 ; 进行因子评价,衡量因子对未来收益的预测能力 ;组合回测。

因子挖掘方式:用分钟 K 线的量价数据、盘口数据合成的因子数据、以及高频 tick 数据合成的低频字段数据来进行因子挖掘。遗传规划这类因子挖掘方式通常容易 过拟合,因子的直接解释性较差。

组合回测方式:简单的线性组合、线性回归组合和神经网络训练组合。量化 CTA 策略,特别是分钟 K 线驱动的,由于数据量较少,常用的组合方式就是简单的线性 组合,因为稳定、可解释并且可以减少单因子失效带来的组合影响。

2.3.STM 因子开发

接下来,分享一个量价因子构建和高频 tick 数据合成因子构建。 首先介绍一个 STM 因子,这个因子是通过构建一个移动窗口的平台,然后用判 断最新价格位于这个平台的位置,来计算因子值。在构建原始因子值的时候,建议是 把因子的值域调整为多空均衡分布,这样有利于后面的计算和数值处理。

计算因子参数和未来收益的矩阵: 根据因子公式,计算因子各不同参数的值。 计算未来第一根 bar 买,第 N+1 根 bar 卖的收益率。

计算因子半衰期: 将因子值的时间序列 factor 移位 N,得到移位后的时间序列 factor_N。然 后循环计算两者相关系数,直到满足: correlation(factor, factor_N)

回测参数设置:

数据驱动频率:5min 的主连 K 线数据,20130104 至 20220302。

成交价格:下一个 5min 的 vwap 价格,单边两倍交易所手续费。

档位组合:以多头为例(0.6 进,-0.2 出),(0.8 进,0.2 出),(1.0 进, 0.4 出),空头类似。

因子分组收益计算: 计算原始因子值的时序排名,窗口取值长度一般为 5 倍以上的因子值参数长度。 绝对收益之CTA策略开发 将排名后的值分成 10 组,计算每组未来第一根 bar 买,第 2 根 bar 卖的平均收益率。

2.4.VwapLim 因子开发

高频 tick 数据合成低频字段的因子示例: 取 5min 内,600 个 snapshot 数据,按成交量排序 ; 计算成交量最大的 200 个 snapshot 的成交均价(5min 内 snapshot 小于 300, 取全部数据),定义为:VwapLim200 ;定义 5min 内所有订单的成交均价为 vwap ; 构建大单均值因子:factor = VwapLim200 / vwap - 1 (趋势因子)。

2.5.STM 因子和 VwapLim 因子组合回测

商品 CTA 多因子组合,实盘交易时,大多是直接让每个有效因子独立运行一部 分资金,这样可以扩大策略容量,减少短时间内的执行压力。两种不同方式构建的趋势因子,宽参数网格遍历相关性系数后, 可以观察到两者相关系数最高的地方为 0.31。这侧面印证了,两个不同因子的构建 方式带来的信息增量是可观的。不同构建方式的因子用来组合时,由于其构建方式差异,因子相互组合,最终呈 现出来的绩效曲线是更加平稳的。

3. 展期策略的开发

3.1.展期策略逻辑介绍

3.2.展期因子构建

展期策略 BTG 因子构建步骤:(以下值都是逐日计算的); 将最近月期货合约价格当作近似的现货价格:SpotPx ; 获取每个期货合约的价格为:FutPx ;获取每个期货合约剩余交易日:Rdays(大于 0) ; 计算每个期货合约的展期收益率,公式如下: . = [log(. ) − log(. )] ∗ 365/. /100.0; 将每个期货合约的 Cret 值用成交量加权得到品种展期收益率:FctCret(值越 大,远期升水越多) ; 每日对 FctCret 值进行横截面升序排名 FctCret_RankAsc,即:BTG 因子。

3.3.展期策略回测

数据驱动频率:日频,20130104 至 20220302。

成交价格:次日开盘前 30min 的 vwap 价格,单边两倍交易所手续费。

每天取 BTG 因子最小的 N 个标的做多,BTG 绝对收益之CTA策略开发 因子最大的 N 个标的做空。

平仓时,边界档往外延伸 3 个排名。(例:平多时,FctCret_RankAsc 值至 少大于 N+3)

遍历 N 的值为(3,5,10),最终选择 N=5:

4. 线性趋势策略和展期策略组合

简单线性组合

在策略开发中,从不同视角和不同交易行为逻辑开发不同的策略,能给整体的 portfolio 绩效带来较为显著的一个边际提升。所以对策略底层逻辑的研究比策略的过 度优化能更容易带来显著的绩效提升。

CTA策略指数自2000年以来稳步上升,指数呈现出非常明显的非线性特点。 这也是危机 alpha 的一个很好的验证,当市场整体波动率低迷时,CTA 策 略指数横盘调整;当市场整体波动率上升时,CTA 策略指数出现阶跃式的 上升。所以当权益市场大跌之时,CTA 策略能很好的弥补权益端的回撤。

CTA 策略收益来源:价格的趋势延续收益,远近合约的展期收益。其中趋 势延续收益源于金融市场的肥尾效应;远近合约的展期收益来源于商品库存 周期的带来的远近月合约显著价差的收益。

线性趋势类策略:分钟级数据驱动的中高频策略和日频数据驱动的低频策略。 分钟级数据驱动主要以量价因子、盘口因子为主,日频数据驱动以现货数据、 仓单和会员持仓等数据为主。

两类策略组合:两种策略类型收益来源不同,策略日收益率序列的相关系数 为负相关性。所以两类策略进行组合时,可以明显提升整体绩效曲线的平稳 度,并且从分年绩效指标来看,显著提高夏普比率。

2022年CTA线性趋势及展期策略专题报告 CTA策略指数收益率稳步上升

2019 年至今,各个头部的量化私募开始搭建自己的集群服务器,几乎百亿规模 以上的量化私募都有自己的中型或者大型的集群云服务器。集群云服务器带来 的开发便利性,让大范围的策略协作开发成为可能。如:将 CTA 的投研方法运 用到股票、可转债和场内 ETF 等。其中股票全市场每天的 Leve2 行情数据量达 到 15-20G,如果用非集群的方式,每个研究员都需要下载并清洗这么大的数据 量,开发效率会大打折扣,而且分工协作也会受到很大的限制。同时集群服务 器的搭建,也为大范围机器学习用于交易层面的研究提供了很好的算力平台。

1.7.CTA 策略收益来源

价格的趋势延续收益,也即趋势策略。在金融市场,不论是商品期货还是股 票,市场的波动分布都呈现出肥尾状。即出现单边行情时,价格往往会延续 同方向运行。

CTA 的另一个收益来源于展期收益,即商品远近月合约不同的结构带来的 收益。即:通过做多贴水较多的合约,做空升水较多的合约。获得一个较为 稳定的展期收益。

2. 线性趋势策略开发

2.1.使用数据来源、各品种的板块分类

本研报所有 tick 级的原始数据来源于 CTP 柜台接收的行情。历史上缺失的 数据,来源于掘金量化平台数据库。

分钟 K 线数始的 tick 数据自行合成各类字段。

2.2.线性趋势策略开发步骤

线性趋势策略的特点体现在线性和趋势两个方面,线性主要区别于非线性的趋势 策略。如:海归策略,压力位支撑位判断这种类型的策略都是非线性的。线性策略实 际交易展现出来的特点是随着信号值越大,仓位越大。

一般的线性趋势策略的开发步骤: 单因子挖掘 ; 绝对收益之CTA策略开发 进行因子评价,衡量因子对未来收益的预测能力 ;组合回测。

因子挖掘方式:用分钟 K 线的量价数据、盘口数据合成的因子数据、以及高频 tick 数据合成的低频字段数据来进行因子挖掘。遗传规划这类因子挖掘方式通常容易 过拟合,因子的直接解释性较差。

组合回测方式:简单的线性组合、线性回归组合和神经网络训练组合。量化 CTA 策略,特别是分钟 K 线驱动的,由于数据量较少,常用的组合方式就是简单的线性 组合,因为稳定、可解释并且可以减少单因子失效带来的组合影响。

2.3.STM 因子开发

接下来,分享一个量价因子构建和高频 tick 数据合成因子构建。 首先介绍一个 STM 因子,这个因子是通过构建一个移动窗口的平台,然后用判 断最新价格位于这个平台的位置,来计算因子值。在构建原始因子值的时候,建议是 把因子的值域调整为多空均衡分布,这样有利于后面的计算和数值处理。

计算因子参数和未来收益的矩阵: 根据因子公式,计算因子各不同参数的值。 计算未来第一根 绝对收益之CTA策略开发 bar 买,第 N+1 根 bar 卖的收益率。

计算因子半衰期: 将因子值的时间序列 factor 移位 N,得到移位后的时间序列 factor_N。然 后循环计算两者相关系数,直到满足: correlation(factor, factor_N)

回测参数设置:

数据驱动频率:5min 的主连 K 线数据,20130104 至 20220302。

成交价格:下一个 5min 的 vwap 价格,单边两倍交易所手续费。

档位组合:以多头为例(0.6 进,-0.2 出),(0.8 进,0.2 出),(1.0 进, 0.4 出),空头类似。

因子分组收益计算: 计算原始因子值的时序排名,窗口取值长度一般为 5 倍以上的因子值参数长度。 将排名后的值分成 10 组,计算每组未来第一根 bar 买,第 2 根 bar 卖的平均收益率。

2.4.VwapLim 因子开发

高频 tick 数据合成低频字段的因子示例: 取 5min 内,600 个 snapshot 数据,按成交量排序 ; 计算成交量最大的 200 个 snapshot 的成交均价(5min 内 snapshot 小于 300, 取全部数据),定义为:VwapLim200 ;定义 5min 内所有订单的成交均价为 vwap ; 构建大单均值因子:factor = VwapLim200 / vwap - 1 (趋势因子)。

2.5.STM 因子和 VwapLim 因子组合回测

商品 CTA 多因子组合,实盘交易时,大多是直接让每个有效因子独立运行一部 分资金,这样可以扩大策略容量,减少短时间内的执行压力。两种不同方式构建的趋势因子,宽参数网格遍历相关性系数后, 可以观察到两者相关系数最高的地方为 0.31。这侧面印证了,两个不同因子的构建 方式带来的信息增量是可观的。不同构建方式的因子用来组合时,由于其构建方式差异,因子相互组合,最终呈 现出来的绩效曲线是更加平稳的。

3. 展期策略的开发

3.1.展期策略逻辑介绍

3.2.展期因子构建

展期策略 BTG 因子构建步骤:(以下值都是逐日计算的); 将最近月期货合约价格当作近似的现货价格:SpotPx ; 获取每个期货合约的价格为:FutPx ;获取每个期货合约剩余交易日:Rdays(大于 0) ; 计算每个期货合约的展期收益率,公式如下: . = [log(. ) − log(. )] ∗ 365/. /100.0; 将每个期货合约的 Cret 值用成交量加权得到品种展期收益率:FctCret(值越 大,远期升水越多) ; 每日对 FctCret 值进行横截面升序排名 FctCret_RankAsc,即:BTG 因子。

3.3.展期策略回测

数据驱动频率:日频,20130104 至 20220302。

成交价格:次日开盘前 30min 的 vwap 价格,单边两倍交易所手续费。

每天取 BTG 因子最小的 N 个标的做多,BTG 因子最大的 绝对收益之CTA策略开发 N 个标的做空。

平仓时,边界档往外延伸 3 个排名。(例:平多时,FctCret_RankAsc 值至 少大于 N+3)

遍历 N 的值为(3,5,10),最终选择 N=5:

4. 线性趋势策略和展期策略组合

简单线性组合

在策略开发中,从不同视角和不同交易行为逻辑开发不同的策略,能给整体的 portfolio 绩效带来较为显著的一个边际提升。所以对策略底层逻辑的研究比策略的过 度优化能更容易带来显著的绩效提升。

CTA策略指数自2000年以来稳步上升,指数呈现出非常明显的非线性特点。 这也是危机 alpha 的一个很好的验证,当市场整体波动率低迷时,CTA 策 略指数横盘调整;当市场整体波动率上升时,CTA 策略指数出现阶跃式的 上升。所以当权益市场大跌之时,CTA 策略能很好的弥补权益端的回撤。

CTA 策略收益来源:价格的趋势延续收益,远近合约的展期收益。其中趋 势延续收益源于金融市场的肥尾效应;远近合约的展期收益来源于商品库存 周期的带来的远近月合约显著价差的收益。

线性趋势类策略:分钟级数据驱动的中高频策略和日频数据驱动的低频策略。 分钟级数据驱动主要以量价因子、盘口因子为主,日频数据驱动以现货数据、 仓单和会员持仓等数据为主。

两类策略组合:两种策略类型收益来源不同,策略日收益率序列的相关系数 为负相关性。所以两类策略进行组合时,可以明显提升整体绩效曲线的平稳 度,并且从分年绩效指标来看,显著提高夏普比率。

CTA 策略方法应用于股票

我们认为 CTA 策略研究的思路也可以用来开发交易股票的策略,对于上述的一些CTA策略应用于股票的不利之处,我们可以通过一些方法得以解决:1)虽然个股之间的相关性较大,但是剔除基准市场收益后的个股超额收益之间的相关性就较低,不考虑仓位大小的股票交易策略的核心就是获得个股超额收益;2)我们的策略只做多个股,通过做空对应的股指期货来获得绝对收益;3)我们使用股票组合来降低风险,包括个股的流动性风险和个股自身的价格波动风险。


类 CTA 股票交易策略设计思路

我们使用上一节中所述的第二代 CTA 策略的思路来构建股票交易策略:首先根据个股的一些特征(例如市值大小、近期涨跌幅、PE 股指倍数、波动
性等)来决定该个股适用于趋势跟踪策略还是均值回复策略,还是两者都不适合;然后在个股超额收益(个股收益减去基准指数收益)曲线上使用对应的策略系统进行交易。下面的历史回测中,我们使用中证 500 绝对收益之CTA策略开发 作为基准指数。

我们把策略的平均持有时间设定在一到两月之间,因为太长的时间周期使得数据量不够而容易使我们的策略过优化,时间周期短的话交易过于频繁使交
易成本高企。我们发现在一到两月这个持有时间窗口上,反转策略更容易获成功,虽然趋势策略在一些市值较小或前期涨跌幅适中的个股也能获得收益,但是收益率远不如反转型策略。下面的结果主要是针对反转型策略。具体的反转策略我们使用一种经典的反转交易系统:当长期价格平滑曲线
和短期价格的差超越其历史差值标准差的 1.5 倍时进场,当短期价格在长期价格平滑曲线之上时出场。价格曲线平滑的方法可以是简单移动平均,我们使用的是一种基于 Kalman 滤波的平滑方法。


适用反转策略个股的特点

CTA 交易策略的成功在于标的的选择,选择策略友好的标的即标的在该CTA 模型设置下获得高收益的可能性较高。我们在上述反转策略的基本设置下,
根据个股的一些指标进行分组,考察不同指标值区间反转策略的收益率。我们分析的指标包括:流通市值排序、PE 倒数排序、最近两个月的波动性排序最近一个月成交金额排序。这些指标不同分组中反转策略的收益如下面图中所示,横坐标为按指标从小到大分组的组别,纵坐标为反转策略的平均收益(个股超越基准指数的收益,平均持有期为 35 天)。可以看出,市值小、波动性高、成交金额低和 PE 高的个股中反转策略比市值大、波动性低、成交金额高和 PE 低的个股有效,而且这种关系比较明显。

A 股市场的个股反转效应并不是基于公司基本面的反转,而是来自于投资者的行为心理。价格锚定效应(Anchoring Effect)让投资者认为近期下跌的股票已经相对便宜而买入,风险厌恶又让投资者卖出近期盈利的股票而落袋为安,这两点对个人投资者尤其如此。因为个人投资者比较偏好市值小和波动大的股票,所以小市值和高波动股票上反转策略更能奏效。基于上述发现,考虑到个股的流动性,我们筛选适用进行反转交易的个股的方法步骤如下:
1)剔除流通市值排序在前 绝对收益之CTA策略开发 20%的大市值股票;
2)剔除近期涨跌幅排序在后 10%的股票;
3)剔除波动性最低的 20%的股票;
4)剔除近期成交金额最大的前 20%的股票;
5)剔除 PE 倒数最大的前 20%的股票。

个股 CTA 策略回测结果

对 2009 年 1 月至 2014 年 11 月的数据进行历史回测,以产生进场或入场交易信号的下一个交易日的成交均价为模拟成交价格,上述反转策略每次交易获得的平均超越中证 500 的收益为 绝对收益之CTA策略开发 3.8%,每次交易的平均持有期为 32 个交易日,平均每天产生 26 个股票的入场交易信号。如果进行更严的筛选条件,那么每次交易的平均收益更高,但是产生的交易信号更少,也更倾向于中小市值股票。

虽然我们的交易标的中剔除了大市值股票,模拟交易时持有的组合的风格也偏向中小市值股票,但是和代表市场中等市值风格的中证 500 指数相比,该
策略的超额收益比较明显。并且每天产生的可交易信号的个数较多,我们认为可以应用于中小规模的资金管理。通过上面的测试,我们认为 CTA 交易策略的方法同样也可以应用于个股量化交易策略的设计上。把 CTA 策略的方法用于交易股票的好处一是交易策略具有严格的纪律性和进出场的方法,二是该方法为我们提供一类新的交易股票的策略。