注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

期货期权

算法交易

 
 
 

日志

 
 

程序化交易系统模型的设计  

2017-11-20 12:44:05|  分类: 量化交易 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

程序化交易系统模型的设计 - CTA - 期货期权

俗话说的好:思路决定出路,眼界决定境界。作为一名程序化交易爱好者,仅仅依靠已经掌握了模型编写平台的基本语法和函数,是远远不够的。要想编写出一个真正具有实战价值的自动交易系统模型,设计思想的重要性不言而喻。

而设计思想实质上是集成了交易理念、交易思路、交易方法,甚至包括交易经验在内的一种积累与沉淀,绝非一日之功。为缩短程序化交易爱好者的学习探索之路,解决普通投资者缺乏系统设计思路等问题,本文拟从系统入市、离市等两个方面,尝试讨论交易系统模型的常规设计思路。

1

入市设计

系统模型入市的设计思路,事实上应与投资者的交易风格喜好、交易时间框架密切相关,可以分别是趋势跟踪、震荡交易、套利交易等,近年来甚至也出现了基于基本面分析数据的量化模型,以及带有人工智能性质的神经网络、遗传算法等具备自学习、自适应市场能力的高级交易系统模型。

不过,最简单、最实用、最适合普通投资者的交易系统入市设计思路仍然是趋势跟踪,而趋势跟踪的实质就是追涨杀跌或者美其名曰:顺势而为。突破,是趋势跟踪系统设计中最为简洁实用的设计思路,具体应用设计思路可能包括:

⒈通道突破。最著名的此类程式设计代表作为:海龟交易法则与四周规则。其入市信号触发设计为:价格突破最近N根K线的高低点。长期来看,这种设计思路虽然简单,但永远也不会失效或显得过时。事实上,越简单的反而越有效!

⒉均线突破。该设计思路的代表作品有:克罗均线,它由4、9、18等三条均线组成;鳄鱼组线,它由5、8、13等三条移中平均线组成;自适应均线,它由考夫曼博士提出,以市场效率生成弹性浮动参数,以均线拐头为信号触发,而非普通的均线金叉、死叉。

⒊指标突破。常见的技术分析指标,如MACD、KDJ、RSI、BOLL、SAR、WR、ADX等,均可独立构成一个简单的趋势跟踪系统,当然,是使用系统默认参数还是使用优化参数、是使用其常规用法还是使用创新用法,可能存在仁者见仁、智者见智的分歧。笔者可能更倾向于具有一定技术分析功力的投资者,以自创技术分析指标为最佳,这样可以确保你所使用的交易系统模型的专属性。

⒋形态突破。形态突破,包括K线形态组合突破、经典技术分析形态突破等,K线形态组合的突破,以酒田战法为最经典,著名的红三兵、黑三兵、希望之星等经典K线形态均源于此。至于经典的双顶、双底、趋势线突破、横盘突破、头肩顶底、三角形态、楔形、旗形、钻石型、圆弧顶底等技术形态。

⒌波动性突破。波动性可以定义为:最高价与最低价、当根K线的最高价与昨收盘、当根K线的最低价与昨收盘,这三组价格差额的最大者即该品种的波动性值,波动性既可以进行横向比较品种间的波动性水平,也可以用于纵向判断价格波动的异常,并作为入市信号的触发器。

⒍时间价格突破。在趋势行情的必经之路,守株待兔,是我们进行突破系统设计的基本思路。而时间、价格突破,从速度、幅度的两维视角预约了趋势行情,堪称突破系统设计的典范。基本设计思路为价格在N时间范围内、上涨或下跌了N个点位。

程序化交易系统模型的设计 - CTA - 期货期权

进一步拓展思路后,我们还可以引入周间日、日间时的概念,细化不同时间段的突破标准,以便更好地适应品种个性,此外,我们还可以时间、价格过滤器的方法来实现对趋势行情的确认,以减少价格盘整阶段的假突破现象。

遗憾的是,尽管很多投资者致力于追求日内趋势跟踪交易,以降低隔夜交易风险,并认为不同交易时间框架下理念、方法应具有一致性,但实证研究仍然表明,突破类趋势跟踪系统所应用的交易时间框架越长、越有效。

我们有理由相信,任何一个设计简单的突破类趋势跟踪系统,长期跟踪市场日线以上级别的结果必然是盈利的,当然同时需要承受较大幅度的阶段资金回撤,这是普通投资者难以坚持使用的主要原因,而这并非意味着该趋势跟踪系统失效了。

2

离市设计

⒈止损。止损,是交易系统模型设计中一个不可或缺的元素,资金止损、技术止损,是两种主要的考虑方案,采用两者孰低的方案可能更为科学。

一方面,你要确保每笔交易不冒过大的风险,另一方面,你要背靠一个关键的压力、支撑技术位置,采用反向交易信号作为自动止损的依据,则是持续在市的交易系统模型的一个常用止损方法。

⒉止盈。虽然固定点位的止盈、止损,也是系统设计中可以采用的方法,但我们更倾向于兼顾利润保护和放大功能的跟踪止盈或SAR抛物线止盈模式,随着利润的扩大,而不断抬高甚至收紧止盈目标位置,可以在一定程度上起到利润最大化的设计目标。

⒊时间清仓。以时间为因素考虑离场,无论是作为一种辅助离场方法,还是作为一种独立的出市方法,都是一个不错的思路。比如三根K线过后,如果既没有达到止盈位、也没有触及止损位,就主动离场。“在市场没有证明你是正确的时候,主动离场”。

程序化交易系统模型的设计 - CTA - 期货期权

无论是入市方法,还是离市方法,建议程序化交易爱好者可以将它们都做成独立的模块,像积木一样可以根据需要自由搭配使用,这对于提高系统模型设计效率与可能组合收益,会产生极大的帮助。当然,作为一个完整的交易系统,还需要考虑资金管理与头寸调整的细节,建议大家参考风险百分比法。

— END —

网摘

  评论这张
 
阅读(1399)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018