快速识别程序化策略的优劣

接下来我来简单的给大家概括下他的优缺点,需要的自行去拿。不需要的有兴趣的话也可以看下如何识别好的策略。

这个平台我不是盲目的帮大家引荐,引荐前我是观察了许久。

首先这个平台的创意很好,征集了来自全国各地的优秀策略,可以提供给不擅长编写代码的投资者。另外我最喜欢的就是这个平台策略数据的真实性,不存在过度拟合并且加入较高的手续费和滑点,非常负责。

那么多平台和策略,好坏怎么判别呢,先给大家看两张图。

(图一)


(图二)

图一为量化易的数据测试,图二是某网站的数据测试,最简单的来讲,如果你了解程序化的原理,很显然,图二有很大的过度拟合的嫌疑,因为从图中根本判别不出不适的行情。反正我认为再好的策略不可能适应所有的行情。

上图是视觉上最基础的判断,还有一些较深入的判断。如下:

程序化一般分为两类模型,一类是趋势模型,一类是震荡模型,如果你想两者结合起来就要看自己的本事了,我的建议是程序化需要不停的去完美,但千万不能追求完美,以下所说模型都是趋势模型;

1. 测试时间:一个好的程序化必须经得起时间周期的测试,如果一个程序化,结果很漂亮,周期却只有一两个月,不可信;

2 .使用资金:很多人贴出来的漂亮测试结果,使用资金常常是80%或者其它百分比,但这些都是不合理的选择,因为金融市场资金管理很重要,在行情好时候,资金使用越高,收益越大,行情不好时,资金使用越高亏损越大,但我们无法去判断接下来的行情会如何,所以,历史测试的结果使用百分比的开仓方式是不合理,这也就是为什么,有时候会出现,资金使用率为80%是,测试结果是亏损的,而且使用率为40%时又是赢利的.总而言之,资金使用时应该选择固定的手数进行测试,不管他的行情如何,永不加仓或减仓,来测试一个模型更为合理;

3、测试方式:开盘价和收盘价测试均有其不合理性,趋势模型一般以趋势逆转点为开仓信号,故较为准确的是:出现指令价位。

测试结果的分析:

a. 指令总数:也就是信号数,过高,说明震荡行情过滤不好,过低,说明风险大;如何判断信号数合理呢?那就只有不同的模型在同样的周期下的一个对比了.还有一个最简单的方式就是将 指令总数/有效交易天数 以日内短线为例,一般一个有效交易日的平均信号数在 2-5 之间(此数据仅供参考);

b. 利润率:总利润不用看,只看扣出最大利润的结果,必须为正,而且测试周期越长利润率应该越大,很多模型,测近期不错,测远期就不行,所以测试时应该尽量的去测能测到的最长周期.(当然因为行情关系也可能出现,长期比短期利润率低,但总体而言,周期越长利润率越高,才是好的模型的测试结果)

c. 正确率:其它条件都完全一样的情况下,正确率越高自然越好,但也不用为了看到一个高正确率的模型而心动,也不用因为你自己模型的正确率低而担心,一般的正确率能在 45%左右,就不错了,因为程序化的本来意义就是赚大亏小,在震荡的时候正确率自然会低;

d. 最大亏损率:如果你是选择的固定手数,比如 10 手进行测试,你的最大亏损率最大应该不能超过 10%,当然,如果你选择的测试手数多,最大亏损率可能有所提高.如果你选择的 80%的资金使用率,可能亏损会更大,当然也会有亏损的不大的测试结果,这往往和你的测试周期中的行情的一定关系,所以不值得过于依赖;

e. 空仓时间:以日短线为例,空仓时间不能太高,太高,必然会错过大行情,当然,这一项不是最重要的,如果你空仓时间长,利润也高,错过就错过吧,错过不是过错,没赚到也不存在亏损的风险;小结:测试结果分析不能只看某一个数据,因为结合起来一起分析:指令总数不能多也不能少,周期越长利润率应该越高,正确率 45%以上就可以接受,最大亏损不能过大,空仓时间可以自行把握;

如果一个模型做到了以上几点是不是就算一个好的模型了呢,基本上可以算了,但最重要的是我们还需要结合信号图形(此点需要一定的程序化经验,并不一定看上去好的模型就是好,当然看上去好是前提,如果看上去都觉得一般了,那肯定是不行)来分析,此外,还要看到模型里是否有未来函数,如果是日内短线,信号就一定不能消失,每天的跳空缺口需要技术性的回补等等其它问题都是分析一个模型好坏的理由,但是,一个好的模型是不怕任何测试与分析的.

讲到这里或许又会有人问,“好的策略,策略师们为啥会愿意拿出来给投资者使用?”

相信很多的策略师也在看这篇文章,客观的讲,不能排除很多优秀的策略师有较多优秀的策略,但不是每个策略都有大把的资金来运行,另外每个策略有容载量,策略师们将多余的策略分享给投资者使用,所以这些来自全国各地的优秀策略师聚集在这里提供一个这样的平台。与投资者互益!

至于怎么判别适合自己的策略,可以参考以上几个标准。