设为首页收藏本站

宽客俱乐部——量化投资与对冲基金交流平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
揭开股票高频交易的神秘面纱——股票日内回转T+0交易课程
神奇的期货冲量交易法培训(包学会)
查看: 2662|回复: 3

柳峰:期权高频交易与IT技术

[复制链接]
发表于 2014-8-6 09:57:15 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 shenglisoft 于 2014-8-6 10:00 编辑

             QQ截图20140806095649.png
       我今天的话题是高频交易技术在期权的应用。最后就是我把风控技术特别提了出来,我觉得有必要讲一些稍微具体一点的东西。
  这个图是大家比较熟悉的,很多做市商,或者高频交易是一个比较基本的高频交易系统的概述,基本上到交易所连接,对订单管理,风险控制,定价系统,再就是交易,以及长尾管理,风险管理,大多数情况下都大同小异。其中比较核心的模块,我觉得主要是5个。一个是定价系统,另外的话一般说的行情系统,最后就是一般说的柜台系统,把单子下到交易所。
  另外还有一个是程序化的交易平台,因为基本上我们的策略是在平台上运行的。最后我认为也是最重要的风控系统。定价这一块大家很熟悉了,从技术来说,尤其在国外的品种特别多。大家想一想,如果有几千个,每一个股票,或者每一个品种都有十几、二十个、上百个的话数量级就上去了。所以很多时候大家会用GPU来做期权的评价。因为GPU最大的好处就是能够并行处理。而且跟股票之间基本上没有什么关系,所以可以利用这个特性,这样就特别或。特别是在GPU上面用得比较多一点。
  其实定价的话,最初的时候,特别是在远期,交易量并不大的时候,特别是有些做定制期权的话非常重要,其实对交易量比较大的品种来说,定价模式并不是这么重要。很多直接就是用隐含波动率了。用隐含波动率来做交易,很多时候需要靠速度,高频交易这方面的技术。现在国内也是做市场比较多的。第一批80年代开始把原来最早的手工交易干掉的这批第一代的交易商,最近对高频交易比较多,因为高频交易确实冲击比较大。再就是它的很多技术已经跟不上现在了,所以大家如果看他公司的话,现在慢慢地转型为一个经济公司了。但从现在的高频交易商来说,大家认为它有点怎么说,就是30年河东,30年河西。现在交易商做的事情跟他原来做的一模一样,期权交易主要是在这几个系统。刚才说了程序化交易平台和分控这一块。所以我想了一下,这些高频率以后交易主要是怎么用到的,基本上怎么把数据最快地得到,而且最快地做出反映。
  所以大家一般的话分成三块,一个是交易数据在电脑外的加速。第二,交易数据在电脑内的加速。其他的话还有其他数据的逻辑调用。电脑外的加速来看,基本上是一个花钱的活,如果是有COIOCATION的提供,必须要花钱,买交换机。一般来说也提供最新40G的接口。这些是一分钱一分货,可以看到这是纳斯达克的报价,基本上40G来说延迟是2个微秒,但价格是15000美元一个月。同时实际的话,它的延迟到了9个微秒,价格下降。这是一个花钱的活。
  交易中心之间的连接。如果你只是作为单个品种的话,一个COIOCATION就可以了。但一般做期权之间的套利,这样就涉及到两个数据中心的连接。最近大家看了这个书,不管专业性怎么样,大家记得的话,开头是以Spread NETWORK,以微波踏为结尾。
  有了外部连接以外,下面是在电脑内的加速,这一块也是判断一家技术好不好的关键。一般的话有一个UDP和TCP,TCP复杂一点,但道理是相通的。从第一个的话交易数据到网卡,网卡之后通过PCIE接口传到内核,内核之后再进行解析,然后推送到用户的程序。一般对数据进行解析。
  现在的技术来说,一般的话好一点,基本上是两个4微级的微秒,如果数据多的话,一般来说一个G需要一个GHZ的CPU解析。现在就是2到3个G的速度,基本上解析数据也需要花掉1个G,这在比例上来说,数据量大的时候还是比较大的。
  所以能够做文章的话,基本上是一个TCP/ IP解析这一块,还有业务的解析。很多时候可以用专用的网卡来做。硬件处理的容量和稳定性上也有很多好处。基本上不会像软件一样,如果软件一多的话,数据的性能衰减呈指数型上涨。
  其他的话就是我觉得大量数据的处理主要是在硬盘的IO上,这些我们也可以用现在的散盘,包括现在用的内存数据库,还有一些基于列的数据库来解决这些问题。其他的话,有一些系统比较大的话,系统之间的Messaging System系统,可以提高调试的效率,但高频的模拟成交是一个大问题,基本上模拟不大好,至今为止还没有一个人可以模拟非常好,因为超高频的时候行为很难模拟,再一个是自己的单子会影响到市场,所以需要有一个反馈的问题,怎么样来解决这是比较难的问题。大概测得差不多直接就上了。
  另外一个讲下程序化的交易平台,这对做程序交易来说非常重要。程序化交易分三个子系统,一个是开发系统,策略的测试系统,以及策略的运行系统。一款好的应该有这样的特征,首先能够非常快地对市场行情做出反映,再一个不仅仅只是限于公司化的策略开发。我们程序化平台有一个重要的指标,一般来说从你收到这个行情,到你比如说什么反映都不做,到下一个单子的时间是多少,一般来说平常系统大概是两位数微秒级的情况。如果是价格差一点,上百个也有可能。
  另外,可以把这个做得非常极端,像现在在做的,基本上可以做到3到4个微妙这样的时间,从你拿到行情,马上从一个单子出去,基本上是在硬件上做的。下面讲一下风控系统,风控是最重要的。基本上每年都会有几个这样的案例。所以有几个标准的东西,一个是我们国内去年的816事件,这是前年的8月1号,还有816事件之后几天高盛期权,每一个都是损失非常巨大,基本上都是上亿级的。刚刚列的数据发现都是8月份发生的,马上8月份要来了,要小心一点。以资本作为例子比较典型。如果仔细看一下的话,某个意义上来说还是比较冤的。要说的话得回到2003年。
  03年有一个程序,基本上属于SMARS,它是因为有很多单子的类别,所以说其中一个类别,比如我们说它是一个打单的单子,基本上以现价来打对手单,05年时候程序又改了一下,导致母单总量计算逻辑被改动。所以一下子又回到2012年,等于基本上7、8年以后了。7、8年以后因为很多时候你的单子类型已经不够了,所以我们又把原来的L类型又给用上。用上了之后都没问题。所以到了7月27号的时候更新了,一共有8台,8台更新了7台,忘了1台。表示什么呢?其中1台收到指令还是以03年当时的基金打单方式在做。所以等于说一收到的时候,其实这个单子也是非常少的,只有212个单子。之后7台处理正常,1台用我们说的基金打单东西,大量单子出去,价格基本上以对手价来成交。一打进去以后跟我们最近口香的广告一样,根本停不下来。
  所以最后结果是什么呢?当时其实还有些略过的细节,其实大家也知道有很多。特别是做系统支持的,发生这个问题以后,很多时候老板在那边打电话给你,一边系统单子还在寄出,虽然只有短短45分钟之内,但做了很多的事情。其实也没有太多的时间,最后的结果就是单子出去大概上千万个,15分钟之内成交了4百多个单子。5百多个股票。一共买卖了等于3亿9700万股,最后资本被迫卖掉。到底谁的错?7台,只有8台,8台里面只更新了7台有问题。这个程序员也没有错,这个程序都是比较老,比较稳定的,一直运行了十多年,4个小孩也快上初中了。所以测试的人员也没有错,为什么这么说呢?因为测试的话,新的代码在新环境里测试,没有人会把旧的代码在新的环境上测试。大家都没错,很多时候发生的话或几个事件正好在一起发生的。
  从这个例子来看,其实高频交易的系统分控有些特殊性,因为现在的交易速度越来越快,出的都是大事情,不像以前出的事情还可以把单子给停下来。第一,你的分控系统必须得非常快,而且不能说把单子拦得很长时间,这样也失去了机会。
  另外对大容量、高并发的分控处理。系统的问题来说,它其实使用我们国内的话,直接通过DMA,下单的系统直接进入到交易所。而且美国的交易所他不像中国一样对帐户进行资金检查,所以只是做一个纯粹的蹉合。基本上出现问题的时候已经是大问题。从系统角度来说最后单子进入市场前没有最大一关。当时已经发现有这个问题,但没法迅速地定位出有问题的市场连接。
  这个是什么意思呢?一个期货公司,或者是证券公司对市场连接可能有几十个,不能说所有的东西都给停下来,因为还不能影响到正常的交易。必须得快速地定位出哪些是有问题的连接,而且得有方法,也就是说把那个连接给断掉,这是他们没有做到的。其实说到这一点的话,其实下面有问题还是可以像我们家里有电一样,把拉闸给拉掉,但也不能全部拉掉,这样的话太粗暴了。
  一般分控系统来说其实有个风控,第一个,你策略之间自己内部的风控,这是我们要做的。成为系统来说,不能依策略自己的分控。还有程序化的交易太到交易所之间的风控。这个是基于帐户级别的风控,一般来说叫柜台系统。这个要求越来越高,你必须得非常快地把这个事情做好。
  另外一个,我觉得非常重要的,我们成为了拉闸式的分控系统,他介于交易系统和柜台系统之间。一般基于网络连接的风控,对整个席位的分控。这两个有什么区别呢?一个是从柜台来说,必须要做不少的分控,现在很多只是做简单的验资验仓方面的分控,这是不够的。把能够事前做到各种异常交易的分控,一般异常交易我们定位为价格的问题,还有一个是累计值,数据发多了,基本上能够知道有什么问题。
  还有基于速度的,以及对每个标的做更加精细的控制。还有合规性,以及基于整个盈亏。所以这个的话,上面说的是柜台的分控类型,会做得比较细一点,都必须要在事前做。还有拉闸式的分控,这个来说相对少一些。但能够起到探测异常交易情况。
  拉闸式的话很多公司没有做,如果你要做的话,对延时会不会增加。像现在很多已经研究出来的,基本上整个分控系统可以在1个微妙以内来处理完,这样基本上不会对你的系统增加额外的延迟到。我们基本上平均下来可以达到2百、3百个纳秒左右的时间。一个3百纳秒基本上传输1百米以上的时间。
  最后,我觉得也是借用两句话:我们做交易的,夜路走多了,总会碰到鬼。有两句话非常有意思,首先是华尔街的名言:华尔街有胆大的交易员,也有老的交易员,但从来没有又老又胆大的交易员。还有一句是中国江湖上的一句话:出来混总是要还的。只有做好分控的面前,这个钱才是自己的钱。
  好,待会有问题也可以问我。
作者:louis 柳峰

盛立金融官网:http://www.shenglisoft.com
微信号:shengli_soft

                               
登录/注册后可看大图

                               
登录/注册后可看大图

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|量化投资|对冲套利|高频|互联网接口|资产管理|宽客俱乐部 ( 沪ICP备16036585号   点击交谈

关注

GMT+8, 2019-1-21 01:19 , Processed in 0.122173 second(s), 31 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表