怎么实现程序化交易?怎么做好期货程序化交易模型?

针对一些对程序化不够了解并且想了解的朋友,本文做了如下总结,希望能帮助更多的朋友,客观合理的认识和选择程序化交易,为自己的财富积累插上适合自己的翅膀。

一.程序化的理解

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

程序化一种工具,帮助你积累财富的工具,却不是一种暴利的赚钱方式,程序化模型有好坏之分,程序化赚钱的前提是一个好的模型,程序赚钱的关键是坚持的执行,程序赚钱的精髓就是在确定终使用模型之后,彻底的放弃你对金融市场的一切理解和交易技能.就像武侠小说里说的,想练成上层的功夫,就应该先废掉所有的武功。

二.程序化模型的选择与辨别

如果有人告诉你他的程序化能在不长的时间内,让你的资金翻几番,那你要为他的言语或者他的程序打个折扣,但是如果对方又能拿出不错的形或者非常漂亮的收盘测试结果放在你的面前,你又当如何说服自己是相信还是不相信?以下内容就是帮助你如何辨别好坏模型。

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

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

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

测试结果的分析:

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

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

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

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

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

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

三.程序化交易的执行

上一篇:

下一篇:

展开阅读全文