对于一个程序化趋势跟踪交易策略,一笔单子往往要等到趋势出现反向的时候出场,此时,对于一笔原本有浮盈的盈利单,利润的回吐往往会比较大,尤其是在行情发生“A”型反转或“V”型反转的时候,由于行情的急速反转,利润往往会迅速回吐较大部分。因此,可以在原有的策略当中加入适当的止盈模块,以减小在行情反转的时候盈利单的利润回吐。
以某一个简单的高低点突破策略(即突破高点平空开多,突破低点平多开空)为例,在原有的策略当中加入移动跟踪止盈的模块。一个简单的思路是:当持有多单时,价格从开仓后的最高点回落某一幅度则止盈平多;当持有空单时,价格从开仓后的最低点反弹某一幅度则止盈平空。笔者采用另一种不同的止盈思路,结合ATR,当持有盈利的单子的时候,能够较好地守住利润。
为了测试结果尽量地接近实盘交易,我们把手续费设置为交易所手续费的1.5倍,开仓和平仓各加1个最小变动价位的滑点,测试的品种是所有活跃的国内商品期货指数合约,每个品种分配初始30万本金,每次开仓的手数按照10万资金的3倍杠杆计算,以下是在60分钟级别的初步测试结果。
从初步测试的资金曲线和数据来看,虽然历史测试资金曲线不够平滑,但长期来看总体能实现正期望值,在全品种测试中,绝大部分年份是盈利的。胜率为38.54%,盈亏比为2.06,是比较典型的趋势跟踪策略,综合胜率和盈亏比来看,表现良好。
以下是该策略近期在部分品种60分钟线上的开仓、平仓信号图,红色部分代表持有多单,绿色部分代表持有空单。
铁矿石在9月6日开空,目前持有空单
硅铁在8月29日开空,目前持有空单
甲醇在8月17日开多,在9月7日止盈平多;在9月8日开空,目前持有空单
橡胶在8月4日开多,在9月8日止盈平多;在9月15日开空,目前持有空单
铜在8月16日开多,在9月7日止盈平多;在9月8日开空,在9月19日止盈平空
总结:从初步历史测试结果来看,虽然历史测试资金曲线不够平滑,但总体表现良好,值得做进一步的深入研究。在策略中加入适当的止损和止盈模块,有利于在亏损时控制亏损,在盈利时减小利润的回吐,从而保住大部分的利润。
笔者水平有限,本文仅供程序化初学者或想学习程序化的交易者参考,部分观念可能带有一定的主观性和局限性,如果有不同意见或其他疑问,或者想要了解程序化的哪一块内容,欢迎大家在文章下方留言,笔者会尽可能地为大家解答。
感兴趣的读者,可以加微信:QHYM777,或扫描下方二维码,免费领取文章中金字塔版本的策略源码,以及领取更多其他策略源码和加入程序化学习交流群。
七禾网www.7hcn.com研究中心研究员 傅旭鹏
风险提示:投资有风险,本报告仅是个人观点,仅供参考,不构成投资建议。
七禾网研究中心合作、咨询电话:0571-88212938