AI量化知识树

配对交易策略

由crisvalentine创建,最终由crisvalentine 被浏览 377 用户

配对策略的交易规则

对于股价有长期协整关系的两只股票X和Y, 可以通过历史数据回归计算两只股票的股价关系,即 Y = a*X + b, 得到相关系数a和残差项b; 如果两个股票所属同一行业,我们可以认为两者的股价未来应该保持上述关系,即序列 zscore=(b-mean(b,N))/std(b,N) 存在比较稳定的均值回归特性,保持在-1和1之间往复震荡; 当zscore小于-1时,Y股票低估,此时卖出X, 全仓买入Y; 当zscore大于 1时,X股票低估,此时卖出Y, 全仓买入X;

策略构建步骤

  1. 确定股票池和回测时间

    通过证券代码列表输入要回测的两只股票,以及回测的起止日期

  2. 获取历史价格数据

    通过输入特征列表输入 close_0/adjust_factor_0 因子,指定获取股票的收盘价真实价格。 通过基础特征抽取模块获取股票的价格数据。 通过缺失数据处理模块删去有缺失值的数据。

  3. 确定买卖原则

    当zscore小于-1时,卖出X股票, 全仓买入Y; 当zscore大于 1时,卖出Y股票, 全仓买入X;

  4. 模拟回测

    通过 trade 模块中的初始化函数定义交易手续费和滑点; 通过 trade 模块中的盘前处理函数每日用当日之前的历史数据计算一次zscore变量序列,并存放在context.zscore 变量中; 回测第一天用过去240个自然日的历史数据计算,后面每日用于计算zscore的历史数据逐日递增; 通过 trade 模块中的主函数(handle函数)查看每日zscore值,按照买卖原则执行相应的卖出/买入操作。

https://bigquant.com/experimentshare/23b9db245705438b87a50267809fc16f

\

{link}