关于程序化交易的系统检验
对于如何检验程序化交易系统的优劣,业内尚未建立起统一的评价体系。为此,笔者拟结合基于趋势跟踪原理的股指3分钟日内模型的分析,提出考察程序化化交易系统的五个重要方面:建模思想、基于不同交易成本的表现、参数敏感性测试、潜在风险暴露和最大损失额、杠杆比率测试。
建模思想
程序化交易系统的建模思想是否合乎逻辑、是否基于市场运作的基本原理是系统能否取得成功的关键因素。
若系统的构建仅建立在基于历史价格统计规律之上,为使资金曲线在既定行情下表现得尽可能平滑,人为增加各种限制条件,或利用交易平台不断调试,以取得绩效最优的历史表现,这样的交易系统看起来很诱人,实际上是经不起市场检验的。
特别是对于推出时间不长的股指期货而言,尤其要注重交易系统的建模思想。若简单根据历史数据建模,会因样本数据过少而引致严重的偏差,过度拟合等问题也难以避免。
合理的建模不应以基于历史数据的虚拟最佳绩效为目标,而应以未来良好的盈利能力为唯一目标。
基于不同交易成本的表现
广义的交易成本包括佣金、滑移价差和追价风险等多个方面。
佣金是指每笔交易向期货经纪商支付的费用;
滑移价差指的是交易员报价与实际成交价格之间的差额;
以日线为交易周期为例,追价风险是指在收盘价进行交易时由于涨跌停板等因素导致交易未成功,以第二天开盘价追价交易带来的风险;
此外,盘中的休息时间也可能导致追价问题。
国际经验表明,交易成本是影响日内程序化交易系统绩效的最直接因素,同样,一个交易系统在面对不同的交易成本时,其绩效可能会大不相同,甚至会截然不同。
以滑价价差为例,它将大幅减少盈利或扩大亏损,目前国内领先的证券公司和基金公司均致力于开发算法交易以降低滑移价差带来的额外损失。因此,程序化交易系统构建过程中对于交易成本的合理考量是该系统稳定性和可靠性的决定因素。
从资金曲线看,随着交易成本的不断增加,该交易系统的稳定性和盈利能力逐渐下降,这表明模型抗滑点能力较弱,当遭遇流动性不足行情或价格快速波动时,可能会因滑点而无法盈利。
另外,这一系统的资金容量有限,一旦头寸部位过大将会放大滑点风险,增加亏损的概率和幅度。历史数据表明,股指期货日内交易过程中,价格突变现象时有发生,这大大加剧了滑点风险。
为此,笔者设定了每次交易预期盈利指标(“EPPD”),以测度交易系统抵抗滑点的能力。EPPD=Pp×AP-PL×AL,其中,Pp为获利交易次数占比,PL为损失交易次数占比,AP为获利交易每次平均获利,AL为损失交易每次平均损失。若该指标数值低,则表明系统抗交易成本能力差。
参数敏感性测试
参数敏感性测试旨在衡量程序化交易系统对于参数变动情况下可能发生的盈亏情况,交易系统对参数越敏感,其适应性就越有限,稳健性也就越低。
为了更全面地衡量程序化交易系统的稳定性,应采用外部检验方法对参数进行分析,如在建模时间橱窗以外,基于该参数组或该参数有效域的程序化交易系统能产生较好的绩效,则说明该模型的适应性强,稳健性高。
潜在风险暴露值和最大损失额
潜在风险暴露值和最大损失额是交易系统评价体系的重要组成内容。业内常用VaR指标来测度既定置信水平和持有期内某一程序化交易系统在未来资产价格波动下所面临的最大风险暴露额。采用VaR的最大优势是将特定策略的历史波动性和相关性联系起来,通过类比的方法预测未来的价格风险,而且VaR适用于几乎所有市场的参与者。
鉴于VaR不能测度亏损的额度,有必要引入压力测试测度潜在可能的最大损失额,业内最常用的是情景测试方法,加入虚构情景,如价格涨停或真实历史情景,如以2010年2月沪铜的V字形走势等来测度交易系统的最大可能损失,以此综合衡量程序化交易系统的表现。
杠杆比率测试
基于不同杠杆比率下的交易系统绩效是检测一个交易系统的重要内容,可通过不断提高资金使用率来观测系统的绩效,以股指期货主力合约为例,在不同杠杆比率下,资金曲线存在较大的差异。股指期货主力合约及资金曲线(杠杆使用率18%)资金曲线显示,随着杠杆比率的放大,系统的亏损幅度也随之放大,因此,合理的交易系统还应设定合适的仓位。
▲