设为首页 | 加入收藏 | 今天是2024年12月23日 星期一

聚合智慧 | 升华财富
产业智库服务平台

七禾网首页 >> 头条

章位福:做一个有思想的交易者 轻松舒服地在市场上存活

最新高手视频! 七禾网 时间:2017-07-04 17:26:27 来源:七禾网

主持人:据我们了解,您的实盘策略是用自上而下的方式编写的,请您具体介绍一些在这个过程中主要有哪些步骤?


章位福:这也是今天我要跟大家分享的一个重点。刚刚讲的其实就是我们做交易一定要寻找确定性、剥离随机性,如果我们根本搞不清楚这个行情到底是什么原因造成的,那我们去交易是很吃亏的。有思想的交易者我觉得就是先搞清楚确定性在哪里,有了确定性以后,接下来我们要把它编成程序,这个也是程序化交易非常重要的一点。很多人刚进入程序化交易的时候,他经常会晚上睡觉的时候兴奋得笑起来,原因是他写了一个测试非常漂亮的曲线,而这条曲线其实是有未来函数的,但他根本不知道。前两天有一个做程序化的朋友到我这边来交流,我觉得他就有犯这个错误,他也是相对初阶的程序化交易者,比如跨周期引用数据,一引用完以后测试曲线就是像印钞机一样,那当然初期我也是这样子。


所以写程序一定要讲究步骤,我们要由上至下,就是先要有思想,举例来说我们的思想就是,我要抓哪一块确定性的?看得懂的行情我们怎么去做它?因为程序只是一个工具,只是执行我们思想而已,我们的思想是什么才是最关键的,那接下来跟大家分享我平时在做程序化交易开发程序的一个过程,就是实盘策略的自上而下的编写步骤。


第一个,我们先要思考一个问题,就是想捕捉市场哪一个确定性的行情特征?比如我刚才寻找了5个确定性跟大家做分享,我相信这个市场上还有更多的确定性在里面,那我们要捕捉哪一个确定性行情来成为我们的程序,这个是第一个问题。


一旦找到这个确定性的时候,第二个是开平仓的条件是什么?举例来说,我确定性行情是找到了,那我要把它量化,因为计算机不可能说凭感觉去做,它应该要怎么样呢?比如说收盘价或者最高价突破什么位置,要把这个确定性描述成一个计算机语言,这个就是开平仓的条件设置。


第三个就是策略源码的编写,待会我也会具体展示。


第四个,我们做完以后,不要立刻出测试报告,一定要先核对信号。就是说你的程序信号是不是跟你的思路信号是一样的?你两个信号不能有偏差,如果有偏差就代表有出入,要么就是编程有问题,要么就是思想上面可能有哪些还没表达清楚的,那我们就应该先核对一遍,先不用看测试报告。我发现很多程序化交易者都喜欢随便拿一个策略就看测试报告,看了发现很赚钱就很开心,我觉得这样不行,初学者比较容易犯这样的问题。


第五点才是测试报告,我主张测试报告前期应该是组合的。很多人写程序就想找一个品种,比如螺纹钢,大部分人都喜欢用螺纹钢来做程序编写测试,但是我们会发现,一个放在螺纹钢上很漂亮的曲线,放到铜上就是个稳定亏钱的曲线,这样的策略你敢用吗?组合测试可以验证这是不是属于普适性相对高的方式,如果普适性较高,我认为就值得深挖。但是我们有时候写程序时也不会把一个想法想的太复杂,能够用一个代码搞定的,不要用两个代码。把所有材料都扔进去,几千行策略,那就是一团乱了。要保证我们的初心是寻找确定性。


第六点是看了这个测试报告后,我们可以思考有哪些地方可以改善,可以升级,那这就是增加一些过滤条件。


第七点是我们的思想一致了,测试报告也出来了,我们要做的是最终的优化。因为我们还是要看到运用的参数到底是不是盈利平原区域,不要取尖峰区域。


第八点就是模拟,或者少量实盘。这就是完整的步骤。


这些步骤都是我平常在研发策略时一直在遵循的,有不同意见的也欢迎大家指正。



主持人:您提到您的实盘策略是用自上而下的方式来编写的,那请您也展示一下您自上而下的策略构建技巧模块。


章位福:好的,这里展示的主要是金字塔平台上的一些源码,只要有一定程序化基础的人都会看的明白。我着重提到的一点是,我们先要有思维,明确自己要捕捉哪一点确定性。这个确定性一定要普适性高,在全市场都要有大量的正期望值,然后我们用最简单的计算机源码呈现出来。开始之前我先讲一下编程的几个要点:第一,逻辑是否合理;第二,多空语句是否对称,我不建议一开始就只编多或只编空,因为行情是有牛熊的,如果我们在编写的过程中正好处于熊市,做多的语句是比较严苛,难开仓的,那随便写写都是赚钱的策略,如果是长时间做交易的应该就应该要写得对称,写出来之后再根据你对涨跌的理解,比如慢涨急跌,再改成多空不对称的形式,但前期刚刚写源码的时候最好对称;第三,策略参数的适应性,参数要少,尽量简化,找到参数的盈利平原;第四,化繁为简,大道至简。把行情的确定性用化繁为简的计算机语句表达出来,追求模糊的正确,大方向正确就好;第五,精细化控制,大方向可以粗犷,但是要把本质的东西理解透了。比如波动机制就是涨得很多的时候给它一个确定,这个位置将会产生加速上涨或者加速下跌,在这个位置就要做一个精细化控制,从短期来看差别不大,但是从长远来看就会使你的策略更优秀一点。


主持人:接下来就请您用金字塔给我们做个演示。


章位福:好的,我分享一下我的策略自上而下建构的技巧。我写程序有模块化的思维,不要一开始就是平仓条件是什么。第一步是建立逻辑指标,我们如果要捕捉日线级别的现货供应需求,比如去年那么大的一波牛市,就是供给侧造成的。在日线级别上寻找确定性机会,然后在趋势必经之路埋伏,只要在有趋势经过的地方,我都要埋伏,那么这个逻辑就开始成立,接着我就要想把这个变成最简单的方法。


多势是多头趋势,我们定义的是“四周法则”,前20天的新高;空势是前20天的新低,20天均线就代表中轨。我在指标中就运用了这三句话,但这三句话里包含了我刚才所说的思想,那这三句话就有你的灵魂在里面。有了这个指标后就开始构建开平仓了,我们的标准是收盘价跌破下轨,就做空,收盘价涨到中轨以上就平仓,做多也是如此,周而复始做这个动作。


有了这个以后我们就应该先检查策略,看看信号准不准。很多人看到放到实际图形了,觉得收盘价的位置太低了,还不如自己早点开,就会陷入这种局里。我的观念就是其实我们根本不知道后面的走势,如果就是在空头趋势里,为什么不开呢?所以对这个事情不纠结很重要。但是如果这样做,会发现在尖峰的时候非常吃亏,利润回撤很大,不过这也是均线的特点,相对滞后。如果前期出现了急冲的阶段,均线来不及跟,最终还是回到均线的位置平仓。我们可不可以这样思考,保证一定利润果实,把尖峰这块做一下简单的处理。


这就可以在第三个模块中桌,加入止损条件。这块止损模块表达的意思就是找到20天平均的ATR,ATR的3倍作为跟踪止损,其他条件不变。应用上去后可以看到,现在就不一样了,我们应用的是指令价,既然要出逃,那么指令就要快一点。开仓可以慢一点,因为机会有的是,但是钱就那么多,平仓的时候要快一点,有一个安全带在里面。这也有利有弊,原本可以一口气拿下来的一波行情,因为跟踪止损就会断掉。但是我们总体是在求平衡,不能找到一个既想要拿到大波段,又想要小止损的方法。


这样还不行,我们刚才只是在螺纹上测试,我们刚才提到要组合测试。但是比如1手螺纹钢,1手橡胶,完全不对等就没有意义,所以就再增加一个模块进去,同等价值量开仓。你就会发现整个过程中是不断有思想注入进去,而且这些思想都要有逻辑在里面。举例来说,取每周周一开盘价,用10万块钱5倍的杠杆,如果不足一手就用一手做。加载上去后,橡胶是3手,螺纹是17手,这样才是有意义的组合测试,否则盈利是不相等的,亏损也是不相等的,所以等权很重要。


再接着是品种选择上,有些品种不活跃你根本不会去做。那就也不用去做测试,所以我们要增加一个模块,什么条件开仓,什么条件不开仓。在量化交易中,流通性是最重要的标准,所以我们要加入判断流通性的模块,有了这个模块我们就知道什么品种是开仓的,什么的不开仓的,那就可以把全市场的品种都扔进测试报告里,如果没有达到标准就不会有信号。可以看到螺纹钢是全部能做的,因为成交量大,再看稻谷就不会有信号。再看胶合板,由于这个品种刚上市的时候有成交量,所以在前期有交易,后面没有成交量了就不交易了。于是我们在开仓的地方,加一个条件,开仓所有条件符合后成交量达到五万手,平仓的时候低于一万手就平仓。这就是要让电脑来执行我们的思想,回到我们今天的主题,还是要做一个有思想的程序化交易者。


有了这些以后我们才进入测试报告,在测试报告中我们也有个模块。我自己的习惯是关注信号价是什么,总的交易数是多少,最大回撤是多少,会看下盈亏比,胜率。不过最重要的还是资产曲线,回撤和用来核对的信号价。有了这些以后我们就开始看全市场,交易周期是日线,从2001年至今,交易费用是软件中设定的,开平仓的滑点是来回各一跳。最终我来看从2001年至今的资金曲线,胜率是43%,交易次数是一千多次,大家可以发现,在单一的品种上资金曲线可能不会很漂亮,但所有加在一起后我们是寻找市场平均的确定性和收益,会发现收益还是比较稳定的。再加上一致性,撇去人类的贪婪和恐惧,我觉得我们成为少数者就变得有可能。我们再来看这么多品种里,盈利的有多少,亏损的有多少。盈利最多的就是橡胶,然后是焦炭,大部分都是盈利的。亏损的有四个,菜粕、黄金、玻璃(亏损最多)、锰硅。如果我们没有优选品种,只是做最傻瓜的量化交易者,也是有希望赚取一部分盈利的。做程序化交易最怕后面陷入优化的怪圈,总觉得不够完美,把这个品种剔除,把那个品种剔除,最后只剩下两三个品种,之后又觉得回撤太大,这样就陷入了寻找圣杯的过程。很多人想,做程序化,一年赚两三百万很正常,我觉得不应该这么想,程序化只是执行我们的思想,是我们的思想让我们在市场存活下来。市场有我们看得懂的确定性行情,我们赚钱,因为这个市场里面的一些损耗,我们亏钱,我觉得也是很正常的事情。



主持人:章老师,我看到您刚才是用指数合约在测试,那您用指数合约测试有哪些好处?


章位福:在日线级别上面,我实盘也用指数来做,用指数来发信号,一是避免了跨合约的跳空,二是指数是所有合约的加权平均,它的稳定性相对来说要高一些,所以我认为这个信号的要比主力合约确定性高,但实际交易我是在主力合约上做。整体测试下来看,去年有占到便宜,今年吃到亏,赚赚亏亏,亏亏赚赚,很正常。



责任编辑:傅旭鹏
Total:3123

【免责声明】本文仅代表作者本人观点,与本网站无关。本网站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

本网站凡是注明“来源:七禾网”的文章均为七禾网 www.7hcn.com版权所有,相关网站或媒体若要转载须经七禾网同意0571-88212938,并注明出处。若本网站相关内容涉及到其他媒体或公司的版权,请联系0571-88212938,我们将及时调整或删除。

联系我们

七禾研究中心负责人:刘健伟/翁建平
电话:0571-88212938
Email:57124514@qq.com

七禾科技中心负责人:李贺/相升澳
电话:15068166275
Email:1573338006@qq.com

七禾产业中心负责人:果圆/王婷
电话:18258198313

七禾研究员:唐正璐/李烨
电话:0571-88212938
Email:7hcn@163.com

七禾财富管理中心
电话:13732204374(微信同号)
电话:18657157586(微信同号)

七禾网

沈良宏观

七禾调研

价值投资君

七禾网APP安卓&鸿蒙

七禾网APP苹果

七禾网投顾平台

傅海棠自媒体

沈良自媒体

© 七禾网 浙ICP备09012462号-1 浙公网安备 33010802010119号 增值电信业务经营许可证[浙B2-20110481] 广播电视节目制作经营许可证[浙字第05637号]

认证联盟

技术支持 本网法律顾问 曲峰律师 余枫梧律师 广告合作 关于我们 郑重声明 业务公告

中期协“期媒投教联盟”成员 、 中期协“金融科技委员会”委员单位