著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:袁浩瀚
链接:https://www.zhihu.com/question/21789812/answer/22178178
来源:知乎

谢邀。高频交易我非此中高手,故问题不敢贸然回答,积蓄多时,终敢开口,所以此处作长文聊聊高频交易,请慢读。

有人的地方就有江湖,有江湖的地方就有流派。在投资界,若巴菲特、彼特林奇一宗是九阳真经,武林正道,以绵绵不绝的内力和朴实无华的招式号令天下,那浑水、香橼之流做空公司,则是武林异类,苦修吸星大法,劫人钱财于做空之际,人见人惧,却无法忽视之。在这些名门恶衙之外,还有一群高频密宗,着实高筑墙(或许永远金融圈最强的设备)、广积粮(闷声发大财)、缓称王(低调无名),世人罕知其存在却不知自己单单交易或许都曾经过其系统流过。

空谈其设备如何之强、钱财如何鼎盛、人物多么桀骜都无法触及高频交易的本质——为何要做高频交易,不谈本质光谈现象,很容易沦为Wolf of Wall Street这种娱乐圈为土豪立传的软文。

高频交易分支庞杂,我仅能在此梳理一条线,但是其本质无法离开市场微结构(Market Micro-Structure)这一核心问题。一个高频交易者对于市场微结构的痴迷,就好比辩护律师对于法律条文中细节的痴迷,或者政治结构套利者对于社会制度缺陷的痴迷——一个漏洞可以造就一轮财富或权力。

从中国开始接触证券市场的朋友很难对市场微结构有天生的敏感,比如我,因为中国市场是天生自上而下的市场,证监会如同上帝,上帝说要有个市场,于是便有了市场,证监会说要有涨跌停板,于是有了涨跌停板,证监会说要有t+1,于是有了t+1的现行制度。但是美国的市场恰恰相反,是自下而上的市场,先有离散的经纪人,大家各自帮助客户做交易,混乱到了一定程度,大佬牵头,聚在梧桐树下,约法数条,才有了今天华尔街和纽交所的雏形——这世间本无交易所,交易的人多了,才有了交易所。因此这种自下而上的系统天生是开放式和激进了,是各方利益均衡的产物,难以避免的会出现各种漏洞——最简单的形式莫过于另一派人各种不服,另开山头设立交易所交易相同的证券,于是两个交易所之间的价差就出现了。而中国,在现行体制下,很难出现另一个交易所交易同样的证券——这两种体系的差异源自于其基因,不需要区分高下,各有好处,而我个人认为中国现行体系是封闭金融体系保守风格的最佳选择。

高频交易的雏形是discretionary arbitrage,即显式套利,或者咱们更加接地气的说——搬砖。最简单的例子就是之前比特币人民币交易所的价格比美元交易所高50%以上,众土豪纷纷出动,在美国低价全仓买入,传送回国,然后再高价卖出。这种策略一点也不低端,在美国70-90年代,由于交易所林立,如芝加哥股票交易所、太平洋股票期权交易所、费城交易所、纽约交易所等等,同一个主体为了融资方便,可能多处发行,价差经常出现。90年代以前由于互联网技术不普及,很多个人交易员可以简单的在多个交易所之间搬砖,人工“高频”交易。上一代的geek们也是极富创造力,开发出了机器手等“自动化”下单系统(不是程序,是真的机械手),实现那个时代的高频交易。

但是如果你关注市场微结构,你会发现有些价差是时间难以消除的——比如同一个股票在一个交易所永远高于另一个交易所,最简单的例子就是A、H股的价差。这些价差背后都有深层次的原因——比如A股买入后是无法在HK市场卖出的。或者比如当时在美国,A市场可能交易费用高、交易量低,那么其价格可能高于B市场,以补充做市商的做市的难度(也可能相反)。这种情况下简单的搬砖就不行了,你需要人为的修正价差——或者去动态套利——做统计套利,这里面学问很深,后面再触及。

回到美国市场,在87年和99年发生了几件大事。首先是87年10月股市崩盘了一天,这一天创造了指数的历史跌幅,也让交易所开始大量引入电子化。第二是99年开始全国推行Consolidated Order Book,把所有交易所的限价单并到一个表里面。这两件事情极大地重塑了搬砖行业,也使得高频交易从可选成为了必须。电子化的引入造成了一些精通计算机的经纪人开始尝试用机器做自动化交易,自然推高了行业的交易速度;而Consolidated Order Book使得你很难再靠肉身显式的去跨交易所套利了——因为一看去全国的交易所都并成一个交易所了。

我相信做中国股指期货套利的从业者也经历了类似的过程,早期的当期期货和股指的差距经常到40元左右,而现在日内高点可能在20元左右——而且昙花一现,也就是说你要抢到那个价差20元的单,你需要有速度的优势了。因此我听说大量的高频交易开始被应用在股指期货上了。

也正是在1987-1999年这段时间,大量的高频交易传奇公司开始出现,最有名的莫过于Getco、Knight、Jane Street之流了。这里插一个很有意思的问题——同时下单和电子游戏程序员。Getco最初成立时,极力招募的不是华尔街的金融奇才,而是在芝加哥各地的顶级电子游戏程序员。因为最初的高频交易最关键的就是异步下单的问题——看似简单,其实学问很深:现在假设在交易所A和B有价差,你需要同时下一个卖单和买单去赚取这个差价,你怎么下单?

最简单办法就是串行下单,我先去交易所A成交,然后根据成交数量去交易所B下同样数量的单,如果B机会已经消失,则追单保证仓位平掉。这样明显不利于捕捉稍纵即逝的机会。那如果同时并行下单呢?同时下单最大的问题就是,老天才知道最后两边各会成交多少,比如A、B各下一个单位的单,A成交了0.8,B成交了0.7,这个0.1的差额怎么办?在这个方面,电子游戏程序员比华尔街的金融家清楚多了——在网络游戏中,如果你和别人PK,都只剩1点血了,都发出了攻击的指令,谁该死?在这方面,每天与网络通信和并行数据交换打交道的电子游戏程序员有着天生的优势。

这个年代,不需要策略也可以赚取可观的利润,我们姑且称此中方法为Pure Arbitrage (纯套利),但是门槛低的游戏,玩家就多,最后利润比街头开小卖部还低。于是乎就开始有了统计套利的介入,我相信这也是题主提问的原动机。统计套利的高频交易和纯套利最大的差异是统计套利允许在信号确认的情况下,保持一段时间和一定水平的活跃仓位;而最大的相似之处是利用低频交易者对细微价格的不敏感和报价速度的低下。

还是用一个例子来说明吧,比如你在高频交易做微软公司的股票的统计套利,你的模型告诉你指数、苹果的股票还有谷歌的股票这三个因子对于微软股票的短期价格波动具有极强的判定力(统计显著),那么你在这三个因子判定上涨时,你发现因子预测价格高于当前盘口(当前盘口更新不及时),你买入微软的股票却不立刻做空三个因子的资产组合,而是等待一段时间再做出对冲、平仓的行为。这是个很简单的例子,但需要的模型就不再是简单的两个交易所的价格了——你需要一个经常拟合的线性模型和即刻的置信度估计。类似的是期货中间的当期合约与远期合约的套利。这种时候,就有些稍复杂的模型介入了。在模型的选择上,我觉得最终的规律都是选择当前环境下可行的最简单的,从统计上来说,因子越多模型的稳定性越差,而投资本身也是以大道至简为通行规律。

说到这里,你可以发现高频交易的本质是利用技术的优势去捕捉暂时的市场错误——或者用自恋的话说,我在帮助市场先生改正错误。如果不以此为本心而为了高频而高频,那其实是本末倒置的——我个人觉得很多长线投资的思路强行移植到高频交易中,是很可能制造悲剧的。

后期在美国高频交易的发展中,另外两类产品成为主流——期权自动化做市(Option Automatic Market Making)和可转债套利(Convertible Bond Arbitrage),其实原理无二,你把握好了本质,做法都很类似,只是原来你只需要对冲一次项(first order)的价格波动,而现在你可能需要对冲的是波动性风险(Volatility risk)或者信贷违约风险了(Credit Risk)。Jane Street现在大量就在进行期权自动化做市的交易,而Citadel则是在Ken Griffin的带领下从哈佛的宿舍里面靠着可转债套利发家直至今天的巨头。这里不一一展开了,有心者一定会自己去探个究竟。

到今天,其实美国各大市场中高频交易都到了很尖端的水平——colocate服务器,模型越来越复杂而且程序越来越先进。而很多公司都在做着类似的交易,因此我个人感觉,其商业模式已经类似于比特币的挖矿了——大家都在拼命争取获得下一个block(交易)的奖励,而最终获得者好似于中签一般。这个领域无论是DE Shaw这类巨头还是曼哈顿下城新兴的众多prop trading firm都感觉赚钱不易了。不过在国内,随着市场深度(产品类型、数量、流动性)增加,反而出现了很多套利机会,而今年关于期权正式面市的消息也是给了高频交易者很多期待。这是非常好的事情,如同电影Margin Call里面说到的——赚钱无非三种方式:be the first,be smarter或cheat。在中国,cheat与双轨制的故事,我相信大家都很熟悉,而be the first成就了中国第一代因为主动或被动下海的创业家们,现在慢慢高频交易者这块smart的群体可以在中国金融市场施展,其实是绝对的福音。

高频交易[z]的更多相关文章

  1. 高频交易策略之Penny Jump[z]

    高频交易策略之Penny Jump 今天假设有一个笨笨的大型机构投资人(共同基金,银行,退休基金....),他想要买进一只股票,但又不想挂市价买进,所以就在市场里面挂了一张要买进的大单.这时候所有市场 ...

  2. 高频交易:Solarflare组建超低延迟网络

    10Gb以太网适配器制.网卡造商Solarflare目前正在将自己的网卡系列产品转变为服务器产品.其产品在金融领域有着广泛的应用. Solarflare首先将现场可编程门阵列(FPGA)放入网络适配器 ...

  3. 高频交易算法研发心得--RSI指标及应用

    高频交易算法研发心得--RSI指标及应用 前面文章中我们提到了MA均线(包括EMA,SMA).MACD以及SAR指标,这三类指标存在一个共同特点,即:从固定周期的价格作为判读的指导思想,并将价格进行平 ...

  4. 高频交易算法研发心得--WAVT指标(Warensoft交易量趋势指标)算法及应用

    高频交易算法研发心得--WAVT指标(Warensoft交易量趋势指标)算法及应用 注:WAVT指标由Warensoft(王宇)原创. 前面聊了一系列的常见应用指标,包括短线.长线的指标,并且也无耐的 ...

  5. 商品期货高频交易策略Tick框架

    原帖地址:https://www.fmz.com/bbs-topic/1184在商品期货高频交易策略中, Tick行情的接收速度对策略的盈利结果有着决定性的影响,但市面上大多数交易框架,都是采用回调模 ...

  6. Java才是世界上最好的语言,Java在高频交易中替代C++

    高频交易 高频交易是指从那些人们无法利用的极为短暂的市场变化中寻求获利的计算机化交易,比如,某种证券买入价和卖出价差价的微小变化,或者某只股票在不同交易所之间的微小价差.在高频交易中,自动化应用程序每 ...

  7. 高频交易策略[z]

    Market Order以最高速下市价单(market order)是买方最基本的策略 Looking for Price Discrepancies 这个就是高频统计套利(high frequenc ...

  8. 高频交易策略之Penny Jump

    今天假设有一个笨笨的大型机构投资人(共同基金,银行,退休基金....),他想要买进一只股票,但又不想挂市价买进,所以就在市场里面挂了一张要买进的大单.这时候所有市场里面的人都会看的到limit ord ...

  9. 高频交易算法研发心得--MACD指标算法及应用

    凤鸾宝帐景非常,尽是泥金巧样妆. 曲曲远山飞翠色:翩翩舞袖映霞裳. 梨花带雨争娇艳:芍药笼烟骋媚妆. 但得妖娆能举动,取回长乐侍君王. [摘自<封神演义>纣王在女娲宫上香时题的诗] 一首定 ...

随机推荐

  1. 第一节:简单的请求(Requests)和响应(Responses)

    目录 创建项目 开发服务器 创建名称为Polls的应用 编写你的第一个视图 创建项目 在命令行中,使用cd命令进入到你想要存储你的项目的目录,然后运行下面的命令: $ django-admin sta ...

  2. 一步步构建自己的AngularJS(2)——scope之$watch及$digest

    在上一节项目初始化中,我们最终得到了一个可以运行的基础代码库,它的基本结构如下: 其中node_modules文件夹存放项目中的第三方依赖模块,src存放我们的项目代码源文件,test存放测试用例文件 ...

  3. How to Allow MySQL Client to Connect to Remote MySql

    How to Allow MySQL Client to Connect to Remote MySQ By default, MySQL does not allow remote clients ...

  4. putty连接ubuntu虚拟机缓慢问题的解决

    vmware安装系统使用了ubuntu,安装后每次用PUTTY登录发现都到等很久,经过上网搜索,发现是Ubuntu安全机制导致的连接缓慢问题,   解决方法如下;   1. sudo vim /etc ...

  5. ClientAbortException 异常解决办法

    http://blog.sina.com.cn/s/blog_43eb83b90102ds8w.html ClientAbortException 异常解决办法 当我们用Servlet导出图片,或用J ...

  6. Bootstrap整体架构

    大多数Bootstrap的使用者都认为Bootstrap只是提供了CSS组件和JavaScript插件,其实CSS组件和JavaScript插件只是Bootstrap框架的表现形式而已,他们都是构建在 ...

  7. JavaScript插件架构

    1.HTML布局规则 默认情况下,所有的插件都可以通过设置特定的HTML代码和相应的属性来实现.也就是说,在网页加载的时候,JavaScript代码会自动检测这些标记,并自动绑定相应的事件,而无需添加 ...

  8. 解决bash: mysql: command not found 的方法

    root@DB-02 ~]# mysql -u root-bash: mysql: command not found 原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下 ...

  9. springboot教程

    http://www.cnblogs.com/java-zhao/tag/spring-boot/ http://blog.csdn.net/liaokailin/article/category/5 ...

  10. C Primer Plus(第五版)12

    第 12 章 存储类, 链接和内存管理 在本章中你将学习下列内容 . 关键字: auto, extern, static, register, const, volatile, restricted. ...