为了正常的体验网站,请在浏览器设置里面开启Javascript功能!
首页 > 对冲基金量化程序化交易研究

对冲基金量化程序化交易研究

2018-09-11 7页 doc 31KB 15阅读

用户头像

is_370334

暂无简介

举报
对冲基金量化程序化交易研究程序化交易研究 程序化交易使得复杂量化交易策略、高频交易得以实施,同时可以优化交易执行并具有准确性、客观性等优势,但程序化交易增加了市场的波动性   核心提示 程序化交易是指通过计算机程序按照预先编制的指令来完成交易的方式,可以分为决策产生和决策执行两个层面。随着金融市场的复杂化,越来越多的复杂交易策略被设计出来,这些交易策略很难通过传统的手工方式执行,程序化交易应运而生。本文对程序化交易的概念、近年来的发展以及其对市场的影响做了总结。比较细致地分析了 Flash Crash事件的全过程以及程序化交易在其中扮演的角色。除此以外...
对冲基金量化程序化交易研究
程序化交易研究 程序化交易使得复杂量化交易策略、高频交易得以实施,同时可以优化交易执行并具有准确性、客观性等优势,但程序化交易增加了市场的波动性   核心提示 程序化交易是指通过计算机程序按照预先编制的指令来完成交易的方式,可以分为决策产生和决策执行两个层面。随着金融市场的复杂化,越来越多的复杂交易策略被设计出来,这些交易策略很难通过传统的手工方式执行,程序化交易应运而生。本文对程序化交易的概念、近年来的发展以及其对市场的影响做了总结。比较细致地了 Flash Crash事件的全过程以及程序化交易在其中扮演的角色。除此以外还通过例子详细的剖析了几个常见执行算法和程序化交易策略的运作过程。最后结合国内金融市场的现状分析了程序化交易在国内的发展前景。   摘要 ● 程序化交易是指通过计算机程序按照预先编制的指令来完成的交易,可以分为决策产生和决策执行两个层面。算法交易是在决策执行层面通过算法优化交易执行。英文中的 Program Trading是指“一篮子交易”。程序化交易按照交易频率高低又可分为高频交易和非高频交易; ● 国际上各大投资银行在算法交易上的大规模角逐在 2004年已经开始。截至今天,美国股市已经有超过 50%的交易量是通过各类算法获得的,目前算法交易应用最广泛的还是在股票市场,美国是算法交易最发达的地区,欧洲和亚太有很好的发展潜力; . ● 程序化交易使得复杂量化交易策略、高频交易得以实施,同时可以优化交易执行并具有准确性、客观性等优势,但程序化交易增加了市场的波动性,对市场公平性和有效性的负面影响也存在争议; 程序化交易虽然不是造成 Flash Crash的唯一原因,但在整个事件中起了重要的推波助澜作用。执行算法发展到今天历经了三个阶段:1.基准算法;2.定制算法;3.用于发现潜在流动性的算法。 ● 国内的交易场所单一、实行 T+1交割制度、不允许卖空、缺乏做市商制度、交易产品简单、交易指令不够完善等现实不利于程序化交易策略的开展。但是国内市场有广阔的发展空间并已经具备了一定发展条件,程序化交易在国内未来几年有很好的发展前景。 ● 国内相关服务提供情况与产业态势较为单一,与国外发展水平还有十年代差。做掘金路上的卖水人,其实往往比淘金人更有回报。   程序化交易的概念   程序化交易有多种不同的叫法,比如自动化交易(Automated Trading),算法交易(Algorithmic Trading),黑箱交易(Black-box Trading)等等。其实到目前为止行业内部对这个概念并没有一个统一而精确的定义,但只要是通过计算机程序按照预先编制的指令来完成的交易都应该属于程序化交易的范畴。 从分类上来讲程序化交易可以分为决策产生和决策执行两个层面。决策产生的程序化交易是指以各种实时/历史数据为输入,通过事先设计好的算法计算得出交易决策的过程,决策包括:对哪种资产,在什么时间以怎样的价位进行买/卖操作以及买卖的数量等;而决策执行的程序化交易则是利用计算机算法来优化交易订单执行的过程。   这里有几个概念需要澄清:   1.“算法交易”虽然在某些时候被用来指代程序化交易,但更多时候它指的是在决策执行层面通过算法优化交易执行。这类算法一般都是券商提供给买方机构的增值服务。相比最直接的下单,这些算法往往能获得更好的执行价格,发现更多的潜在流动性,或者帮助买方更好地隐藏自己的交易意图。 2.英文中的Program Trading并不等同于这里所说的程序化交易,它有明确的定义。 Program Trading是指“一篮子交易”,通常是对15只以上并且总值达到一定程度(比如 100万美金)的股票进行一次性买/卖,其主要应用是各种指数套利交易策略。另一种分类是从交易频率角度,分为高频交易和非高频交易。顾名思义,高频交易就是短时间内进行多次买卖操作的交易风格,怎样的频率属于高频也没有定论,但一般来说专业的高频交易机构,持仓时间都是以秒甚至毫秒计算,也正因为如此,高频交易无一例外的都是程序化交易。高频计算近年来的高速发展很大程度上影响并改变了市场的交易和思维方式,新的交易策略层出不穷,也引发了以美国为首的发达国家的交易监管部门的一系列讨论和思考。   策略交易、系统交易与程序化交易的关系   Strategy Trading 战略交易/策略交易 在投资领域中,一般习惯把买入持有、价值投资、成长投资等称为战略,而把惯性、反转、趋势、支撑阻力等等叫做策略。由于后者是以技术分析为主,而在交易决策分析的计算机化历史中,技术分析走得比较早,所以习惯上说Strategy Trading多数指策略交易。但即使在这个层面上,策略交易这个词也被不同的人在两种意义上使用,第一种是指表明自己理解和采用了一个或多个明确的交易策略;第二种则等同于下面将要说的系统交易。总之,策略交易的提法,反映了人们对市场运行规律和特征的认识走向了条理化和体系化。后面我们说的策略交易专指第二种,即等同于系统交易。 System Trading 系统交易 系统交易是指运用交易系统(Trading System)进行交易。但是交易系统这个词却经常被人们在三种意义上使用。第一种,就是系统交易中的交易系统,它的全称应该叫交易规则系统,指包括入市、离市、止损、仓位与头寸等一整套的规则。第二种,有不少人喜欢把交易者客户端的下单系统称做交易系统。第三种,交易所与营业部的整套交易管理系统也常被简称为交易系统。后面我们说的交易系统是指第一种层面上的意义。 Program Trading 程序化交易/程序交易 这是此篇报告的重点,程式交易或程序化交易经常被人们在两种意义上使用。第一种,是统称所有通过计算机软件程序进行自动下单的交易。第二种,是从市场监管角度来定义的,特指交易所规定的达到一定条件的交易,譬如NYSE(美国纽约证券交易所)的定义:一个帐户同时发出买卖指令的股票达到15只以上并且金额超过100万元的,因而人们也叫它篮子交易(Basket Trading)。 表1概括说明了三者之间的关系,表中的任意决定型交易(Discretionary Trading)是指按照个人直觉或情绪、别人建议或非量化数据分析来决定的交易;技术型交易(Technical Trading)是指按照技术指标、个人主观规则进行的交易。技术型交易者有两个突出行为特点,一是热衷于预测市场,二是看重交易的高成功率。 另外还有一个常见的名词叫机械交易,对照上面的图表,它包括计算机执行的系统交易,也包括在执行中不加入任何主观临时判断的人工执行的系统交易。 图表1:策略交易、系统交易与程序化交易的关系 按决策依据划分 按决策方法划分 按执行手段划分 策略交易 电脑执行的系统交易 程式交易 人工执行的系统交易 人工交易 非策略交易 技术型交易 任意决定型交易 程序化交易的发展 国际上各大投资银行在算法交易上的大规模角逐在04年已经开始。瑞士信贷在该领域一直处于领先地位,其Guerrilla算法是当时最受欢迎的算法之一,其次是高盛和摩根斯坦利,另外花旗集团、摩根大通和当时的雷曼兄弟也都在04年前后纷纷推出自己的平台和算法。从那时起算法交易取得了长足的发展。截至目前,美国股市已经有超过 50%的交易量是通过各类算法获得的执行。Aite Group在近期一份中给出了算法交易在不同市场中交易量占比及近年来的增长趋势。从中可以看出目前算法交易应用最广泛的还是在股票市场,而期货市场则是近年来增长最快的市场。相比之下外汇、债券和期权算法交易的程度还有待提高,主要原因是这些市场的交易产品其复杂性相对股票和期货更高,优化执行算法所带来的好处并不像股票市场那么明显。 从分布上看,美国是算法交易发展最发达的地区。最近几年其买方机构在算法交易方面的投入是欧洲的两倍,而欧洲是亚太的两倍。增速方面,美国已经比较成熟,年平均增速在2%,而欧洲和亚太则是9%。   程序化交易的优点及引发的争论   程序化交易在一定程度上颠覆了传统的交易思维,改变了市场微观结构,之所以能够如此迅速的发展,其所具有的传统交易方式不能替代的优点主要有以下几方面: 1.使复杂理论和实际交易有机结合变为现实。当今的金融市场,简单的技术分析和指标计算已经不能满足交易决策的需要。大量历史(时序)数据分析和复杂模型被引入以发现市场的规律和交易机会。人们通过计算机程序监测市场情况,对数据进行实时分析,然后由各种统计和量化算法帮助交易决策。人们通过历史数据或随机模拟的市场情况来测试交易策略效果。最终测试好的策略以程序的形式植入交易者自行开发或者是由软件提供商所提供的交易平台中进行交易。 2.高频交易。如前所述程序化交易的一个重要组成部分是高频交易。高频交易策略通过计算机程序在短时间内对金融产品进行反复买/卖,对速度和精度要求很高。这类策略不可能通过手工完成。 3.交易指令优化执行。券商为了赢取更多的客户订单已经开发出了大量交易执行算法。这些算法很大程度优化了交易指令的执行,相比直接下单不仅可以获得更好的成交价格、更快的成交速度,还可以尽量少的影响市场。另外随着交易策略的复杂化,比如某些套利策略涉及到一篮子股票的同时买/卖,手工完成的风险很大,而算法则可以很轻松完成,而且保证准确性。 4.客观性。程序化交易不受情绪的影响是最有“纪律性”的交易员,可以保证交易按照预先制定好的策略被执行。这样的好处是可以将策略和执行严格分离而互不影响。 然而任何事物都有两面性,随着程序化交易对传统交易方式的冲击越来越大,反对的声音也逐渐产生。争论的焦点主要集中在两方面: 1.市场的公平性。随着程序化交易特别是高频交易的出现,市场越来越多的体现出了对速度的诉求。谁拥有性能最好的计算机、最快的网络链接,甚至是离交易所近的办公楼都会给交易带来优势。面对这种偏离价值投资的趋势愈演愈烈,有人提出这是对普通投资者的不公平。 2.市场的有效性和交易秩序。从市场监管者的角度讲,一方面希望市场活跃,另一方面又希望市场有良好的交易秩序和有效性,希望价格有平稳而透明。程序化交易确实大幅提高了交易量,但同时可能给市场带来了更大波动。另外部分程序化的交易策略完全是通过市场规则的漏洞达到盈利的目的,制造人为的价格,使得价格没有反映出真实的市场情况。比如基于佣金返还的交易策略就是一个例子。 尽管人们对于诸如程序化交易到底对市场的波动率和微观结构产生了怎样的影响意见不一,有一点是可以肯定的,那就是程序化交易给金融市场增加了不稳定性。最好的例子莫过于今年5月6日上演的Flash Crash:美国道琼斯指数不到半小时的时间暴跌700点,之后又戏剧性的反弹600点。美国股市暂时性的蒸发了1万亿美元,创造了道琼斯指数单日日内下跌的最高纪录。 对于造成此次事件的原因美国证券监管机构展开了广泛的调查并有了一些初步的结果,事情的大致过程如下: 1.当天希腊政府对于缓解债务危机的一系列举措造成了市民在雅典暴动,负面消息加剧了人们对于欧洲经济状况传导到美国的担忧。 2.在东部时间下午2点半左右,某基金率先卖出价值超过40亿美金的E-mini S&P期货,其中一部分买家即为程序化高频交易者。这笔交易事后被证明也是通过程序化交易实现的,执行算法的目标为卖出前一分钟交易量的9%,无论时机和价格。 3.十分钟之后,之前买入这些合约的高频交易者又在彼此之间大量卖出。比如 2点42分44秒左右,价值1.25亿美金的E-mini SP六月合约被卖出;25毫秒之后价值超过1亿美金的ETF再次被卖出。 4.在这个过程中,无数的指数和ETF以及他们的衍生品被计算机程序反复定价并执行相应的交易,天量的订单和交易信息超出了NYSE交易系统的负荷,很多信息被放入队列中没有及时发送到统一的对外价格/交易信息发布平台(CQS)。当这些信息最终被发出时时间戳标却记为发出时间,与交易实际发生时间存在延迟。 5.延迟的价格信息使得NYSE的买方竞价“高于”其他交易所,根据Reg NMS的规定,交易必须按照最好价格执行,于是越来越多的卖单被路由到NYSE,进一步加剧了这种效果。 6.与此同时部分市场参与者发现了数据延迟现象,在不知道具体原因的情况下为了安全起见,给出了非常高的卖价和非常低的买价(比如1美分)。这种报价一旦成交,市场便进入了底部。这也是埃森哲等股票在 5分钟左右的时间市值损失99%变为1美分的原因。 总之,造成这次事件的原因是多方面的,有客观因素也有人为因素。比如特殊的市场环境(欧债危机、一开始的超大卖单)、NYSE系统的负荷有限等,但程序化交易几乎在各个环节都扮演了一定角色: 1.面对市场的大量卖单,各种程序化交易策略对指数、ETF和其他衍生品进行重新定价并发出订单捕捉交易机会。而这一切都只发生在 20毫秒左右的时间里,基本上是信息通过网络从芝加哥传到纽约所需要的时间。 2.某些特定算法会不断地在市场中发送订单之后迅速撤回以检测流动性等信息,这些订单进一步增加了交易所的系统负荷。 3.后期市场大幅下跌触发大量Stop Order,天量订单瞬间得到执行形成链式反应。值得注意的是股市不仅在短时间内大幅下跌,而且在之后很快得到反弹。这说明此次事件是“事故”并非基本面所致。事实上,类似的小规模的Crash其实早有发生,只是由于规模较小没有引起人们的关注和重视。Natex公司对06到10年个股的详细交易数据进行了分析,统计了发现近5年来类似事件发生的频率。他们参照Flash Crash的特点对小规模Crash做了统一定义:对于市场迅速走低的情况,他们的定义是在 1.5秒之内成交价连续10次递减,并且价格变化超过0.8%;类似的对于市场迅速拉高的情况,他们的定义是在1.5秒内成交价连续10次递增,并且价格变化超过0.8%。07年以来这种小规模 Crash发生的频率明显提升,这与市场隐含波动率的形态如出一辙。 从上面的分析中可以看出程序化交易对市场安全造成隐患的一大原因是速度太快,很容易形成连锁反应。此次事件之后不久,美国官方就宣布准备启用新的更严格的交易限制手段(Circuit Breaker)以减少类似事件发生的可能。新的限制规定:对于限制范围内的股票,在任何5分钟的时段内,只要其价格变动超过10%该股票就要停止交易5分钟。该限制目前仍在试运行阶段,会在6个月的时间逐渐应用于在NYSE交易的S&P 500和Russell 1000中的所有股票。   典型算法/策略举例   这里选取了几个比较典型的执行算法和程序化交易策略进行讨论。执行算法发展到今天历经了三个阶段:1.基准算法;2.定制算法;3.用于发现潜在流动性的算法。 第一代算法很简单,追逐的主要是执行价格。这类算法的目标就是匹配人们常用的参考均价,比如VWAP和TWAP,即交易量加权平均价格和按时间的平均价格。VWAP的实现方式是:将交易日平均分成若干个时间段(原则上越细越好),然后利用历史数据拟合出交易量在各个时间段的分布,比如一个简单的方法是对过去 N个交易日的分布信息取平均。执行时按照每个时段交易量所占比例分别执行。 第二代算法相比第一代体现出了定制化的需求。一方面它不再是单单寻求执行价格,有时也会考虑交易量方面的因素。另一方面它力图寻求相比 VWAP、TWAP更好的价格。比如交易量参与(Volume Participation)策略就是保证在某个时间范围内完成市场交易总量指定比例的交易,并不考虑执行价格和市场影响。实际上前面提到的Flash Crash发生初期,基金的大量卖单就是通过类似算法执行的。这里主要讨论两个比较常见的算法:Arrival Price和Sniper。 Arrival Price : VWAP、TWAP算法虽然可以基本保证最终的执行均价基本符合市场均价,但无法产生额外Alpha。很多时候市场参与者希望获得的不是市场均价而是下单时刻的市场价格(因为他们下单时很可能已经加入了择时的考虑)。Arrival Price算法就是为了适应这种需要而产生的。虽然不同算法提供商有不同的实现方法(甚至名字),但本质上都是相同的。这种算法的基本思路是对市场参与者的风险承受力和所期望的收益(更好的执行价格)之间的均衡。所以该算法一般都有一个风险偏好参数供使用者指定, 一般来说有保守、适中和激进三种模式。这里的风险是指订单有可能不能被执行。下单人的风险承受度越高算法的执行时间就越长,换句话说只等待 “好”的价格去执行,但风险是可能错过合适的执行时机甚至干脆不能被执行。相反下单人的风险承受度越低,该订单就会越快的被执行。相应的,所得到的执行价格也可能不够理想。一般来说该算法会预先计算出一条交易量的执行轨迹,具体执行时按照轨迹所规定的交易量分时处理。 Sniper :该算法的中文翻译是狙击手,顾名思义该算法所做的事就像一名狙击手,首先将原始订单隐藏起来并监测市场状态。一旦有满足下单人指定的价格,该算法就会尽力去抢占流动性执行该订单。算法的本质是不把order显示在交易所的Book上,而是等到时机出现在下单。比如某位交易员想以$6的价格购买某只股票,最通常的做法是下一个$6的限价单;另一种做法是通过Sniper算法执行。限价单有两种明显的弊端:1.当该订单出现后,其他同样想购买这只股票的人可能会抬高价格抢先购买,从而降低该交易员订单被执行的可能;2.当该订单出现后,卖家可能会认为在$6价格处有大量买单而提高卖价,这样也不利于该交易员订单的执行。而Sniper接到该订单则暂时持有而不发送,这样交易所并不显示该订单。随着市场的波动一旦有 $6或更好的卖单出现, Sniper就立刻下单来争取得到执行。 第三代算法主要是帮助寻找市场中的潜在流动性并加以执行。如果说前两代算法还是在已知的市场信息中寻求机会提高执行效率的话,第三代算法则是探索未知的市场信息并寻找潜在机会。第三代算法也是程序化交易多方博弈充分体现的一个领域之一,这里讨论一下基于佣金返还的程序化交易策略。 为了吸引交易量,目前几乎美国所有的交易所都实行佣金返还制度,即任何券商只要带入新的订单并得到执行,该券商会获得每股1/4美分的佣金返还。一种程序化交易策略就是鉴于该制度发展起来的,而且很好的体现了挖掘潜在流动性和多方博弈的特点。该策略首先持续监测市场的订单情况,当发现某种特定模式出现时,比如某只股票在$20成交100股,之后又快速出现500股在$20成交,该策略的隐含流动性检测算法会认定这可能是某个大的冰山订单(当然也未必总是正确的,所以有风险存在),购买还将继续。基于这种假设,该策略会以$20.01的价格下买单购买100股该股票。由于之前100股和500股该股票分别在$20被执行,如果有人愿意继续卖出该股票,则$20.01的买单将率先被执行。如果这笔买单发生,该策略则立刻掉头以 $20.01(同之前的买价)下卖单卖掉这100股。这时新的成交价格已经从$20上升到$20.01,原先一直在$20隐藏的大买单也看到了价格的上升。为了防止价格进一步走高,原始大买单有很高的概率会以$20.01买入这100股。总的算下来佣金返还策略在$20.01处买入100股,之后以同样的价格卖出。但是由于这两次交易都是运行该策略的公司带入的,他们将获得 $1/4*2 = $0.5的利润。利润虽小但是一切只发生在几十毫秒之间,并且每个交易日有成千上万的类似机会。 程序化交易在国内的发展前景 国内证券市场只有20年的历史,相比欧美以及亚太其他发达地区市场成熟度还有很大差距,不仅如此,国内市场的一些特性也使程序化交易在国内发展受到限制。 首先,国内的交易场所比较单一,股票只在交易所进行交易。而国外的情况则是大量的流动性存在于交易所以外,比如大大小小的暗池、ECN等。即使同一只股票也会在多个交易所交易,目前NYSE股票只有25%左右的交易量是通过NYSE执行的。国外很多执行算法就是为这种条件量身定做的,比如各种智能路由算法,而在国内这些算法都没了用武之地。 其次,国内市场的T+1交割制度使得大量日内交易策略不能得以实施,高频交易策略更是无从谈起。除此以外,股票市场不允许卖空、缺乏做市商制度、可供交易的产品简单、交易指令不够完善等,都不利于程序化交易策略的开展。 尽管如此,我们还是看好程序化交易在国内的发展前景。自今年4月沪深300股指期货被正式推出以来,大量的程序化套利策略纷纷出炉并创造出惊人的交易量。从沪深300股指期货月交易额和标普指数期货(包括普通合约和迷你合约)的月交易额对比来看,基本上国内的股指期货交易额已经和标普指数在同一水平。标普指数期货是面向整个市场的,而股指期货国内目前并没有对机构投资者开放,可以想象未来市场全面开放后国内的市场潜力有多大。结合目前国内的情况,我们认为程序化交易有望得到大力发展的几个原因: 1.股指期货和ETF的套利交易需要更多的算法支持,因为类似的交易策略都涉及到一篮子股票的交易执行,有效的算法可以很大程度上降低执行风险。 2.国内券商对执行算法的服务很少。目前国内的股票市场,机构投资者都是通过券商提供的市场直连通道(Direct Market Access)直接下单交易,而券商并没有提供规模化的算法附加服务,未来还有广阔的发展空间。 3.其他潜在市场。其他市场比如商品期货、权证等同样实行 T+0交割制度,也是程序化交易的潜在市场。事实上,目前已经有不少从事短线交易(趋势跟踪、反转)的投资者开发出各种程序化交易平台和策略,只是专业化和规模化有待提高。 4.人才优势。程序化交易通常需要有扎实数理基础和过硬编程能力的人才,而国内这方面有很好的人才储备,越来越多的国外量化基金来华开办分公司并在当地雇佣人才从事算法策略研究和开发也证明了这点。 国内相关服务提供情况与产业态势 从完成程序化交易的过程来看,这条产业链大体分为跑道租赁--模型提供--代写服务--系统销售--机房托管等,其中跑道租赁和机房托管主要提供交易网络与硬件的运维服务,低延迟交换机等特种设备比较适合此类交易。总得来说与传统运营商、IDC类似,在此无需赘述。 主流的两大程序化交易平台:MT5(MetaTrade 5)和交易开拓者, 国内目前在期货、股指期货、外汇上采用程序化交易平台的较多,而债券、股市等由于标的分散,需要更多的人工干预和判断,因此较少采用。
/
本文档为【对冲基金量化程序化交易研究】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索