01 原因
1、在高度随机的价格波动中寻找非随机性的部分
2、有效控制自身心理弱点,不影响投资决策
02 控制风险
1、交易系统经过大量样本检验后,统计得最大连续盈利次数不超过N次,则实盘发现已连续盈利N次后,应适当考虑减少仓位。反之,连续亏损M次后,下次交易可适当增加投资比例。
03 基本步骤
其中,策略维护经常被人们所忽视。其实,这恰恰是导致我们能否长期稳定盈利的关键。实时维护的原因有:1)市场中策略同质化导致的盈利下降;2)市场特性变更导致原有参数失效;3)投资市场规则变化(涨跌停板幅度、交易时间、保证金比例等)导致进而引发的策略变动;4)标的流动性变化。
04 统计检验
统计检验需尽量贴近实盘环境,以保证其结果的真实可靠。需要考虑一下几项:
1)交易成本,包括手续费和买卖价差(即滑点)。由于我国没有做市商,所以在流动性不足的时候,滑点对成本的影响就会不可忽视。
2)交易的可行性。例如在涨跌停板的影响下,我们很难买入或卖出标的。同样,流动性不足的话,也会导致交易变得异常困难。而这一些,都是需要我们在设计及回测检验时需要慎重考虑到的。
3)样本数量。样本需覆盖尽可能丰富的市场形态,单边上涨、下跌、震荡等等,以保证交易结果尽可能的完备。
4)稳定性。可按照不同标的或区间段进行回测复现,其仿真结果的标准差越小,则说明该系统稳定性越高。并且,该系统所用参数数量越少,则表明自适应程度越高,则稳定度越高。
5)盈利率。判断交易系统是否达到正期望最直观的指标就是看盈利率。所以任何盈利为负的交易系统都无法进行使用。其次,不能过度迷信这一指标,盈利并非越多越好,我们需要观察的是盈利的来源,盈利和亏损发生的次数是否均匀,这一点至关重要,关乎于交易系统实盘后的稳定性。
6)连续盈利次数和连续亏损次数。经常发现,盈利和亏损比较集中的现象。这表明,该系统只有在某些市场周期上存在适用性,所以在此区间内就会多次盈利。反之,出现不适应时,就会连续亏损。实际交易中,如果事先并不确定亏损次数,当损失发生时,可能会对投资人的心理产生较大的影响,导致对系统的不信任,从而错过盈利的行情。同时,还可以根据量化次数来控制风险,调整仓位。
7)交易次数。为保证结果的可靠性,交易次数在统计周期内不应过少。
8)盈亏比。该数值的适当性取决于系统胜率的高低,一般胜率低的系统需尽量提高每次交易的盈亏比,这样才能保证系统的正期望。
9)最大回撤。即可能发生的最大损失幅度。是构建投资组合的重要依据。一般应使其优化至所能承受的范围以内,同时,尽量保证资金曲线的平滑。
05 参数优化
1)枚举法,在一个区间范围内枚举所有可能的值统计结果,以获得最优值。不过缺点在于容易导致过拟合。
2)遗传算法,很多交易软件都自带遗传算法进行调优的功能。相比枚举,遗传算法能够避免获得全局最优解所导致的过拟合问题,同时减少计算量。但其结果依然缺乏理论指导,可能与常识原理相悖。
3)市场周期,即根据市场的周期性,大—>中—>小,以及趋势或震荡,分别度量参数。好处在于更好的排除噪声干扰,以适应多种形态的市场。坏处是实盘中没有足够经验很难判别当前市场处于哪个周期当中。有一个方法是实际交易中可以根据系统发出的信号有效性来加以判断。
4)避免过度优化。过拟合的系统可能会导致回测结果很好,但实盘后却失效。方法:①策略经多标的、多周期、多市场检验后,效果差别不大。②代码复核,确保不存在未来函数。③避免调参过度。
06 噪音控制
增加过滤系统已避免假信号的情况,能够有效提高系统稳定性。
1)价格过滤:要求价格上涨或下跌超过某一参考值的千分之一或其他比例。
2)时间过滤:要求价格在某一参考值上方或下方,站稳5根K线或其他时间段。
3)失败过滤:如果当天在某一方向失败超过N次,则当天放弃交易。