论程序化交易系统建设······ 分享日记 fxplus.cn – 分享日记
                                       

论程序化交易系统建设······ 分享日记 fxplus.cn

在国际市场上,程序化交易已经比较完善,而且是一个十分重要的交易方式。虽然程序化交易在我国还只是处在萌芽阶段,但是随着国内资本市场的日趋成熟,随着投资者素质的不断提高,程序化交易将逐步成为国内市场的主流交易方式之一。因此,建立起一套成熟稳定的程序化交易系统,不仅是可行的,更是顺应行业发展、推动期货市场发挥自身应有的作用和功能所必需的。

程序化交易系统建设之 头寸管理

在拥有了一个优秀的交易策略或者交易系统之后,如何在交易过程中增减仓位直接关系着策略进行中的资金曲线和策略的总收益与总风险大小。针对不同的交易策略和系统,设计个性化的交易头寸管理程序是我们研究的方向和目标。

一般而言,头寸调整的基本目标在于:获取更大利润、减少风险度(盈利相对于亏损的大小)、尽量不减小或尽量更少地减小系统和策略的获胜概率。在调整头寸的过程中,最大的敌人不在于盈利是否减少(增加头寸盈利总会有所增加),相反地,最大的影响系统获利能力的敌人在于:重仓位的单笔亏损。所以,我们必须加入一个适当的标准:当仓位较重的时候,尽量避免遇到单日损失发生时刻。重仓位时最好不是损失发生时,重仓位恰好遇到损失的概率最小。

一般的头寸管理系统,如等额加仓、不等加仓、橄榄加仓、金字塔加仓等策略都是非常初级和简单的加仓策略,这些策略的问题十分明显,比如:什么时候开始加仓?什么时候减仓?由于我们的策略和系统必然是一个右侧交易系统,所以重仓不能持有到系统末端,系统末端必然是一个短期的或大或小的亏损。很多仓位调整策略都是一个十分宽泛的、具有不确定性和主观性的仓位调整策略,所有的调整方式都是建立在主观判断的基础上。

基于一般的仓位调整策略,我们将投资策略的信号分为两类:一类是连续型信号,一类是离散型信号。连续型信号表现为:当某个指标大于0做多、小于0做空时,则这样的信号有一个程度上的度量。离散型信号表现为:某个指标等于1时做多,等于-1时做空,等于0时观望,则这样的信号就是一种交叉型信号,本身不具备大多少的问题,即没有程度上的度量,这样的信号本身不具备调整仓位的“先天性优势”。

一、与信号无关的主观性仓位调整

与信号无关的仓位调整的基本前提是:无论是哪种交易策略和交易系统,其资金增长曲线必然追求的是光滑、增长两个目标,在资金获利的前提下,增仓或者减仓是对资金的极大程度利用和极大程度风险规避。下面笔者在明达系统04的基础上对品种的增仓、减仓进行具体分析。

1.浮盈增仓

浮盈增仓是正常的仓位调整策略,很多头寸管理方法中都极力推崇这样的策略。盈利之后加仓目的在于扩大利润,所谓的“让利润奔跑”理论就是建立在盈利增仓的基础上。这样的增仓方式其优势在于利润增长速度会很快,其劣势是增仓交易发生在信号已经达到了某种强度时,即新的交易发生在信号本身的腰部或者顶部,这样的增仓方式必然会迎来一个短期的亏损。浮盈增仓的效果在于:(1)累计收益明显增加;(2)资金回撤加大;(3)盈亏比率增加;(4)系统成功率减少;(5)仓位要求的资金量相对较小。

2.浮亏增仓

浮亏增仓的出发点是:盈利连续发生和亏损连续发生的概率越来越小,即亏损之后出现盈利的概率增加。同时,浮亏增仓会降低持仓成本,在连续盈利概率减少的条件下,亏损之后的盈利会因为增仓使得接下来的获利增加。其优势在于重仓之后的盈利概率增加,相对劣势在于资金量要求很大,同时盈利能力会减小。浮亏增仓的效果在于:(1)累计收益增加幅度不大;(2)资金回撤较少;(3)盈亏比率增加;(4)系统成功率减少;(5)仓位要求的资金量相对较大。

值得注意的是,浮盈增仓虽然相对资金量较小,但因为浮盈增仓其总的仓位大于浮盈减仓总的仓位,所以浮盈增仓的盈利较高。为了更好地评价两者的优劣之处,通过统计我们发现,浮盈减仓的仓位相对浮盈增仓的仓位总的倍数介于1.5—2.2之间,所以浮亏增仓时刻倍仓持有更能有效获利。

3.同向增仓

市场短期来看消息反映不足,在多头信号出现时上涨行情增仓,下跌行情减仓;在空头信号出现时上涨行情减仓,下跌行情增仓。方向性增仓与浮盈增仓十分相似,也会使利润最大化增长,当然也面临和浮盈增仓一样的问题。方向性增仓的效果在于:(1)累计收益增加幅度巨大;(2)资金回撤较大;(3)盈亏比率增加;(4)系统成功率减少;(5)仓位要求的资金量相对较大。

总的来说,所有与信号无关的加仓、减仓方式得到的结果显示出的结论都十分相似,包括盈利增加、回撤加大,其中收益最大的依然是方向性增仓策略。

浮盈增仓的意义在于当浮动盈利达到某个幅度的时候增加仓位,也是追求利润的极大程度增长,但是其加仓程度较小,具有一定程度的保守性,即只有当盈利达到某个幅度时才加仓。这种加仓策略会减少资金占用量,同时降低风险,但同时也减小了收益。

无论采用何种加仓方式,上述仓位调整策略都与交易策略本身给出的信号无关,这是一种相对主观的加仓方式,其最终的结果均能增加总的收益,但同时也要承担相应的风险。因此,根据投资者本身对风险和利润的追求,来设计个性化的策略是非常必要的头寸调整方式。

二、与信号相关的客观性仓位调整

1.连续型信号增仓

连续型信号增仓在于连续交易信号的策略本身具有仓位调整的“先天性优势”,从连续型信号的所在区间分布情况可以知道信号本身的强弱问题,所以这种情况下的加仓显得比较容易。不同的连续型信号具有不同的仓位调整方式,其实对于连续型信号而言,其仓位变化本身就包含在了交易策略的内部,属于内部附带的头寸调整方式。一般来说,这时候的仓位调整属于客观性的仓位变动,若结合主观性的仓位调整方式,就可以进一步改变资金曲线的走向和幅度。

2.离散型信号增仓

相对于连续型信号,离散型信号本身不具备信号的强弱度问题,其加仓除了采用主观性加仓方法以外,另一种方式就是变离散型信号为连续型信号。这种方式在一定程度上具有操作上的不变性,因为不是所有的离散型交易策略变换为连续型交易策略都可行,或者即使可行也比较难以掌握。大多数离散型交易策略给出的信号都能变换为相对应的连续型交易信号。

总的来说,基于信号相关的加仓策略较为复杂,依赖于信号的采集与系统自身的胜率和回撤,并且研究分析也较为困难;与信号无关的仓位调整则更倾向于资金管理的范畴,在实际交易中为投资者所常用。

程序化交易系统建设之 发展策略

程序化交易一般的定义为“在指定模型参数的约束下,按照模型给出的指令自动买入和卖出特定数量的证券或证券组合的交易行为”。程序化交易出现于上世纪 70年代初的金融市场,其标志性事件是纽约证券交易所推出的指定交易循环系统,由此专业投资经理可以通过计算机与交易所联机,来实现投资组合的一次性买卖。纽约证券交易所把程序化交易定义为市值在100万美元以上、股票个数在15只以上的一揽子股票组合买卖交易,在实际操作中这意味着所有的程序化交易都是在计算机的辅助下完成的。自诞生以来,程序化交易得到了长足发展,被广泛应用于股票与期货的跨市场指数套利交易中。在现今的国际市场上,股票和衍生品市场的程序化交易占全部交易活动的70%。

程序化交易与传统的手工交易的主要区别包括:(1)程序化交易是电脑自动下单,可以同时对多个商品发出买卖指令,交易速度快;手工交易由于人的反应速度有限,无法发出过多的买卖指令。(2)程序化交易一般策略是跟随市场波动的交易,交易更客观、更理性;而手工交易经常需要对未来进行主观预测和判断,较为感性。(3)程序化交易对买卖时机的判断基准是价格与量;手工交易往往还要参考基本面分析。(4)程序化交易是严格按照程序化交易模型进行交易,对交易员的能力要求和依赖性相对较低;手工交易则刚好相反。(5)程序化交易对交易模型设计人员素质要求高,对网络硬件环境要求高;手工交易对硬件环境要求一般。

从国际市场的历史来看,程序化交易的兴起和发展是必然的,它对投资者乃至整个期货市场都能够起到有益的促进作用。程序化交易系统使交易决策的过程更加程序化、公开化、理性化,投资者可以从由情绪支配的处于模糊状态的选择过程转变为定量的数值化的选择过程。这样不仅可以遏制由于贪婪或者恐惧等心理因素带来的非理性操作,在整个市场的层面也可以在一定程度上避免众多投资者由于受到谣传或者暂时的价格波动带来恐慌的群体效应。此外,程序化交易系统的建立需要投资者对整个市场情况,对具体品种的供需基本面以及技术层面甚至资金风险控制等各方面都有充足的了解。所以,建立起一套成熟的程序化交易系统可以避免投资者的盲目投机心理,使投资者向更专业化的方向成长。同时,程序化交易系统往往都需要带有严格的止损措施,这样可以获得比主观交易更小的资金回撤比例,减小投资者的风险敞口。

You may also like...

发表评论