俗话说的好:思路决定出路,眼界决定境界。作为一位程序化交易爱好者,仅仅依靠已经掌握了模型编撰平台的基本语法和函数,是远远不够的。要想编撰出一个真正具有实战价值的自动交易系统模型,设计思想的重要性不言而喻,而设计思想实质上是集成了交易理念、交易思路、交易方法甚至包含交易经验以内的一种积攒与沉淀,绝非一日之功。为缩短程序化交易爱好者的学习探索之路,处理普通投资人缺乏系统设计思路等困难,本文拟从系统入市、离市等两个方面,试图讨论交易系统模型的常规设计思路。
【入市设计】
系统模型入市的设计思路,实际上应与投资人的交易风格喜好、交易时间框架紧密有关,可以分别是趋势追踪、震荡交易、套利交易等,近年来甚至也显现了基于基本分析分析报告的量化模型,以及带有人工智能性质的神经网络、遗传算法等具备自学习、自适应市场能力的高级交易系统模型。然而,依照笔者的见解,最简单、最实用、最适合普通投资人的交易系统入市设计思路依然是趋势追踪,而趋势追踪的实质就是追涨杀跌或者美其名曰:顺势而为。击穿,是趋势追踪系统设计中最为简洁实用的设计思路,具体应用设计思路或许包含:
1、通道击穿。最著名的此类程式设计代表作为:海龟交易法则与四周规则。其入市信号触发设计为:价格击穿近期N根K线的高低位。长期来说,该种设计思路尽管简单,但永远也不会失效或显得过时。实际上,越简单的反而越有效!
2、均线击穿。该设计思路的代表作品有:克罗均线,它由4、9、18等三条均线构成;鳄鱼组线,它由5、8、13等三条移中平均线构成;自适应均线,它由考夫曼博士提出,以市场效率生成弹性浮动参数,以均线拐头为信号触发,而非普通的均线金叉、死叉,有兴趣的读者可以参考其系统交易专着《精明交易者》。
3、指标击穿。常见的技术面指标,如MACD、KDJ、RSI、BOLL、SAR、WR、ADX等,均可独立组成一个简单的趋势追踪系统,诚然,是运用系统默认参数,依旧运用优化参数;是运用其常规用法,依旧运用创新用法,或许存在仁者见仁、智者见智的冲突。笔者或许更看好于具有一定技术面功力的投资人,以自创技术面指标为最佳,如此可以保证你所运用的交易系统模型的专属性。
4、形态击穿。形态击穿,包含K线形态组合击穿、经典技术面形态击穿等,K线形态组合的击穿,以酒田战法为最经典,著名的红三兵、黑三兵、期望之星等经典K线形态均因为此,共分为酒田战法70型。至于经典的双顶、双底、趋势线击穿、盘整击穿、头肩顶底、三角形态、楔形、旗形、钻石型、圆弧顶底等技术形态,因普通的模型编撰语言较难精确描述而存在适当的设计运用阻碍,需要运用转向函数及图形模糊识别技术来克服。
5、波动性击穿。波动性可以定义为:最高价与最低价、当根K线的最高价与昨收盘、当根K线的最低价与昨收盘,这三组价格差额的最大者即该品种的波动性值,波动性既可以执行横向比较品种间的波动性水平,也可以用于纵向分析价格波动的异常,并作为入市信号的触发器。我们可以直接从文华财经内置指标公式中得到如下源码: MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW))
以此为基础,我们不难得到波动性击穿系统的基本设计思路。
6、时间价格击穿。在趋势行情的必经之路,守株待兔,是我们执行击穿系统设计的基本思路。而时间、价格击穿,从速度、程度的两维视角预约了趋势行情,堪称击穿系统设计的典范。基本设计思路为价格在N时间规模内、上涨或下挫了N个点位。更深一步拓展思路后,我们还可以引入周间日、日内时的概念,细化不同期间段的击穿标准,以便更好地适应品种个性,另外,我们还可以时间、价格筛选器的方法来达到对趋势行情的证实,以降低价格横盘阶段的假击穿现象。
遗憾的是,即使很多投资人努力于追求日间趋势追踪交易,以减弱隔夜交易风险,并觉得不同交易时间框架下理念、方法应具有统一性,但实证研究依然显示,击穿类趋势追踪系统所应用的交易时间框架越长、越有效。我们有理由相信,任何一个设计简单的击穿类趋势追踪系统,长期追踪市场日K线以上级别的结果必然是盈利的,诚然同期需要承受较大程度的阶段资金回撤,这是普通投资人很难坚持运用的首要原因,而这并不是代表着该趋势追踪系统失效了。
【离市设计】
1、止损。止损,是交易系统模型设计中一个不可或缺的元素,资金止损、技术止损,是两种首要的考虑方案,采取两者孰低的方案或许更为科学。一面,你要保证每笔交易不冒过大的风险,另一面,你要背靠一个核心的阻力、支撑技术位置,采取反向交易信号作为自动止损的根据,则是连续在市的交易系统模型的一个常用止损方法。
2、止盈。尽管固定点位的止盈、止损,也是系统设计中可以采取的方法,但我们更看好于兼顾利润保护和增大功能的追踪止盈或SAR抛物线止盈模式,伴随利润的扩大,而持续抬高甚至缩紧止盈目标位置,可以在一定程度上起到利润最大化的设计目标。
3、时间清仓。以时间为原因考虑退场,无论是作为一种辅助退场方法,依旧作为一种独立的出市方法,均为一个不错的思路。比如三根K线过后,假使既没有高达止盈位、也没有刷新止损位,就主动退场。《幽灵的礼物》中曾经对该种思路有过经典的描述:在市场没有证明你是正确的时机,主动退场。
无论是入市方法,依旧离市方法,建议程序化交易爱好者可以将它们都做成独立的模块,像积木一样可以依据需要自由搭配运用,这对于提升系统模型设计效率与或许组合收益,会造成极大的帮助。诚然,作为一个完整的交易系统,仍需要考虑资金管理与头寸调整的细节,建议大家参考《通向金融王国的自由之路》中的风险百分比法。最后,让我们以一个波动性击穿系统的事实例子来回顾一下本文所阐述的系统设计思路。
【波动性击穿实盘系统介绍】
系统设计思想:波动性击穿,自身带有一定程度自适应市场的特点,为趋势追踪系统中的上品,我们再加入时间清仓、顺势下轿的元素,在中性的横盘市道中主动退出击穿交易,或在发生第二次波动性击穿的时机顺势平仓,如此就部分处理了利润回撤的困难,至于参数,个人看好于没有参数的交易系统模型最好,最具有将来市场的适应能力,假使务必要有一、两个参数,那么以该参数在大程度变动的试探环境下,依然可以盈利为佳。