您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[国泰君安证券]:数量化专题报告:交易维度下的国债期货短周期策略 - 发现报告

数量化专题报告:交易维度下的国债期货短周期策略

2022-04-17陈奥林、刘昺轶国泰君安证券李***
数量化专题报告:交易维度下的国债期货短周期策略

传统技术分析在实战中的作用已逐步从预测转变为确认或解释。对于一些主观投资选手,他们的交易决策往往来自于外部宏观环境的变化或者事件驱动信息,此时传统技术指标可以帮助他们确认市场价格是否已经包含了他们所知道的信息,在拐点判断时尤为重要,可以增加交易决策的容错率。 系统化的现代技术分析框架则更为数量化,对指标表达广度、指标衡量方法、指标构建方法、指标预测方法有更为清晰的定义和方法,其着重点仍聚焦于预测收益或判断方向。 Levine and Pedersen (2016)在其论文《Which Trend IsYour Friend?》发现大多数技术指标均能由时间窗口内的收益率加权得到,表达空间较为有限。现代技术分析框架则借助更为多元的数学公式出非线性表达空间。 传统技术指标回测中,胜率和赔率往往不可兼得。趋势跟踪策略往往低胜率,高赔率,套利类策略则相反。本报告发现使用信号值和资产对数收益之间的相关系数能更为同时兼顾胜率和偏度。 脱离传统技术分析指标的形式束缚,本报告采用启发式算法挖掘更为多元的技术指标并分析其背后隐含逻辑。最后采用集成模型充分利用数据调整指标,样本外(2021年至今)表现远优于等权模型,且较基准有更高的风险收益比。 1.引言 本报告向读者展示了更为系统化的现代技术分析框架,分别从:1.指标表达广度 2.指标衡量方法3.指标构建方法4.指标预测方法 四个方面进行介绍,并构建了相关的国债期货交易策略。 需要承认的是,传统技术分析框架仍具备旺盛的生命力。但其在实战中的作用已逐步从预测转变为确认或解释。 对于一些主观投资选手,他们的交易决策往往来自于外部宏观环境的变化或者事件驱动信息,此时传统技术指标可以帮助他们确认市场价格是否已经包含了他们所知道的信息,在拐点判断时尤为重要,可以增加交易决策的容错率。 本报告则着重于预测和交易端,而非解释端,希望能给读者提供额外的思路,产生更为多元化的交易策略。 2.规则的约束 传统技术分析由指标驱动,较为经典的指标有均线,布林带,MACD以及RSI等等,它们往往是基于价格或成交量的函数,最终目的都是捕捉不同时间尺度下的趋势,并根据需要构建或追踪或反转的策略。下图展示的是一个非常经典的布林带策略,其中也包含了20日均线。 图1布林带策略 Levine and Pedersen (2016)在其论文《Which Trend IsYour Friend?》中对技术指标做过一定的数学证明,他们发现,学术文献和现实世界的投资者提出了许多策略,表面看起来很独特,但其均与趋势跟踪高度相关。 许多看似不同的策略可以被统一在一个简单、强大且直观的框架中。包括时间序列动量、移动平均交叉和其他流行的滤波等。 如下图所示,作者分别展示了卡尔曼滤波、EWMA和MA双均线,以及回归均线,这些不同技术指标在时间序列上的权重分布,可以发现不同技术指标均能由时间窗口内的收益率加权得到。 图2技术指标表达 图3技术指标表达 换而言之,即使很多技术分析指标看似形式各不相同,但其大多数均能由线性公式进行表达,所以大部分传统技术指标的表达空间是十分有限的,其注定难以拟合纷繁复杂的金融市场,对于预测收益作用有限。 还有一些成体系的技术分析框架,如缠论,艾略特波浪理论往往没有明确的数学表达,较难通过严谨的回测方法检验其作用,所以不在本报告的讨论范围内。 事实上,传统技术分析在实战中的作用已逐步从预测转变为确认或解释。 对于一些主观投资选手,他们的交易决策往往来自于外部宏观环境的变化或者事件驱动信息,此时传统技术指标可以帮助他们确认市场价格是否已经包含了他们所知道的信息,在拐点判断时尤为重要,可以增加交易决策的容错率。 3.胜率vs赔率 传统技术指标回测中,胜率和赔率往往不可兼得。趋势跟踪策略往往低胜率,高赔率,套利类策略则相反。传统技术分析框架中很难对这种类型的策略提供统一的衡量指标,最常见的方式还是进行回测,得到曲线后再分析诸如年化收益、波动,夏普率等指标。 事实上,我们可以得知,策略回测的夏普率指标能较好地表征或替代指标的胜率,策略收益的偏度则能一定程度上体现指标的赔率。 容易得知策略收益为信号值乘以资产收益,即: 𝑆= 𝑋∙ 𝑅 𝑇 𝑇 𝑇 其中𝑋为信号值,𝑅为资产对数收益,若这两者均符合标准正态分布,则: 𝑇 𝑇 𝐸[𝑋𝑅] = 𝜌 ] = 1 + 2𝜌𝐸[𝑋 2 𝑅2 ] = 3𝜌(3 + 2𝜌 𝐸[𝑋𝑅𝐸[𝑋𝑅 )+ 8𝜌 ] = 3(3 + 24𝜌 ) 其中𝜌为𝑋和𝑅的皮尔逊相关系数,对应的中心矩为: 𝑇 𝑇 𝜇= 𝜌𝜇= 1 + 𝜌 𝜇= 2𝜌(3 + 𝜌)𝜇= 3(3 + 14𝜌+ 3𝜌 ) 2𝑋 ) 假设信号值𝑋~𝑁(0, 𝜎),𝑅~𝑁(0, 𝜎 𝑅2 ,则可以直接推导出: 𝑇 𝑇 𝜇𝜇 𝜌√1 + 𝜌 1 1/2 2 𝑆ℎ𝑎𝑟𝑝𝑒 𝑅𝑎𝑡𝑖𝑜 = = 𝜇𝜇 2𝜌(3 + 𝜌)= 3 3/2 2 𝑆𝑘𝑒𝑤𝑛𝑒𝑠𝑠 = 23/2 (1 + 𝜌) 则夏普率与偏度和皮尔逊相关系数的关系如下图所示,可以发现在全区间上均呈现单调性。 图4策略夏普率/偏度—相关系数 此时可以发现择时策略收益的夏普上限为1,这是因为我们对信号值和资产收益的分布情况进行了较强的假设。 2𝑋 ) ) 更一般的情况下,假设信号值𝑋~𝑁(𝜇,𝜎,𝑅~𝑁(𝜇,𝜎 𝑅2 ,记𝛿=𝜇/𝜎,𝛿= 𝜇/𝜎可以推导出: 𝑇 𝑋 𝑇 𝑅 𝑋 𝑋 𝑋 𝑅 𝑅 𝑅 𝜇𝜇 𝛿𝛿+ 𝜌 1 1/2 2 𝑋𝑅 𝑆ℎ𝑎𝑟𝑝𝑒 𝑅𝑎𝑡𝑖𝑜 = = 2𝑋 2𝑅 √1 + 𝜌 + 2𝜌𝛿𝛿+ 𝛿 + 𝛿 𝑋𝑅 2𝑋 2 3/2𝑅 𝜇𝜇 2(𝜌+ 3𝛿𝛿+ 3𝜌𝛿𝛿+ 3𝜌(1 + 𝛿= + 𝛿 𝑅2 )) 3 3/2 2 𝑋𝑅2 𝑋𝑅 𝑆𝑘𝑒𝑤𝑛𝑒𝑠𝑠 = 2𝑋 (1 + 𝜌+ 2𝜌𝛿𝛿+ 𝛿 + 𝛿) 𝑋𝑅 通过上面的分析我们可以知道,高夏普率意味着策略拥有更为稳定的收益表现,即高胜率。高偏度意味着策略更容易抓住大行情,即高赔率。 如果要兼顾到夏普率以及收益分布的偏度,使用信号值和资产对数收益之间的相关系数是个更好的选择。 4.一力降十会 在上一节中,笔者介绍了系统衡量技术指标的方法。本节中将介绍系统化技术指标的生成方法。 我们采用启发式算法进行技术指标挖掘,通过定义一系列计算公式及目标函数试图发现历史数据中存在的规律。具体技术细节详见笔者过去发布的报告《系统化择时之路3-一力降十会》,在此不再赘述。 输入数据 包含国债期货T以及TF得分钟频以及level1数据,分别为期货合约的高开低收价格数据、成交量、持仓量数据以及1-254的随机常数等:𝑜𝑝𝑒𝑛_𝑝𝑟𝑖𝑐𝑒,ℎ𝑖𝑔ℎ_𝑝𝑟𝑖𝑐𝑒,𝑙𝑜𝑤 _𝑝𝑟𝑖𝑐𝑒,𝑐𝑙𝑜𝑠𝑒_𝑝𝑟𝑖𝑐𝑒 𝑜𝑝𝑒𝑛_𝑟𝑒𝑡,ℎ𝑖𝑔ℎ_𝑟𝑒𝑡,𝑙𝑜𝑤 _𝑟𝑒𝑡,𝑐𝑙𝑜𝑠𝑒_𝑟𝑒𝑡 𝑜𝑝𝑒𝑛_𝑑𝑖𝑓𝑓,ℎ𝑖𝑔ℎ_𝑑𝑖𝑓𝑓,𝑙𝑜𝑤 _𝑑𝑖𝑓𝑓,𝑐𝑙𝑜𝑠𝑒_𝑑𝑖𝑓𝑓𝑣𝑜𝑙𝑢𝑚𝑒, 𝑣𝑜𝑙𝑢𝑚_𝑐𝑢𝑚𝑠𝑢𝑚 𝑜𝑝𝑒𝑛_𝑖𝑛𝑡𝑒𝑟𝑒𝑠𝑡,𝑜𝑝𝑒𝑛_𝑖𝑛𝑡𝑒𝑟𝑒𝑠𝑡_𝑑𝑖𝑓𝑓𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡1 − 254 使用算子详见下表,限于篇幅,本节仅展示部分基础算子,剩余算子可通过基础算子衍生而来。 表5:遗传规划使用算子 适应度函数为双品种(𝑇,𝑇𝐹)平均时序相关系数: ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅𝑓𝑖𝑡𝑛𝑒𝑠𝑠 = 𝑐𝑜𝑟𝑟(𝑋,𝑅) 𝑇 𝑇 在接下来的报告中,我们将展示部分指标表达式以及相关绩效。可以发现大多数指标表达式与传统表达式并不相同,但仍具备一定的隐含逻辑。 𝑰𝒏𝒅𝒊𝒄𝒂𝒕𝒐𝒓𝟎 𝑡𝑠_𝑐𝑜𝑟𝑟(ℎ𝑖𝑔ℎ_𝑟𝑒𝑡, 𝑡𝑠_𝑟𝑒𝑔𝑏𝑒𝑡𝑎(𝑙𝑜𝑤_𝑟𝑒𝑡, 𝑜𝑝𝑒𝑛_𝑖𝑛𝑡𝑒𝑟𝑒𝑠𝑡_𝑑𝑖𝑓𝑓)) 图6Indictor0隐含逻辑 从该指标的形式来看,我们很容易理解其背后含义。若分钟bar的多(空)头序列,即上下轨最高和最低价均呈加速上涨(下跌)时,国债期货的持仓量同时加速增加(减少),则看多国债,反之则看空国债。因为国债期货为多空双向交易,价格加速上涨可能同时由多方的主动加仓或空方的主动平仓导致,所以需要配合持仓量的变化来判断后续方向。 图7Indictor0样本内表现 𝑰𝒏𝒅𝒊𝒄𝒂𝒕𝒐𝒓𝟏 𝑡𝑠_𝑐𝑜𝑟𝑟(𝑖𝑛𝑑𝑒𝑥, 𝑡𝑠_𝑑𝑒𝑚𝑒𝑎𝑛(𝑛𝑒𝑔(𝑎𝑠𝑘_𝑎𝑚𝑜𝑢𝑛𝑡))) 该指标的隐含逻辑更为简洁,𝑖𝑛𝑑𝑒𝑥为0-254的常数序列,𝑎𝑠𝑘_𝑎𝑚𝑜𝑢𝑛𝑡为卖一金额,即若卖一金额逐渐减少(增加),则看多(空)国债期货。 图8Indictor1样本内表现 𝑰𝒏𝒅𝒊𝒄𝒂𝒕𝒐𝒓𝟐 𝑡𝑠_𝑐𝑜𝑟𝑟(𝑡𝑠_𝑐𝑜𝑣(ℎ𝑖𝑔ℎ_𝑟𝑒𝑡, 𝑜𝑝𝑒𝑛_𝑝𝑟𝑖𝑐𝑒), 𝑡𝑠_𝑠𝑡𝑑(𝑜𝑝𝑒𝑛_𝑑𝑖𝑓𝑓)) 然而并不是所有指标都能容易判断其隐含逻辑。上式可以理解为价格加速上涨(下跌)的同时,若价格波动放大(减小)则看多国债期货,反之则看空。但这一理解仍有些勉强,并不清晰。虽然该公式没有任何常参,且形式简单,但仍可能存在过拟合风险。此处我们可以替换部分变量重新进行测试。此处将ℎ𝑖𝑔ℎ_𝑟𝑒𝑡替换为𝑛𝑒𝑔(𝑙𝑜𝑤 _𝑟𝑒𝑡)。下图为其前后回测结果对比,可以发现17年之后并无显著区别,说明该指标并不是纯粹的数据挖掘导致的巧合而已。 图9Indictor2样本内表现(替换前) 图10Indictor2样本内表现(替换后) 在检验指标的过程中,我们并不绝对要求指标的隐含逻辑,因为更广泛的表达能力势必会牺牲一定的解释性,但并不代表该指标完全无用,也可能是受个人的交易经验所限。 5.集成模型 我们于上一节中通过2021年前的数据挖掘得到一定数量指标,从单个指标来看,其绩效表现并不稳定,本节将采用机器学习的方法对10个指标进行合成。 传统技术分析框架中对多指标的结合往往采用投票法或者交集法。这两种方法各有利弊,投票法虽然逻辑清晰,却没有挖掘指标的潜力。而交集法触发信号较少,存在过拟合风险,且对指标集合有一定要求,不利于后续扩展。随着技术发展,不少对冲基金均采用机器学习的方法对指标进行合成,通过对历史数据的训练,希望能挖掘到更多的指标潜力。 本节采用Kaggle比赛常用的集成模型对2021年前的国债期货收益进行拟合,基模型为随机森林,GBDT以及神经网络。 具体合成结构如下图所示,采用多个基模型的好处是和而不同,减小样本外的过拟合风险,从而变相增强样本外预测能力。 图11指标合成结构示意图 集成模型输出的为国债期货的预测收益率,我们可根据其历史波动调整杠杆率得到相应权重,与传统择时策略不同的是,结果并不是非0即1的,而是连续