算法交易的主要类型与策略分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
算法交易的主要类型与策略分析
历史上最早使用算法交易的例子可以追溯到1949年。对冲基金之父阿尔弗雷德·琼斯,利用空对多3:7的比例进行配对交易,在1955年到1964年间,综合回报率高达28%。到了上世纪60年代早期,投资者开始利用计算机通过分析股票的周线和月线来预测价格运动方向。
配对交易逐渐成熟,发展成后来的算法交易。随后算法交易策略慢慢在华尔街流传开来并被广泛使用,同时也带来了非常可观的盈利。原来在摩根士丹利从事配对交易的研究员,后来逐渐成为如大卫·肖、詹姆斯·西蒙斯这类明星基金经理手下的精英,算法交易的“黑盒子”便由此诞生。
随着计算机的广泛普及,华尔街各大交易平台都开始执行算法交易,对IT技术人员的需求不断攀升。各种数量化研究人才进入到华尔街工作,改变了交易大厅传统的交易习惯,公开喊价的交易员逐渐被算法交易员所取代,算法交易也从此在华尔街开始蓬勃发展。现在,无论是股票、商品、期货以及外汇市场,算法交易已成为市场中不可或缺的组成部分。2009年花旗集团的报告显示,超过50%的股票交易都是通过算法进行自动交易的。而其他银行的报告指出这一数字甚至达到75%。市场之所以青睐算法交易,其原因在于其能够快速有效地降低交易成本,控制市场冲击成本和具有较高的
执行概率。除此之外,它还能提供隐藏交易意图等传统交易方法不具有的交易方式。
冲击驱动型算法交易:降低对价格的影响冲击驱动型算法是由简单的指令分割策略演化而来的。通过将大订单分拆成小订单进行发送,试图降低交易对资产价格的影响,达到最小化市场冲击成本的目的。
基于平均价格的算法,代表了第一代冲击驱动型算法。这些算法都是由带有预设目标的算法演化而来的,对价格或成交量等条件无敏感性。它们通常按预定的步骤被执行,在给定的时间内不管市场条件如何,只是单纯执行预先设置的指令。为了使交易算法更加灵活和适应市场环境,可以对这些静态方法进行改进,或更多地采用动态算法。这就导致了算法逐渐向机会导向算法倾斜。参与率算法(POV)建立在真实市场成交量上而不是依赖静态模型而形成交易进度,随后逐渐演化成为采用更隐藏的路径以达到零市场冲击的最小冲击
算法。
时间加权平均价格(TWAP)是一种基于时间变化的加权平均价格,被称为TWAP算法,其仅以时间分割为基础,考虑指令的设置或指令的执行,而不受市场价格或成交量等其他方面因素的影响。用这种方法执行一系列指令,其平均执行价格就是各执行时间点市场交易价格的加权平均。
相对于TWAP策略而言,成交量加权平均价格(VWAP)交
易策略是指交易者利用市场成交量来试图实现使平均执行
价格等于VWAP基准价格的执行策略。它是最常用的交易策略之一,具有简单易操作等特点,基本思想就是让算法的成交量提交比例与市场成交量比例尽可能匹配,在减少对市场冲击的同时,获得市场成交加权的平均交易价格。因此,VWAP策略一般不直接对交易的冲击成本建模,而是注重日内成交量分布的预测。值得注意的是,如果订单量很大,VWAP策略的冲击成本仍不可忽略。
参与率算法是一种与市场成交量同步的算法,有时它们也被称为目标成交量算法或跟随算法。与VWAP算法一样,参与率算法的表现取决于它们所采用的追踪目标成交量的技术,并且重点目标都是为了最小化市场冲击。在实践中,参与率算法可能会考虑其他的因素,比如流动性等来帮助选择最优的交易时机。
一些参与率算法会包含成交量预测功能。一般来说,这些方法是建立在对历史成交量分布、当前观测到的成交量和数量分析综合考虑基础之上的。另外,也有其他参与率算法允许控制算法追踪目标参与率的进度,甚至可以显示算法能够提前或之后目标参与率的程度。因此可以加快算法的执行度,留下交易的余地,从而避免出现滞后。事实上,这成为目标参与率的一个倾斜机制。对于那些允许对参与率做出更多动态调整的算法来说,还需要附加变量来确定基准和确定参与
率如何根据基准或变量来变化的。
由于参与率算法不会对价格产生依赖性,因此必须对其设定严格的价格限制。参与率算法是追踪所有的成交量,但是,一旦应用了限价指令,它必须忽略掉所有超出这个限制的交易,否则每次当价格回落到限制之内时算法的表现就会差强人意。
成本驱动型算法交易:降低总体交易成本成本驱动型算法的主要目的是降低总体交易成本,除了佣金和价差之外,冲击成本和时机风险等隐性成本都是成本的重要组成部分。虽然将大订单进行分割并将其分散到相当长的一段时间内进行
交易可以最小化市场冲击,然而这样做会把订单暴露在更大的时机风险下,对波动性大的资产尤其如此。因此,成本驱动型算法也需要同时降低时机成本。
过于主动的交易会导致相当大的市场冲击,而过于被动的交易会引起时机风险。为了最小化总的交易成本,我们需要在冲击成本和时机风险这两者之间寻找一个平衡点。为了找到这样一个平衡点需要考虑到投资者的风险厌恶程度。早期的成本驱动型算法是由冲击驱动算法吸收了时机风险等要素
演化而来的,现在成本驱动型算法越来越多地使用复杂市场模型,去预测潜在的交易成本和。
决定指令的最优交易策略,主要的类型包括:执行落差算法代表了纯粹的成本驱动型算法。它试图最小化平均交易价格
和反映投资者决定价格的分配基准之间的落差。适应性落差算法是执行落差的一个
机会导向型的版本,一般来说对价格更加敏感。执行落差指投资者决定交易的价格与实际实现的平均执行价格之间的
差额。投资者决定的价格相当于算法的参考基准,一般用指令到达交易商时的中间价格作为替代。而执行落差算法的目的是实现一个能够最小化缺口的平均执行价格。实现这类算法的关键就是在市场影响和时机风险这两者之间寻找一个
平衡点。通常这意味着算法只能在不产生显著市场冲击的时间范围内执行。
由于实现这个目的的过程很复杂,于是许多情况下人们选择利用更简单的算法去实现。这些算法中有一部分实际上是成交量加权平均价格算法或参与率算法的增强版。它们使用成本模型去决定最优交易周期,这个交易周期应该包含由模型决定的结束时间或最优参与率。
适应性落差是从执行缺口算法中演化而来的新算法。该算法所具有的适应性特点主要体现在对市场价格的适应或反应。价格适应性落差算法实际上是一种更加倾向于机会导向的
算法。
一个主动实值(AIM)策略是指当价格有利时交易更加主动,而当价格变得不利时交易变得被动。对于一个买入指令,有利的价格条件等价于市场价格下降到基准价格以下;而对于卖