1. 什么是量化交易系统
量化交易系统就是用计算机来代替人下单的一种交易系统,有全自动和半自动两种。采用量化交易系统的好处:
(1)速度快,海外的极速交易系统可以在微秒级下单,国内的顶尖交易系统也可以实现毫秒级的下单。据
中信证券的高绍根博士介绍,他们最新上线的极速平台股票下单延迟小于2毫秒,在国内属于领先水平,此次
光大证券的交易系统也基本处于同一档次的设备。
(2)可以24小时监控市场。特别是最近商品期货的夜盘出现后,24小时人工盯盘的方式已经不可能,利用计算机来交易,可以减轻人工交易员的工作量。
正是由于这样的优势,量化交易系统在海外已经得到了广泛的应用,美国70%以上的交易量都是由量化交易实现。
一般来说,一般来说,量化交易系统分为订单生产系统和订单执行系统两大部分。其中订单生成系统的任务是发出交易信号,即根据某个模型来判断是否进行买入或者卖出的操作;订单执行系统则将这些交易信号变成具体的交易指令,并发往交易所。本次光大乌龙指事件中,出现系统BUG的就是这个订单执行系统。
2. 订单执行系统是做什么的?
订单执行系统的任务是将交易的买卖指令发往交易所,并且将交易所返回的成交情况,回馈给订单生成系统,然后按照订单生成系统的指令,进行下一步的操作。
举个通俗的例子:某公司的总经理想喝咖啡,于是他指挥秘书出去买一杯。在这个流程中,总经理就是订单生成系统,他发出了‘买咖啡’这个订单,秘书就是根据总经理的指令,将咖啡订单发给相应的咖啡店,她做的就是‘买咖啡’这个订单的执行。秘书就是这个订单执行系统。
3. 光大的订单执行系统出了啥问题?
根据公开的资料,笔者猜测本次光大的乌龙指事件中,光大策略交易系统的订单生成系统和订单执行系统之间的‘消息通讯机制’有一些逻辑的问题。也就是说,在发往交易所的订单指令没有得到明确的返回消息情况下,订单生成系统持续发出了新订单。由于光大的量化系统速度太快,短期内产生了巨量的订单,从而造成了市场的剧烈波动。
我们再以刚刚那个喝咖啡的例子来说明问题,正常的买咖啡的流程是这样的:
(1)总经理:小王,给我买杯咖啡。 (订单生成系统发出指令)
(2)秘书:是,总经理。 (订单执行系统应答)
(3)秘书:呼叫
星巴克,一杯咖啡。 (订单执行系统向交易所发出委托)
(4)星巴克:收到,五分钟后送到。 (交易所执行,并返回结果)
(5)秘书:总经理,咖啡已经送到。 (订单执行系统反馈结果给订单生成系统)
这个流程中,总经理就是订单生成系统,秘书就是订单执行系统,星巴克就是交易所。光大的乌龙指事件问题出现在第(2)步,就是消息确认的步骤,也就是秘书说的那句话:“是,总经理”。
也许是和男朋友吵架,也许是心情不好,在收到总经理的指令后,秘书没吭气,就直接将订单发给星巴克了。这时候总经理以为秘书没有听到他的指令,于是又说了一遍:“小王,给我买杯咖啡”,又没吭气,于是总经理又说了第三遍。。。。由于光大的量化系统速度太快,在短短数分钟之类,说了一万遍,结果。。。全城的咖啡都给买光了。。。。
这可能就是这个订单执行系统出问题的地方,当然这是笔者的猜测,仅供读者参考。
4. 未来如何避免?
通过上面这个案例,读者也许明白了具体的问题所在,那么下面的问题是:应该如何避免以后再出这样的问题呢?
这种问题的解决一般有两个方法:第一:执行‘原子操作’,第二,执行‘同步风控’。所谓原子操作,就是在一个指令没有执行完之前,不再发出第二个指令。所谓同步风控就是每个订单执行之前都经过风控,而不是批量通过的方式。这个说的有点绕口,我们继续以刚刚那个买咖啡的例子来说明问题。
当总经理发现秘书没有吭气后,正确的做法不是再说一次,而是
(1)立刻停下手头的工作,走到秘书身边:“小王,咖啡的订单发出了吗?是不是心情不好?” (订单生成系统查询结果)
(2)秘书娇滴滴道:“咖啡五分钟后就送到,老总” (订单执行系统确认结果)
(3)老总回到座位,继续下面的工作。 (订单生成系统完成原子操作)
得到秘书的确认消息后,老总不会持续不停的发出买咖啡的指令,于是就避免了发一万次指令的事情。这充分说明:沟通是多么的重要啊!在交易系统上,这就叫做‘原子操作’。
第二个方法:同步风控,就是说:秘书发出买咖啡的订单后,还需要办公室主任老李审核一下,只有老李审核通过才能发出。当老李发现一下子连续买了几十杯,就立刻中止秘书的行为,从而避免将咖啡买光的问题出现。
现在的问题是:光大证券的量化系统中,有这个风控系统吗?笔者认为肯定是有的,但是传统风控系统的速度太慢,为了提高交易效率,可能采用的是‘异步风控’模式,也就是说在某个时间节点进行一次性批量的风控审核。再以刚刚的例子:这个办公室主任老李年纪大了,反应不灵敏了,只能半个小时审核一次。但是总经理和秘书的速度太快,等老李反应过来的时候,一万杯已经买完了。大致就是这个故事了。
对于这个问题的解决方法就是用内存风控系统,使得风控系统的速度能跟得上订单执行系统的速度,换句话说:办公室主任老李年纪太大了,换个年轻人干,速度快的,能跟上总经理步伐的。
5. 为什么要这么快?
看到这个,读者也就明白了,根本原因在于光大证券的量化交易系统速度太快,以至于出了BUG的时候,没有能够挡得住,造成了对市场的巨大冲击。举个简单的例子就是:法拉利太快了,刹车片没刹住!那么,我们为什么需要这么快的系统呢?传统的慢悠悠的系统不也挺好吗?
对于这个问题,我只想说:我们传统的太极拳和八卦掌不也挺好吗?为什么我们还需要飞机大炮和导弹呢?
有句俗话:天下武功,唯快不破!《笑傲江湖》里面的东方不败也就是因为练了葵花宝典以后,招数速度太快,以至于无敌于天下。
未来的投资的竞争,没有高速系统,没有大数据分析,试图能保持持续的竞争力是比较困难的事情,这也是光大证券花费巨资研发这样的量化交易系统的原因。相信经过这次乌龙指事件,未来有越来越多机构投资者加入这样的军备竞赛中。金融市场就是不流血的战争,没有武器,再好的战略思想也没有用。
有媒体说,光大的量化交易系统速度太快,以至于只有靠拔电源的方式才能停下来?这是真的吗?对于这种极速交易系统,一旦出问题,应该怎么办呢?除了拔电源,还有别的停止的方式吗?(转)