宽策略平台 > 量化交易学院
程序化交易随笔之二

——好模型VS坏模型

作者:倪成群

来源:海证研究所

+ 放大字体 | + 减小字体
2014-04-18

        在投资行业一直有一个说法,靠交易盈利是所有赚钱方式中最难的一种,以至于有人戏谑称交易为投资领域的搬砖工作。为提升交易效率、挖掘投资机会,程序化交易伴随着信息技术的发展大行其道,在算法实现、信号分发、智能下单、风险监控、损益分析等方面为交易人员提供了巨大的便利。程序化交易的类别众多,但不管哪个形式的程序化交易产品,其灵魂就是交易模型。在通俗的条件下,模型可以理解为定义了交易条件的一组规则,模型的好坏决定了程序化交易能否实现最终的盈利,程序化交易系统的构建者必须学会从纷繁多样的模型中挑出对系统最有利的投入生产。因此,构建区分模型好坏的评价体系便十分重要。

        无论是实盘交易数据的记录,还是采用历史数据进行回溯(Back-Testing)的回测报告,模型的优劣都是通过对交易情况的统计来进行评价,而问题的关键在于,到底需要通过哪些统计数据进行比较?先来看一个例子,假设在同一时间周期的测试中得到以下两组数据,我们能从中判定哪一个模型表现更优秀么?

 

编号

总盈利率

胜率

单笔最大盈利

最大回辙

模型A

50%

35%

10%

12%

模型B

30%

45%

20%

16%

        答案是,不能。评价体系的片面性将导致量化交易系统走向绝境。

 

模型测试报告全景

        如前文所述,如果对模型的评价标准过于简单,交易者很可能会被数据的假象所迷惑,就通用的形式而言,一份模型评估报告可以分成以下几个部分:

        其中,基本交易信息表述模型交易的品种、时间周期,动用的资金等基本信息,更多的模型特性是通过平均交易数据、持续性及统计指标来展示的,下表是我们目前的一个通用模型评价模板及单一模型的回测报告。 

 

模型名称

HICENDM1

模型分类

趋势

测试周期

15m

交易品种

IF

包含手续费

交易手数

1

测试天数

1338.00

盈利次数

49.00

指令总数

310.00

亏损次数

106.00

交易次数

155.00

可靠性

32%

亏损点数

-1420.60

总盈利率

125.7%

盈利点数

2803.40

最大盈利点数

428.60

平均每笔亏损点数

-13.40

最大亏损点数

-97.00

平均每笔盈利点数

57.21

扣除最大盈利后的收益率

86.8%

最大连续亏损笔数

8.00

扣除最大亏损后的收益率

132%

最大连续盈利笔数

2.00

平均盈亏比

4.27

亏损交易的平均棒数线

2.45

历史最大回撤

15%

盈利交易的平均棒数线

5.09

   

 

如何解读模型测试报告

        对于每个模型的测试报告,我们首先需要关心的当然是利润指标以及测试的时间长度,获得盈利是模型被选用的前提,或者说模型回报本身必须是正期望值的。利润与测试时间通常需要结合在一起来看,只有一两个月的测试报告无法反应阶段性行情特征对模型性能的影响,而过长周期的测试有可能导致模型的盈利能力被低估。根据模型的类别,测试期一般要涵盖特征不同的交易区间与趋势周期。但更重要的盈利指标还不是总盈利率,在实际的模型评价中,平均每笔盈亏以及平均的盈亏比是反映模型盈利特性的关键指标,平均每笔的利润当然是越大越好,以追逐趋势为目标的模型通常盈亏比要在2以上,否则其长期的盈利能力是需要打个问号的。接着我们还会关心单笔最大盈利与单笔最大亏损,一方面模型的设计者需要了解这两个极值出现的行情背景,另一方面如果单笔最大盈利占总利润的比重过大(例如50%),那很可能意味着模型的盈利能力难以在未来复制,常用的作法是将该交易剔除,在本文的案例中,扣除最大单笔利润之后,模型的累计利润率降纸了近40%。

        接下来再来看反映交易持续性的指标,很多人在做模型回测时往往忽略了对交易持续时间的考量。而事实上我们必须关心在盈利交易与亏损交易中持有头寸的时间长度,在一个趋势追逐型的系统中,这个值也可以大于5。对于模型的设计者来说,持有时间的长短必须取决于交易理念,太长或太短往往都是有问题的,特别是在进行样本外数据测试的过程中。另一项持续性指标是与模型的风险指标密切相关的,即持续盈亏的笔数。最大连续亏损通常发生了模型出现重大回撤的周期中,模型的设计人员需要仔细分析该时间区间内的市场表现,这对于理解自己的模型适用于哪种行情是极为重要的,对于本文的趋势模型来说,亏损交易的数量远高于盈利交易,连续亏损的笔数也明显高于连续盈利的次数。在实际应用的场景中,模型的使用者最为关心的风险指标是历史最大回撤,通常该指标是资管合同中的重要元件,此外一套模型在连续的周、月级别的盈利能力也是展示模型稳定性的最直观指标,这类指标可以告诉我们模型在出现回撤之后能够以多快的速度摆脱出来,但在本文的案例中并未体现。 

        最后是几个概率指标,首当其冲便是正确率(可靠性)。模型的可靠性当然是越高越好,但这并不代表着胜率高的模型就是好模型。以赚大亏小为逻辑的趋势型交易模型的胜率大多在30%至50%,胜率太低的模型不值得采用,因为其单笔盈利占比过高,试错成本损耗太大。而面对一个高胜率的模型,我们还需要区分其交易模型的逻辑,胜率超过60%的趋势追逐模型只能说是凤毛麟角了。 

        有一点需要说明的是,十全十美的评测报告并不存在,除了测试数据本身的问题以外,模型的使用方还有可能面临更多的陷阱,从参数优化到成交设计都有可能与实际运行的情况不同,更重要的是,执行层面的情绪问题是模型投入生产的X因素,实盘交易不可能在“情绪真空”的环境中运行,厚尾现象是每一个程序化交易者必须时刻警惕的。

海证期货有限公司 版权所有 许可证号:31390000

Copyright 2008 Hicend Futures Co.,Ltd. 上海工商

沪ICP备09005854号 郑重声明:本网站所载内容未经许可严禁转载

The content of this site is strictly prohibited reproduced without permission