三年时间,我从未在网上认真介绍过我的EA,身边的朋友大多是伸手党,原本想跟他们一起研究,也好有人讨论,源代码都发过去了,要么说跑不起来,因为不懂这行,要么说不赚钱,从来不喜欢关注原理。几次之后,我也放弃了共享源码,因为太容易了不懂的珍惜,发表本文,也是希望真正爱好程序化交易,并且认可这条路的人,共同进步。
在我下决心开发EA之前,曾经看过一个故事,大概是这样的:某公司流水线需要检测面包盒子是不是空的,科技人员的方案是用红外线等技术进行穿透检测,而一位工人随口一说,在流水线旁边放一台风扇,这样空盒子因为比较轻就容易被吹走,我们解决问题的方案往往就是生活中,有时候简单才是解决问题的最好方式。
为了排版美观,还是先上图吧: 因为没有太多欧美的历史数据,这只2018年1月份回测结果,
本金:300$
杠杆:888
起步仓位:0.03
最大仓位:0.81
最大连续加仓次数:8次
最大连续止损:120$,(连续亏损120,或加仓次数超过9次而后被移动止损(这个9是参数,移动止损时按行情回撤点数,也是参数),从0.03仓位重新开始)
操作4H趋势,15Min信号
当初决定开发EA的时候,这个故事也是起了促进作用,虽然我在2011年就接触了EA,但简单了解下就觉得不现实,认为这不符合自然平衡定律,后来也多次因为不认可而放弃,直到2015年,我准备结束我两年投资公司的工作,不甘心没有任何成绩的承认失败,考虑再三,决定把我的经验结合起来(有Java开发经验和投资操盘经验,其实我在投资公司是做网络销售)。
在研发EA的过程中,我经历过简单,到复杂,现在又回到简单。
在刚开始研究的时候,我只是自己思考,发现规律,都以失败告终,过了差不多半个月,我开始从网上搜索别人的源代码,浮躁的我把EA下载下来,发现跑不起来,或者回测不赚钱,就放弃了,最后发现一个回测赚钱的,我非常高兴的去研究源代码,源代码是别人反编译的,很乱,我一行一行的把它翻译成比较容易看懂的命名,终于看懂其中的原理:比如前一根K线是阳线,立刻建仓多单,往下跌N个点,再补一仓多单,仓位相同,整体达到止盈目标M个点,统一平仓。如此简单,易于理解。当时也不知道怎么想的,我居然认可了这种理论,并且坚持了大半年,而且还说服了我的朋友认可这种理论,哈哈。
2016年下半年,我在EA上投入了大量的精力,试过了包括锁仓、多空分离计算、多空合并计算、轻仓时快速加仓、重仓是使用小止盈减仓、试仓、续单等等吧,从用兵来说,有前锋策略,也就是轻仓的时候使用,有预备队,在重仓时减仓并缩小目标,中间是按常规策略运行。在加码策略上,还是2014年我同学玩时时彩的时候给我的思路,通过数列,后面一仓是前面两个仓位的相加,这个道理我是明白的,我认为也是没错的,不过在之前大部分时间内,我用的有点歪,因为贪,想快速盈利,搞的解锁后,加上加仓,总持仓远远大于原有的数列,还好后来被我及时纠正,并且可以使用伪均仓。
给大家看下平仓图吧
下图是仓位计算表,以0.03起步,Excel已设计好,修改起始手数,其他会相应变化
上面介绍了基本逻辑的一部分,下面再介绍下我最近研究的,这是看了一篇赌博教程给我的思路(赌博,因为数据太少,基本不容易判断;而像股票外汇这种有K线图,相比数据就丰富了很多,有了数据,就有了研究的基础)
比如在连续错误2-3次,可以概率性的判断风险来临,因为有可能第4次、第5次还是错误,那么我们节奏不变,把原有因为递增的仓位改为试仓单0.01手,继续使用续单工作,如果成功续单,则认为该仓有效,行情并没有那么惨,则把连续错误次数清0,继续原有递增仓位。
如下图,USDJPY
策略内容并不止这些,还有交易时间段设置,多空是否合并计算,建仓位置(保守、激进、中等),等等,真心喜欢EA的朋友可以和我交流。