算法交易:制胜策略与原理

更多详情

内容简介: 本书即是一本专门论述算法交易策略的著作。本书不只是金融理论领域的学术论述,更融合了近几十年许多实用的金融研究成果和陈博士在实际交易中运用这些研究成果所获得的心得。本书是一本引人入胜、信息量大、覆盖各类交易策略的图书。无论个人投资者,还是机构投资者,都可以借鉴和使用其中的策略。本书中的策略大致可分为均值回归系统和动量系统两大类。书中不仅介绍了如何使用每种类别的交易策略,更解释了各种策略之所以有效的原因。本书始终以简单、线性的交易策略为重心,因为复杂的交易策略容易受到过度拟合及数据窥探的侵害。数学和软件是算法交易的两条腿。本书用到了一定程度的数学知识,使其对各种金融概念的讨论更加清晰准确。另外,书中还加入了很多使用MATLAB代码编程的说明性示例,这些示例可以在本书的网站上下载。

目录: 前言
第1章 回测及自动化的执行系统
1.1 回测的重要性 / 2
1.2 回测过程中普遍存在的误区 / 4
1.3 统计学在回测程序上的应用:假设检验 / 19
1.4 交易策略于何时无须被回测 / 25
1.5 回测系统对相应收益率具有预测功能吗 / 27
1.6 对回测系统以及自动化运行平台的抉择 / 28
本章要点 / 41
第2章 均值回归模式的基本要义
2.1 均值回归与相应的平稳性 / 47
2.2 平稳测试之后的协整 / 56
2.3 均值回归策略的利弊分析 / 66
本章要点 / 68
第3章 均值回归策略的运行机制
3.1 应用价差、价差的对数或相应比率所进行的配对交易 / 70
3.2 布林带线 / 77
3.3 相应的头寸增持功能可行吗 / 79
3.4 动态线性回归相关的卡尔曼过滤法则 / 82
3.5 卡尔曼过滤法则相关的做市商模型 / 89
3.6 数据误差的危险性 / 91
本章要点 / 92
第4章 股票与ETF基金的均值回归模式
4.1 股票配对交易的难点 / 96
4.2 ETF基金的配对交易(或三重ETF基金交易) / 98
4.3 日间均值回归交易策略:缺口买入模式 / 101
4.4 ETF基金与成分股之间的套利模式 / 105
4.5 跨行业的均值回归交易策略:线性多-空模式 / 111
本章要点 / 115
第5章 货币交易与期货交易相关的均值回归的交易策略
5.1 交叉货币对交易 / 117
5.2 货币交易中的展期利息问题 / 122
5.3 期货之跨期套利的交易 / 124
5.4 期货之跨市场(区域)套利 / 137
本章要点 / 141
第6章 日间动量型交易策略
6.1 时间序列型动量交易策略的检验模式 / 144
6.2 时间序列的交易策略 / 147
6.3 从期货与ETF基金之间的套利交易中攫取连续收益 / 152
6.4 横向型动量交易策略 / 156
6.5 动量交易策略的优势与劣势 / 163
本章要点 / 167
第7章 盘中动量型交易策略
7.1 “敞口”交易策略 / 169
7.2 信息驱动的动量交易策略 / 171
7.3 ETF基金的杠杆交易策略 / 177
7.4 高频交易策略 / 179
本章要点 / 184
第8章 风险管理
8.1 最优化的杠杆模式 / 186
8.2 投资组合相关的风险比例之固化模式(CPPI模式) / 198
8.3 止损机制的解析 / 200
8.4 风险指标 / 202
本章要点 / 205
结论
参考文献
作者简介
网站简介

前言: 本书所涉及的是一个适用于散户和机构交易者的、实用型的交易算法及相关策略,但它并不是一个在金融理论方面的学术专著。相反,我希望可以告诉读者的是:我是将一些在过去几十年里最有用的金融研究、见解与相应的思考相结合,而且,实际利用这些理论进行现实的交易工作。
因为在本书当中,交易策略处于一个中心的位置,所以,我们将广泛地涵盖这些交易策略,它们大致可分为:均值回归系列和动量系列。我们将为每一类策略所相关的交易制定相应的技术标准,而同样重要的是,我们要探寻交易策略运行的基本原理。同时,所有研究的重点是简易型的以及线性的交易策略。但是,过度拟合的矫正方法以及数据探测过程当中所生成的偏差,常常会困扰这些具有复杂特质的交易策略。
在均值回归交易策略所相关的系列当中,我们将讨论以多元的统计技术[如扩展版的迪基-富勒检验(Dickey-Fuller检验,即ADF检验)、赫斯特(Hurst)指数、方差比检验、半衰期检验模式等]来检测时间序列的均值回归之属性,以及相关的平稳性;同时,我们还要检测一个由金融工具所构建的投资组合之协整属性[相关检测模式包括协整型ADF检验(即CADF检验)、约翰森(Johansen)检验等]。除了前述这些统计测试模式被机械地应用于时间序列而外,我们还要努力传达一个直观的理解方法,即要认知相关测试的真正用意以及简易数学方程背后的深层含义。
我们将解析一些具有均值回归属性之投资组合所相关的最简单的技术和策略模式[如线性交易模式、布林带线、卡尔曼过滤法则(Kalman filter)等]。另外,我们还要解析在向相关的测试模型和交易策略模型输入相应数据之时,我们应该输入原价,还是价格对数,抑或是价格比率——到底哪种形式是最有效的,特别是我们还要说明:多用途的,且与多种交易策略相关的卡尔曼过滤法则对交易者而言,是不是有效的。在本书当中,时间序列与横截面式的(即横向的)均值回归之交易策略的区别将被讨论。我们将探讨在均值回归交易策略之中,尤其是在处理点差的时候,“缩放技术”和突出错误数据之风险的做法到底有哪些优势与劣势。
均值回归交易策略的案例来自日间和盘中的股票交易模式、交易所交易基金(ETF基金)之间的配对交易和多重交易、ETF基金与成分股票之间的交易、货币之配对交易、期货之跨期与跨市场的套利交易。我们将解释最近几年,由于黑池交易和高频交易的兴起,使得前述这些交易策略在实际的操作过程中面临很大的挑战;我们还将说明某些基本面的要素是如何能够应对一个目前非常有利可图的ETF基金之配对交易所出现的、暂时性的背离情境;同时,我们要说明如何应用同样的要素构建一种改进型的交易策略。在讨论货币交易时,我们很小心地对相关问题进行了相应解析,即我们要解释为什么其收益率的计算方法相对于股票交易商而言,似乎很陌生,而且,在相应的概念当中,诸如循环收益率之类的问题有时可能是非常重要的。我们特别强调要致力于研究:现货收益率与连续循环收益率之间的关系,以及一些从期货价格相关的简易数学模型之中衍生的期货交易策略。本书当中,我们还以图示以及数学的表现形式探讨了现货溢价和期货溢价的概念。另外,相应之章节将介绍货币工具之均值回归的属性,并且,引入期货之中一个非常特殊的形式——波动率期货(即VX期货),同时,解析其形成有利可图之交易策略的基本过程。
在动量交易策略所相关的系列之中,我们首先分析了一些关于时间序列型动量模式的统计检验方法,其中,最为重要的主题是探索股票和期货动量运行模式之四个驱动因子,并且,为从时间序列型和横向型动量运行模式之中提取相应收益而贡献相关的策略。期货的连续循环收益是动量模式的一个驱动因子,但事实证明:在许多不同的情况之下,被迫减价出售资产和回购模式是股票与ETF基金之动量运行模式的主要驱动因子。同时,基于新闻事件、对信息的敏感度、杠杆式ETF基金、订单流量以及高频交易等因素,一些较新型的动量型交易策略被开发出来。最后,我们将探讨动量型交易策略与均值回归型交易策略之利弊,进而在近期金融史上,且于不同的市场机制之下,去发现那些具有完全不同特质的风险收益。
我一直认为:在发表的刊物之中,在许多书籍、杂志和博客当中,我们会很容易地找到所谓的盈利型交易策略,但是,如果要探究相应策略为什么存在缺陷,那就非常困难了,这也许是最终注定的。所以,尽管强调了原型策略的重要性,我们还是要讨论相应算法与交易策略中所常见的缺陷,这在使相关读者深入理解交易策略之本来面目方面,是最有价值的,而且从相应的回测程序来看,前述的这些缺陷会导致实时交易的结果与回测的绩效之间存在很大的差异。即使是精通交易算法的专业人士也会同意这样一种说法,那就是:相同的理论策略既可导致可观的盈利,也会造成糟糕的损失,这取决于策略实施的细节。因此,在本书当中,我会着重检验相应交易策略的回测效果和实施效果;同时,我还要解析如下概念,即数据探测过程中所产生的偏差、与企业退市相关联的相应股票之生存偏差问题、初级市场与综合市场的报价问题、货币报价的地区依赖性、卖空限制所引发的细微差别、连续期货合约的构建问题,以及期货之收盘价格与结算价格的回测问题。另外,我们也突出了一些情况,即在相应的历史事件当中,一旦“策略属性”发生变更,即使是最正确的回测系统也无法预测此策略的未来收益。
我还注意到:我们需要选择合适的软件平台来进行相应之回测和自动化的运行工作,而既定的MATLAB?软件(其中,有我最喜欢的编程语言)也不再是本书的唯一选项;我们还需要根据科学技术的发展现状,对相应编程技巧的每一个层次和许多不同的预算功能,进行相关的调查;特别是,我们已经注意到交易者的“集成开发环境”——可以从具有工业实力的平台(如Deltix平台)到无数开放式的源代码版本(如Tradelink版本)进行依次排列。就像我们解释的那样:从回测系统到现实交易的切换模式是评估相应平台最重要的标准——在这种情况下,时下较热的“复杂事件处理”之概念也将被引入本书所设置的情境之中。
在之前的一本书中,我探讨了风险和资金管理的问题,该书建立在凯利公式(Kelly formula)之上——确定最优化的杠杆比例以及平衡收益与风险的资本配置。在这里,我再次提及风险和资金管理,且仍然是基于凯利公式。但于本书当中,我结合了经过历练的风险管理之实际经验进行分析,其中包括:所谓的“黑天鹅事件”(Black Swan)、投资组合之风险比例固化模式以及止损机制[美国联邦最高法院的法官罗伯特·杰克逊(Robert H. Jackson)已经阐述过凯利公式的应用,他说:“我们要利用一点实践的智慧来调和其纯理性的逻辑。”]。而我们特别关注的情况是:在现实的条件下,当我们不能设定收益率之高斯分布的模式之时,我们需要如何找到最佳的杠杆比例。此外,我们认为,“风险指标体系”可能是全面风险管理计划中一个有用的组成部分。蒙特卡罗模拟法的应用是我先前忽略了的一个普通技术。在这里,我们将演示:根据模拟的数据而不是历史的数据来测试回测系统的统计意义,同时,评估某一特定交易策略所相关的概率分布之尾部风险。
本书是我之前所写的《量化交易》之后续文本。在那本书中,我专注于交易算法的基本技巧,例如如何确定新型交易策略之思路,如何回测一个交易策略,如何对自动化执行系统进行基本的考量,最后,通过凯利公式得出风险的管理模式。但是,一些有用的典型策略被一定程度地忽略了,但这些不是重点,如果你对交易算法完全陌生,那么,《量化交易》则是一本好书,本书则完全是关乎交易策略的。
本书中的所有案例都是用MATLAB之程序代码而构建的,它们都可以从网站www.epchan.com/book2,或者我的网站www.wiley.com/go/algotrading进行下载,而且,读者会发现,相应的账户密码被嵌入在第一个例证当中。不熟悉MATLAB的读者可能要研究量化交易的教程,或在平台mathworks.com之上参看免费的研讨会。此外,MATLAB的统计工具箱也偶尔被使用(所有MATLAB产品都可以在并行计算工具箱MathWorks之上进行免费试用)。
软件和数学是交易算法的两种语言。读者会发现:相较于我之前的一本书而言,本书涉及更多的数学知识。这是因为我希望在讨论金融市场的概念时,可以注入更多的精度;还有一个原因是我相信用简单的数学模型比通常使用的数据挖掘方法更加具有优势;也就是说,我们不是把许多技术指标或规则放在一个价格系列之中,并观察哪个指标或规则更加有利可图。如此,在数据探测的过程中,容易出现相应的偏差,而我们所试图实现的是凭借一个简单的数学模型去提取一个价格系列的基本属性,同时利用这个模型来计算我们的财务收益。然而,在股票、期货和货币交易中,其所需的数学水平要远低于衍生品交易中所需的高度,任何掌握初级微积分、线性代数和统计的人士都能够在此基础上进行讨论而毫无障碍。如果你发现方程太混乱,那你可以直接去参看相应的案例,并参看其具体操作的软件代码。
虽然在机构型投资管理行业工作多年,但在写第一本书的时候,我还是一个独立的交易者。在随后的几年里,我已经开始管理两个对冲基金。有时我与一个合作伙伴共同工作,有时我自己单独操作。我在2007年夏的“量子基金”崩溃之时得以幸免,并且在2008年金融危机、2010年金融市场闪电崩盘、2011年美国联邦债务评级下调以及2011~2012年欧洲债务危机之中,我都能够存活下来,因此,我比以前更有信心。我可以认定:尽管我确实在过渡期间学到更多的金融知识,然而,初始开发的交易算法是合理的。例如,我发现无论市场预期多么险恶,亲手推翻某个模型始终都不是一个好主意;同时,保守的交易模式始终比过度放债要好,尤其是在管理他人资产的时候;还有,交易策略的表现形式往往具有均值回归的特质;另外,我们的过度自信对相关交易策略而言是最大的危险;最后,在运行错误交易模式和接近灾难的时候,一个人所得到的教训较之于从成功交易所获取的经验而言,更加值得珍惜,而我就是想在本书当中,记录过去四年以来的诸多经验教训。
我的基金管理经验并没有改变本书中的重点,即本书之要旨是为散户型交易者服务。如果具备足够的决心且进行一些修改和完善,所有的策略都可以由一个独立的交易者来实现,此种类型的交易者不需要在券商所在公司开立一个七位数的账户,也不需要五位数字的技术成本。我给这些交易者的信息仍然是一样的,即一个资源有限和计算能力不强的人仍然可以按照其自定的游戏规则去挑战强大的行业内部人员。
写作动机
著书的交易人士需要回答其他交易者一个基本的问题:为什么他们会写这样一本书呢?更具体地说,如果所描述的交易策略是正确的,那么,为什么相关交易者会宣传这些策略呢?而这种做法肯定会减少相关策略应用方的未来收益。
我首先回答第二个问题。我所描述的诸多策略对于专业交易者来说是相当熟悉的,所以我对它们如数家珍;其他有如此高能力的交易者在另外一些人运行这些策略的时候,其盈利能力不会受到严重影响。但是,也有一些交易策略具有相反的特质:它们的盈利能力较低,或者,有其他的局限性以至于没有吸引力,而且,我不再认为此类策略适用于我自己所构建的基金式的投资组合,但是,它们仍可以胜任个体交易者的账户。最后,对于我经常描述的策略而言:其在第一眼看上去是非常有前途的,但是,可能包含各种缺陷,对此,我没有进行充分的研究和精化,例如:在我的例证当中,相应测试代码就没有包含相关的交易成本,而这一点恰恰是回测系统当中一个有意义的关键值;还有,我经常使用样本内数据以优化参数、测试性能,如此,则肯定会导致回测的结果不准。在例证当中,所有前述这些缺陷都会使我犯错,因此,简化的版本则更具说明性和可读性,这些版本可以被称为“原型策略”,它们并不用于交易之中,但以其阐述常见的交易算法与技术是有用的;同时,它们也可以为读者进一步完善和改进其自身的交易水平提供可用的思路。
那么,我们的基本动机是什么呢?它是这样的:在收集信息方面,大众的知识往往比其他任何方法都有效,因此,本书当中所讨论的策略以及我的第一本书都非常期待广大读者的反馈意见。
资料来源及致谢
本书所选用的大部分素材都不是我发明的。除了传统的、常用的资料[如书籍、学术期刊、杂志、博客、在线交易论坛(可以从平台elitetrader.com与nuclearphynance.com处获取)]之外,现在还出现了一种新型的在线专家网络,如平台hightable.com和平台quora.com——某些具体问题可以被“发帖”,然后,由真正的行业专家来做出回答。我个人就曾受益于这些资源,并且,我由衷地感谢各位在线的专家,他们可以从意想不到的深度和细节来回答我的问题。
在我之前的著作和博客(http://epchan.blogspot.com)里面,我有幸从许多有见地的读者那里收到大量的反馈信息,而这些人的意见都被充实到我的知识库当中。
在许多机构分析师和交易员出席的新加坡和伦敦的定期研讨会中,就交易算法与规则的各种主题,我曾进行过相应的讲解与授课。与会人士给我提供了非常有价值的见解,而这些见解可能不会轻易地出现在任何公共论坛之上;同时,在加拿大、中国内地、中国香港、印度、南非和美国的针对客户端的研讨会之上,相应的主题也为我提供了广阔的国际视野,而且也增强了其自身的被关注度。
即使是作为一个独立的交易者和基金经理,我也很荣幸地与许多具有专业知识的金融人士进行合作,其中的一些合作是短期的和非正式的,而其他合作则推动了基金管理公司的正式成型;特别是,我要感谢史蒂夫·哈尔佩恩和罗杰·亨特,我和他们曾经进行过广泛的讨论,并且共同策划过无数的合作项目。
我很感激布莱恩·唐宁,他为我介绍了一些在第1章中所提到的交易技术;同时,我还要感谢罗斯里奥·英格吉拉,他向我展示了他的外汇交易平台(FXOne)。
最后,非常感谢我的编辑比尔·法隆和John & Wiley出版社的各位同仁,他们一直都非常热心地支持我书中的想法;同时,还要感谢策划编辑梅格·弗里伯恩,她的建议绝对是有价值的,并且,我要感谢编辑史蒂文·基里兹,他指导完成了本书的最终格式。