怎样判断一个程序化策略交易失效还是正常失误?如果失效的话,如何判断是需要调整参数还是完全放弃策略?此问题确实关键而难以抉择,可藉由实务界的经验规则,或学术界的量化检验。
首先谈实务界的规则,这样,如果一个交易系统是经过良好的设计,良好的最佳化,没有过拟合的情形:
情形1:如果是用2年的历史数据来设计出来的系统,而且在这2年的历史数据都有不错的表现的话,应该会有6-12个月的生命周期。
情形2:如果是用5年的历史数据的设计出来的系统,而且在这5年的历史数据都有不错的表现的话,应该会有1-2年生命周期。
这个答案可以参考,但小编觉得时空背景不同,不能一概而论,且没有科学根据,但提供一个可以接受的观念。即使用的周期越小,持仓的平均时间越短,那就可以用越短的数据来进行测试,日内交易的,一般测式一年的时间是够用的,但隔日的,就要两年或以上的原因。
另一个较科学方法是使用统计检定,依据要检验的统计量,做均值、变异数与比例值的检定,如果要等到策略运用过程收集到30个样本,恐怕亏损连连了,因此通常采取小样本。
再则,策略运用过程报酬是依序产生的,有2个报酬就可以作检定了,但此统计方法在样本不足时也不会遽下定论,因此只要顺着产生的报酬数据依序带入检定,检查是否碰到临界值或P值,就可以决定是否放弃该交易模型了。
同理,也可以用变异数检定检定风险特性是否改变,用比例检定检定胜率是否改变)。
以上这种方法不太适用普通投资朋友,因为它的计算繁杂本身就是一个较大难度。所以,对于策略的失效与否,不妨用实盘中的一些数据,比如近一个月远差于策略以往测试,连续两个月远不如策略以往测试数据的话,就可以基本认为失效了。