海龟策略深入研究-策略回测系列-9 品种选择检验(二)

传统筛选品种的方法


传统意义上,为保证策略的稳健性,应该进行样本内外检验,其具体步骤如下:

  1. 设定好历史回测周期,如2年的回望周期
  2. 设置固定的筛选标准,如夏普比率大于0.6
  3. 基于筛选标准,对每个品种进行策略回测,然后选择合格的品种组成投资组合
  4. 通过样本内筛选出来的组合,去预测其未来表现,如预测1年的策略表现
  5. 回望周期向后滚动,基于新组合再次筛选品种,直到预测最新年份未知

 
 

1 初步筛选

 
初步的筛选仅仅基于历史行情。

因为本次测试规定历史回测时间从2014年1月1日开始,故首先剔除在该时间点后才上市的品种,所以进行历史回测的品种从51个降低至35个。

所以一些例如苹果之类非常热门的新品种,不在本次测试范围之内。
 
 

2. 滚动回测

 
滚动回测标准如下

  • 回望周期:2年
  • 夏普比率标准:>0.6
  • 回望周期步进:1年

 

1)2014-2015 测试

对35个品种进行海龟策略的历史回测,如图所示。(下图小字“夏普统计出错”,其意思是总收益为负数,有时候转换成年化收益变成正数,导致负的夏普比率变成正数。)

enter image description here
enter image description here
enter image description here
enter image description here
enter image description here
enter image description here
enter image description here
enter image description here
enter image description here

根据夏普比率>0.6的准则,筛选出了17个品种,其历史表现和2016年预测表现如图所示。
投资组合在2014-2015年年化收益74.06%,百分比最大回撤-45.09%,夏普比率,1.41,整体上还可以,但是去2016年预测表现非常糟糕。这说明投资组合里噪声过多,稳健性弱。
下面分析一下挑选出来的品种成分,按交易所分类如下:

  • 中金所:沪深300股指
  • 上期所:铝、铜、螺纹钢、白银、线材、锌
  • 郑商所:普麦、一号棉花、菜籽粕、PTA
  • 大商所:玉米、鸡蛋、铁矿石、焦煤、黄大豆2号、豆粕

可以发现占绝大部分的是成交量巨大的品种,推测可能是流动性差的品种,如黄大豆2号等,导致其投资组合在2016年亏损,故非常有必要进行滚动回测来剔除表现不好的品种。
 
enter image description here
 
 

2)2015-2016 测试

 

第一次从35个样本中筛选出17个,本次同样将继续剔除噪声因子,试图提高海龟组合的预测效果,测试如图所示。
 
enter image description here
enter image description here
enter image description here
enter image description here
enter image description here
enter image description here

 

经过第二轮筛选后,剩下11个品种,同样按照交易所分类,如下:

  • 上期所:铝、铜、螺纹钢、锌
  • 郑商所:普麦、一号棉花
  • 大商所:玉米、鸡蛋、铁矿石、焦炭、豆粕

在新的投资组合中,年化收益达94.05%,百分比最大回撤是-19.94%,夏普比率达2.36,整体资金曲线比较平滑,但是其组合的稳健性仍未提高,在2017年仍然亏损,百分比最大回撤达43.79%,还需要在剔除无效的样本。
 
enter image description here

 
 

3)2016-2017 测试

 
第三轮测试也是最后一轮测试,将决定最终海龟组合内品种的构成,其单品种测试效果如图所示。
enter image description here

enter image description here
enter image description here
 
第三轮筛选后,得到由铝、铜、锌、普麦、铁矿石、焦炭、豆粕组成的海龟组合,都符合了流动性强的特征,该组合的历史回测和2018年预测效果如图所示。

结果同样是不理想,在样本内表现出色,样本外却亏损。
 
enter image description here
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
期货全品种行情下载工具和行情重播回测API 期货市场全品种行情tick数据收集工具3.1 支持盘中实时行情和历史行情连续回播,开盘时间申请到当前行情时间段也不会缺行情, 当数据服务器将文件历史行情回播完成后,开始接着播放实时行情,直到通过python api 调用方法,通知服务器停止回播实时行情。 目前不支持并发,对同一个品种多次调用回播api,会导致回播行情数据顺序错乱。 对不同品种多次调用回播api,可能因为cpu占用过大,会导致服务器UI没有响应。后面升级版本会 完整的并发解决方案。 期货市场全品种行情tick数据收集工具3.0 (1)TCP网络连接由同步模式改为异步模式,解决某些网络状况无法连接数据采集服务器的问题 未来升级版本将优化性能 期货市场全品种行情tick数据收集工具2.9b 清理了不需要的.lib,不会再提示缺少ctp的dll文件,删除了不需要的方法 支持任意IP地址的连接,可以实现连接云主机运行的行情收集服务器,或局域网里的行情收集服务器。 期货市场全品种行情tick数据收集工具2.9 修复了多个API进程之间回调数据时互相影响 当前合约数约323个合约,最大范围1200个合约,视合约产品而定。 本例正式发布版本2.7 可以自由设置行情服务器 模拟simnow24小时行情服务器在交易日上午没有数据,要在下午4点之后才有数据。 模拟simnow实盘同步时间服务器,和实盘同步。 可改为期货公司的服务器IP,见“快期”软件设置“测试和代理”中的行情IP地址 双击合约文件列表可打开分时图 TestPythonApi可以调用DataCollectServer收集的行情数据(给定合约和时间段) 2017.3.11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值