目前,交易所的大部分操作都是使用特殊的机器人进行的,其中嵌入了各种算法。这种策略称为算法交易。这是近几十年来的一种趋势,它在许多方面改变了市场。
什么是算法交易?
算法交易的主要形式是高频交易。关键是要立即完成交易。换句话说,这种类型利用了它的主要优势——速度。算法交易有两个主要定义:
- 算法交易。在给定算法中无需交易者即可进行交易的自动系统。该系统是通过市场自动分析和开仓产生直接利润所必需的。该算法也称为“交易机器人”或“顾问”。
- 算法交易。在市场上执行大订单,当它们被自动分成部分并按照指定的规则逐渐打开时。该系统用于方便交易者进行交易时的体力劳动。例如,如果您有一个购买 10 万股的任务,您需要同时开仓 1-3 股,而不会在订单 Feed 中引起注意。
简化的算法交易是交易者日常操作的自动化,以减少分析股票信息、计算数学模型和执行交易所需的时间。该系统还消除了人为因素在市场运作中的作用(情绪、投机、“交易者的直觉”),有时甚至会否定最有希望的策略的盈利能力。
算法交易的出现史
1971 年被认为是算法交易的起点(它与第一个自动交易系统纳斯达克同时出现)。1998年,美国证券委员会(SEC)正式授权使用电子交易平台。然后真正的高科技竞争开始了。以下值得一提的算法交易发展中的重要时刻:
- 2000 年代初。自动交易在短短几秒钟内完成。机器人的市场份额不到10%。
- 2009 年。应用程序的执行速度降低了数倍,达到了几毫秒。销售助理的份额急剧上升至 60%。
- 2012 年及以后。交易所事件的不可预测性导致大多数软件的刚性算法出现大量错误。这导致自动交易量减少到总量的 50%。人工智能技术正在开发和引入。
高频交易在今天仍然很重要。许多日常操作(例如市场扩容)都是自动执行的,大大减轻了交易者的负担。然而,机器还没有能够完全取代活的智慧和发达的人类直觉。当证券交易所的波动性因重大国际经济新闻的发布而大幅上升时,尤其如此。在此期间,强烈建议不要依赖机器人。
算法交易的优缺点
算法的优点都是人工交易的缺点。人很容易受情绪影响,但机器人不会。机器人将严格按照算法进行交易。如果这笔交易将来可以盈利,机器人就会把它带给你。而且,一个人也远不是总能全神贯注于自己的行为,时不时需要休息一下。机器人没有这样的缺点。但他们有自己的,其中包括:
- 由于严格遵守算法,机器人无法适应不断变化的市场条件;
- 算法交易本身复杂,准备工作要求高;
- 引入算法的错误,机器人本身无法检测到(当然这已经是人为因素了,但是一个人可以检测并纠正他的错误,但机器人还不能做到这一点)。
您不应将交易机器人视为通过交易赚钱的唯一可能方式,因为在过去 30 年中,自动交易和手动交易的盈利能力几乎相同。
算法交易的本质
算法交易者(也称为量子交易者)仅使用价格落在所需范围内的概率理论。计算基于之前的价格序列或几种金融工具。规则会随着市场行为的变化而变化。
算法交易者一直在寻找市场效率低下、历史上重复出现的报价模式以及计算未来重复报价的能力。因此,算法交易的本质在于选择持仓和机器人组的规则。选择可以是:
- 手册– 由研究人员根据数学和物理模型进行实施;
- 自动– 在程序中大量枚举规则和测试是必要的;
- 遗传– 这里的规则是由具有人工智能元素的程序开发的。
关于算法交易的其他想法和乌托邦都是虚构的。即使是机器人也无法100%保证“预测”未来。市场不能效率低下,以至于有一套规则适用于随时随地的机器人。使用算法的大型投资公司(例如,Renessaince Technology、Citadel、Virtu)拥有数百组(家族)的交易机器人,涵盖数千种工具。正是这种算法多样化的方法为他们带来了日常利润。
算法类型
算法是一组旨在执行特定任务的清晰指令。在金融市场中,用户的算法是由计算机执行的。要创建一组规则,将使用有关未来交易的价格、数量和执行时间的数据。股票和外汇市场的算法交易分为四种主要类型:
- 统计。该方法基于使用历史时间序列的统计分析来识别交易机会。
- 汽车。该策略的目的是制定规则,允许市场参与者降低交易风险。
- 管理人员。此方法旨在执行与打开和关闭交易订单相关的特定任务。
- 直的。该技术旨在最大限度地提高市场准入速度,并降低进入和连接算法交易者到交易终端的成本。
高频算法交易可以区分为机械化交易的一个单独区域。该类别的主要特点是订单创建频率高:交易以毫秒为单位执行。这种方法可以提供很大的好处,但它也带有一定的风险。
自动交易:机器人和顾问
1997 年,分析师 Tushar Chand 在其著作 Beyond Technical Analysis(原名 Beyond Technical Analysis)中首次描述了机械交易系统(MTS)。该系统称为交易机器人或货币顾问。这些是监控市场、发出交易订单并控制这些订单的执行的软件模块。有两种类型的机器人交易程序:
- 自动化的“从”和“到”——他们能够对交易做出独立的独立决策;
- 向交易者发出手动开启交易的信号,他们自己不会发送订单。
在算法交易的情况下,只考虑第一种机器人或顾问,其“超级任务”是执行那些手动交易时无法实现的策略。
Renaissance Institutiona Equlties Fund 是最大的使用算法交易的私募基金。它由Renaissance Technologies LLC 在美国开设,该公司由James Harris Simons 于1982 年创立。《金融时报》后来称西蒙斯为“最聪明的亿万富翁”。
交易机器人是如何创建的?
用于股票市场算法交易的机器人是专门的计算机程序。首先,它们的发展始于对机器人将执行的所有任务(包括策略)的清晰计划的出现。交易员程序员面临的挑战是创建一个考虑到他的知识和个人偏好的算法。当然,需要提前清楚地了解自动化交易的系统的所有细微差别。因此,不建议新手交易者自行创建TC算法。对于交易机器人的技术实现,您至少需要了解一种编程语言。要编写程序,请使用 mql4、Python、C#、C++、Java、R、MathLab。
编程能力为交易者带来许多好处:
- 创建数据库的能力;
- 发射和测试系统;
- 分析高频策略;
- 快速修复错误。
每种语言都有许多非常有用的开源库和项目。最大的算法交易项目之一是用 C++ 创建的 QuantLib。如果需要直接连接Currenex、LMAX、Integral或其他流动性提供商使用高频算法,则必须掌握Java连接API的编写技巧。在没有编程技能的情况下,可以使用特殊的算法交易程序来创建简单的机械交易系统。此类平台的示例:
- 实验室;
- 健康实验室;
- 元交易者;
- S#.Studio;
- 多图;
- 贸易站。
算法股市交易
股票和衍生品市场为自动化系统提供了充足的机会,但算法交易在大型基金中比在私人投资者中更为普遍。股票市场有几种类型的算法交易:
- 基于技术分析的系统。旨在利用市场低效率和多个指标来识别趋势和市场动向。通常,该策略旨在从经典技术分析方法中获利。
- 配对和篮球交易。系统使用两个或多个工具的比率(其中一个是“引导”,即首先发生变化,然后拉动第 2 个和后续工具),百分比相对较高,但不等于 1。如果仪器偏离给定路线,他可能会回到他的团队。通过跟踪这种偏差,该算法可以为所有者进行交易并产生利润。
- 做市。这是另一个旨在维持市场流动性的策略。以便私人交易者或对冲基金可以随时买卖交易工具。做市商甚至可以利用他们的利润来满足对各种工具的需求并从交易所中获利。但这并不妨碍使用基于快速流量和市场数据的特殊策略。
- 前行。在这样一个系统的框架内,使用工具来分析交易量和识别大订单。该算法考虑到大订单将保持价格并导致相反的交易出现在相反的方向。由于在订单簿和提要中分析市场数据的速度,他们将面临波动,试图超越其他参与者,并在填写非常大的订单时接受很小的波动。
- 仲裁。这是一种使用金融工具的交易,它们之间的相关性接近于一。通常,此类工具的偏差最小。系统监控关联工具的价格变化并进行套利交易以平衡价格。例:取同一家公司2种不同类型的股票,同步变化,相关性100%。或者持有相同的股份,但在不同的市场。在一个交易所,它会比另一个更早地上升/下降。在 1 日“抓住”了这一刻之后,您可以在 2 日开启交易。
- 波动性交易。这是最困难的交易类型,基于购买各种类型的期权并期望特定工具的波动性增加。这种算法交易需要大量的计算能力和专家团队。在这里,最优秀的人才会分析各种工具,预测哪些工具可能会增加波动性。他们将分析机制植入机器人中,并在适当的时候购买这些仪器的期权。
算法交易风险
近年来,算法交易的影响力显着增长。自然地,新的交易方法带有某些先前未曾预料到的风险。高频交易尤其充满需要考虑的风险。
使用算法时最危险的事情:
- 价格操纵。您可以自定义算法以直接影响单个仪器。这里的后果可能非常危险。 2013年,在全球BATS市场交易的第一天,公司证券价值就出现了真正的下跌。在短短 10 秒内,价格从 15 美元跌至几美分。原因是故意编程以降低股票价格的机器人的活动。该政策可能会误导其他参与者并极大地扭曲交易所的情况。
- 营运资金流出。如果市场处于压力之下,使用机器人的参与者会暂停交易。由于大部分订单来自汽车顾问,因此全球外流会立即使所有报价崩溃。这种交换“摇摆”的后果可能非常严重。而且,流动性的外流正在引起广泛的恐慌,这将加剧困难局面。
- 波动性急剧增加。有时,全球所有市场的资产价值都会出现不必要的波动。这可能是价格的急剧上涨或灾难性的下跌。这种情况称为闪崩。波动的原因往往是高频机器人的行为,因为它们在市场参与者总数中的份额非常大。
- 增加的成本。大量的机械顾问需要不断提高自己的技术能力。因此,关税政策正在发生变化,这当然对贸易商不利。
- 操作风险。大量同时传入的订单会使容量巨大的服务器过载。因此,有时在活跃交易的高峰期,系统停止运行,所有资金流动暂停,参与者蒙受巨大损失。
- 市场的可预测性水平下降。机器人对交易价格有显着影响。这会降低预测的准确性并破坏基础分析的基础。此外,汽车帮手抢夺传统贸易商的好价格。
机器人正在逐渐抹黑普通市场参与者,这导致未来完全拒绝人工操作。这种情况将加强算法系统的地位,这将导致与之相关的风险增加。
算法外汇交易
算法外汇交易的增长主要是由于流程的自动化和使用软件算法进行外汇交易的时间减少。这也降低了运营成本。外汇主要使用基于技术分析方法的机器人。并且由于最常见的终端是 MetaTrader 平台,平台开发者提供的 MQL 编程语言已成为编写机器人最常用的方法。
量化交易
量化交易是交易的方向,其目的是形成一个模型,描述各种金融资产的动态,让您做出准确的预测。量化交易者,也称为量子交易者,通常是他们领域内受过高等教育的专家:经济学家、数学家、程序员。要成为一名量子交易者,您至少必须了解数理统计和计量经济学的基础知识。
高频算法交易/HFT交易
这是最常见的自动交易形式。这种方法的一个特点是可以在各种工具中高速进行交易,其中创建/关闭头寸的周期在一秒内完成。
HFT 交易利用了计算机相对于人类的主要优势——超高速。
相信这个想法的作者是Stephen Sonson,他与D. Whitcomb 和D. Hawkes 于1989 年创建了世界上第一个自动交易台(Automatic Trading Desk)。尽管技术的正式发展始于 1998 年,当时美国交易所批准使用电子平台。
高频交易的基本原理
该交易基于以下鲸鱼:
- 高科技系统的使用使仓位的执行周期保持在 1-3 毫秒的水平;
- 从价格和利润的微小变化中获得的利润;
- 执行大规模高速交易并在最低实际水平上获利,有时不到一分钱(HFT 的潜力比传统策略高出许多倍);
- 使用所有类型的仲裁交易;
- 交易严格在交易日进行,每期交易量可达数万。
高频交易策略
在这里可以使用任何算法交易策略,但同时以人类无法达到的速度进行交易。例如,以下是一些 HFT 策略:
- 识别具有高流动性的池。该技术旨在通过打开小型测试交易来检测隐藏(“暗”)或批量订单。目标是对抗体积池产生的强烈运动。
- 建立电子市场。在增加市场流动性的过程中,通过价差内的交易实现利润。通常,在交易所交易时,点差会扩大。如果做市商没有可以保持平衡的客户,那么高频交易者必须使用自己的资金来关闭工具的供需。交易所和 ECN 将提供运营费用折扣作为奖励。
- 前行。这个名字翻译过来就是“跑在前面”。该策略基于对当前买卖订单、资产流动性和平均持仓量的分析。这种方法的本质是检测大订单,并以稍高的价格放置自己的小订单。订单执行后,该算法利用另一个大订单周围报价波动的高概率,以放置另一个更高的订单。
- 延期仲裁。该策略通过与服务器的地理接近性或获取与主要站点的昂贵的直接连接来主动访问股票数据。它经常被依赖外汇监管机构的交易者使用。
- 统计仲裁。这种高频交易方法基于识别平台或相应资产形式(货币对及其现货交易对手、衍生品和股票的期货)之间的各种工具的相关性。这些交易通常由私人银行、投资基金和其他持牌交易商进行。
高频操作以微量进行,被大量交易抵消。在这种情况下,立即记录损益。
算法交易者程序审查
有一小部分软件用于算法交易和机器人编程:
- 实验室。俄制C#软件。与大多数外汇和股票经纪人兼容。多亏了一个特殊的框图,它有一个相当简单易学的界面。您可以免费使用该程序来测试和优化系统,但对于真正的交易,您需要购买订阅。
- 财富实验室。用于在 C# 中开发算法的程序。在它的帮助下,您可以使用财富脚本库来编写算法交易软件,大大简化了编码过程。您还可以将来自不同来源的报价连接到程序。除了回测,真实的交易也可以在金融市场上进行。
- R工作室。更高级的量子程序(不适合初学者)。该软件结合了多种语言,其中一种使用专用的 R 语言进行数据和时间序列处理。算法和接口在这里创建,测试进行,优化,统计和其他数据可以得到。R Studio 是免费的,但非常认真。该程序使用各种内置库、测试器、模型等。
算法交易策略
Algotrading 有以下策略:
- TWAP。该算法定期以最佳买入价或卖出价开立订单。
- 执行策略。 该算法需要以加权平均价格大量购买资产,通常由大型参与者(对冲基金和经纪人)使用。
- VWAP。该算法用于在一定时间内在给定数量的相等部分开仓,价格不应高于启动时的加权平均价格。
- 数据挖掘。它是为新算法寻找新模式。在测试开始之前,超过 75% 的挖掘日期用于数据收集。搜索结果只取决于专业和详细的方法。搜索本身是使用各种算法手动配置的。
- 冰山。用于下单,总数量不超过参数中指定的数量。在许多交易所,该算法内置于系统的核心中,它允许您在订单参数中指定交易量。
- 投机策略。这是交易者寻求最佳交易价格以产生后续利润的标准模型。
关于算法交易的培训和书籍
你不会在学校圈子里得到那种知识。这是一个非常狭窄和特定的区域。在这里很难挑出真正可靠的研究,但总而言之,从事算法交易需要以下关键知识:
- 数学和经济模型;
- 编程语言 – Python、С++、MQL4(用于外汇);
- 有关交易合约和工具(期权、期货等)特性的信息。
您将不得不主要靠自己掌握这个方向。要阅读有关此主题的教育文献,您可以考虑以下书籍:
- 量子交易和算法交易 – Ernest Chen;
- 算法交易和直接交换访问 – Barry Johnsen;
- 《金融数学的方法与算法》——Luu Yu-Dau;
- “黑匣子内部” – Rishi K. Narang;
- 交易和交易所:从业者的市场微观结构 – Larry Harris。
最有成效的学习过程是从学习股票交易和技术分析的基础知识开始,然后购买有关算法交易的书籍。还应该指出的是,大多数专业出版物只能找到英文版本。
除了有偏见的书籍外,阅读任何股票文献也很有用。
关于算法交易的著名神话
许多人认为使用机器人交易只能盈利,交易者根本不需要做任何事情。当然不是。始终需要对机器人进行监控、优化和控制,以免发生错误和故障。有些人认为机器人不能赚钱。这些人很可能以前遇到过骗子出售的用于货币交易的低质量机器人。外汇交易中有优质的机器人可以赚钱。但是没有人会卖掉它们,因为它们已经带来了丰厚的收益。在证券交易所交易具有巨大的盈利潜力。算法交易是投资领域的真正突破。机器人几乎承担了过去需要很长时间才能完成的所有日常任务。