金融科技与交易
基金、自营交易部门和经纪商的算法执行:用经纪商的算法、买 EMS,还是自建
如果你只通过一两家经纪商交易,它们的算法通常就够了。一旦要把订单分给好几家,就买一套执行管理系统(EMS)。只有当你的执行方式本身就是赚钱方式的一部分时,才自建。本文还讲了如何衡量执行成本,以及欧盟和美国的规则有哪些要求。
作者:amBrain阅读需 11 分钟
本文内容
算法执行是指把一笔大订单交给软件,由软件分成较小的几块送入市场,让这笔交易对价格的冲击更小。基金、自营交易部门和经纪机构可以使用自己经纪商提供的算法、购买执行管理系统(EMS),或者自建执行层。哪种合适,取决于你使用多少家经纪商(EMS 可以在同一个界面里接通其中许多家),也取决于你能否衡量结果。在欧盟,以算法方式交易、并购买或外包算法的投资公司,仍须对这些算法负责。
如果你只通过一两家经纪商交易,并且常见的基准适合你,那么经纪商的算法就够用。一旦要把订单分给好几家经纪商,需要一个界面和一种统一的比较办法,就买 EMS。只有当你的执行方式本身就是赚钱方式的一部分、你测试过的产品都做不到,而且你有人手来测试和监控时,才自建这一层。不管走哪条路,都先从衡量你的执行成本开始,因为没有数字,就无法判断某项改变有没有帮助。
执行算法是做什么的?
一笔大单整块发出,会让整个市场看到你的意图,还可能把价格推向对你不利的一边。执行算法会把这笔订单(称为母单)拆成更小的子单,并决定每一笔何时发出。常见的几种算法,区别在于它们力求贴近的价格:
- VWAP,即成交量加权平均价。订单跟随市场的成交量,所以市场成交越多,订单成交也越多。Interactive Brokers 把它的 VWAP 算法描述为“旨在达到或跑赢 VWAP 价格,从你提交订单的时刻起计算”。这种类型适合你愿意在一整天里分散执行的大单。
- TWAP,即时间加权平均价。订单在设定的时间段内,不管成交量如何变化,都以均匀的节奏分块发出。Trading Technologies 把它的 TT TWAP 描述为“把订单拆成较小的切片,并有计划地逐步提交到市场”。
- 实施差额(Implementation shortfall)。目标是贴近你决定交易那一刻的价格。等待有价格走远的风险,所以算法会在这种风险与加快交易的成本之间权衡。Interactive Brokers 提供一个近似的算法,叫 Arrival Price。它以“订单提交时的买卖报价中间价”为目标,这个时间可能晚于你的决定,并带有“由用户设定的市场风险水平,它决定执行的节奏”。如果在等待期间价格变动造成的损失比快速交易的成本更大,就选它。
EMS 与 OMS 有什么不同?
订单管理系统(OMS)保存每笔订单要求了什么、结果如何的正式记录。EMS 是交易员在市场中操作这笔订单的工具,通常是把订单发给经纪商的算法,或直接发给交易场所。
供应商用这些名称比较随意,所以请以产品页面列出的内容为准。FlexTrade 把 FlexTRADER 称为“不偏向任何经纪商的、真正多资产的执行管理系统”。Trading Technologies 的 TT OMS 页面列出了“经纪商原生算法、合成订单,以及跨订单大小、账户、产品和交易场所的基于规则的路由”。尽管这个产品叫 OMS,这仍然是执行方面的工作。
我们是不是直接用经纪商的算法就行?
这里需要你自己运行的东西很少。你通过现有的连接发出母单并选择一种算法类型,算法以及与各交易场所的连接由经纪商来维护。
你通常看不到经纪商算法的内部,而子单你也只能看到经纪商报告的那部分。请问经纪商自己的交易场所或交易台能否成为这些订单的对手方,以及这一点如何向你披露。
比较经纪商也不容易,因为每家经纪商都在自己的报告里给自己的工作打分,两家经纪商的报告做法也可能不同。要想公平比较,你需要自己的记录或一个中立的工具。
买 EMS 值得吗?
EMS 把许多家经纪商的算法放在同一个界面后面,并汇集成交回报。FlexTrade 称交易员可以通过它的网络“连接 300 多家全球经纪商”,其外汇部分提供“100 多种经纪商算法”。Virtu 把它的 Triton EMS 描述为“一个全球性的、不偏向任何经纪商的多资产类别平台”。这些都是供应商自己的说法,请拿你在用的经纪商去验证。
这要向供应商付费,而你需要的功能何时推出,要看供应商何时决定去做。里面各家经纪商的算法依然是封闭的。有些供应商还加入了自己的算法:FlexTrade 为其 EMS 描述了“我们一系列灵活的、具备全球能力的交易算法”,所以要问清楚谁能看到并修改这套逻辑。EMS 也处在你订单的路径上,所以要问它出故障时,正在执行的订单会怎样。
我们什么时候该自建执行层?
当执行是你竞争优势的一部分,而你测试过的产品满足不了需求时,自建才合理。你通常会看到至少下面一种迹象:
- 你的策略需要与自身信号绑定的执行逻辑,而把这套逻辑交给经纪商就会暴露它
- 你的交易量大到每笔订单上一点点经过衡量的节省,就足以养活一支团队
- 你需要把多个品种或交易场所当作一个仓位来处理,而你测试过的工具只能逐个处理
- 你的交易成本分析显示出一项你能说得出名目的成本,而经纪商的算法没有消除它
在决定全面自建之前,先看看折中的办法。Trading Technologies 称,其 ADL 工具可以让你“无需编写一行代码即可设计、测试和部署自定义算法”。这样你的逻辑运行在另一家公司的平台上,既缩短了工期,也让你与该平台绑在一起。
如果你还不清楚执行让你付出了多少成本,就先不要自建。否则你无法判断新的执行层是否比它所取代的算法做得更好。
还得有人来运行它。执行层需要连接每一个交易场所或经纪商、行情数据、交易前风控检查,以及在交易时段回应告警的人员。对以算法方式交易的欧盟投资公司来说,它还带来下文所述的测试和审查义务。如果没有这些人,也没有招聘计划,就继续用经纪商或 EMS。
每条路线下我们各自拥有什么?切换有多难?
- 你的经纪商保留着子单的副本,所以请要求对方以你能存档的形式提供。使用 EMS 时,要以书面形式确认你可以导出每一笔订单和成交。
- 经纪商或 EMS 供应商拥有自己的执行代码。如果你自建,只要合同写明,并列出开发方保留的内容,代码就可以归你所有。
- 换用新的经纪商或 EMS,意味着新的连接和新的测试。欧盟证券监管机构欧洲证券和市场管理局(ESMA)的一份简报,把“更换第三方服务商或数据源”列为适合重新测试的变更之一。
我们如何衡量执行质量?
交易成本分析(TCA)把你实际拿到的价格与一个参考价格做比较。答案取决于你用哪个参考价格,所以要在看结果之前先选定。
严格的参照价是你做出决定时的价格,或订单到达交易台时的价格,这两个价格可能不同。FlexTrade 2015 年的一篇文章采用交易台价格:“实施差额衡量的是平均成交价与订单到达交易台时的价格之间的差异。”对大单来说,VWAP 是较弱的检验标准,因为这笔订单本身就构成了它所对照的成交量的一部分。要让这些数字有意义:
- 记录你自己的时间戳:决策时刻、订单到达交易台、到达经纪商,以及每一笔成交
- 统计没有成交的部分,因为只成交了一半的订单看上去可能很便宜,而剩下的仓位已经朝着对你不利的方向走远
- 按品种和订单大小做同类对比,并按既定计划在各经纪商之间分配订单,让每家拿到的订单具有可比性
- 对每家经纪商使用同一种计算方法,并且每一组都要等到订单足够多,再下结论
供应商出售这方面的工具。FlexTrade 列出了“FlexTCA,用于实时和历史绩效衡量”,以及一款 FlexAlgoWheel 工具,它利用“历史和实时的 TCA 数据”把常规订单自动化。这些工具无一例外仍然依赖你自己记录的时间戳。
当你替客户执行订单时,监管机构期望这样的检查。MiFID II 是欧盟针对投资公司的主要法律,其第 27 条要求公司“在执行订单时,采取一切足够措施以取得可能的最佳结果”。它还要求公司“监控其订单执行安排和执行政策的有效性”。
在美国,FINRA 是券商的自律监管机构。FINRA 规则 5310 适用于自动路由客户订单、或将订单内部化而不逐笔审核的会员。这些会员必须“定期且严格地审查其客户订单的执行质量”。规则还补充说:“会员至少必须按季度进行此类审查”。
欧盟对算法交易有哪些要求?
欧盟的算法交易适用 MiFID II 第 17 条,ESMA 将其收录在在线规则手册中。从事这类交易的投资公司“应当建立有效的系统和风险控制措施”,并且必须确保“其系统经过充分测试并受到适当监控”。它还必须“将此通知其母国成员国的主管机构以及交易场所”。
第 1(5) 条把第 17(1) 至 (6) 条的要求扩展到无需获得授权的“受监管市场和多边交易设施的成员或参与者”。基金及其管理人依据第 2(1)(i) 条另外豁免于 MiFID II,所以基金应先核查这些义务是否适用于自己。如果 MiFID II 之外的客户通过经纪商的直接电子接入到达某个交易场所,ESMA 称“DEA 服务商对其客户的合规负全部责任”。
第 4(1)(39) 条中的定义范围很宽,涵盖“由计算机算法自动确定订单的各项参数”的交易。它把“仅用于把订单路由到一个或多个交易场所的任何系统”排除在外,所以只路由订单、不设定任何交易参数的工具不在定义之内。ESMA 的非约束性《欧盟算法交易监管简报》(ESMA74-1505669079-10311,2026 年 2 月 26 日)把“执行前拆分订单”列为自动化后即符合条件的活动之一。它说,获准以自有账户交易的投资公司“极有可能在从事算法交易”。ESMA 还补充说,当参数是由算法设定时,交易员对每笔订单的签字确认并不能让公司脱离适用范围。
细节在欧盟委员会授权条例 (EU) 2017/589 中,即 RTS 6。ESMA 称它“认识到在适用测试规定时需要遵循相称原则”,所以测试的深度因公司而异。在你选择路线时,下面这些部分最重要:
- 测试。在任何“部署或重大更新”之前,第 5 条要求“开发和测试此类系统、算法或策略的明确界定的方法”。第 6 条增加了一致性测试,即检查你的系统能否与每个交易场所的系统正确配合,包括“首次通过赞助接入安排连接该交易场所时”,以及通过直接市场接入服务商到达交易场所时,对照“直接市场接入服务商的系统”。
- 紧急停止功能。根据第 12 条,公司“应当能够作为紧急措施,立即撤销其任何或全部未成交订单”。这必须在“投资公司所连接的任何或全部交易场所”都能做到。公司还必须能说明每笔订单由哪个算法发出,以及由谁负责。
- 年度自我评估。第 9 条规定,公司“应每年进行一次自我评估和验证流程”并出具验证报告,报告由其风险管理职能起草,经高级管理层批准。ESMA 期望这项工作“逐条进行”。
- 压力测试。ESMA 的简报引用第 10 条,称公司应能证明系统“能够处理投资公司此前 6 个月内达到的最高交易量的两倍”。
- 对整笔订单的限制。ESMA 表示,只对子单设置的限制达不到它的期望,公司应当“对母单和子单同时设置数量和/或金额限制”。
本文引用的是 legislation.gov.uk 上已通过的 RTS 6 文本。所有监管机构和供应商页面均于 2026 年 11 月 9 日打开查阅。欧盟和美国以外的国家有各自的规则。
算法属于别人时,谁来负责?
买软件并不会把责任一并交出去。RTS 6 第 4 条规定,投资公司在“将算法交易活动中使用的软件或硬件外包或采购”时,“仍须对其在本条例下的义务承担全部责任”。ESMA 的简报说,使用第三方算法或执行工具时,公司“仍须对遵守 MiFID II 和 RTS 6 承担全部且唯一的责任”。
发给经纪商算法的订单可能是另一种情况。ESMA 没有点名这种架构。它最接近的例子是由另一家市场参与者运行的算法发起的订单,比如一家公司生成订单、另一家公司执行:“就 MiFID II 而言,执行订单的实体被视为从事算法交易,因而须负责确保遵守 RTS 6”。如果两家公司都从事算法交易,“两家公司都仍须遵守 RTS 6 规定的义务”。如果两者中只有一家是投资公司,ESMA 表示“该实体应被视为负责遵守 RTS 6”。你的架构落在这条线的哪一边,要问你的律师。
对于外包的算法或工具,包括由服务商替你运行的 EMS,请对照 ESMA 的期望检查合同。它要求的安排要让公司拥有“在必要时无条件地监控、暂停或终止算法交易的能力,且不依赖第三方服务商的同意或介入”。如果只有供应商的客服能停掉你的订单,这项检验就很难通过。
美国对算法交易有哪些要求?
SEC 规则 15c3-5 适用于拥有市场准入的券商,也适用于向客户或其他任何人提供准入的券商。这样的公司必须“建立、记录并维护一套风险管理控制体系”,其中包括“通过拒绝超出适当价格或数量参数的订单,防止错误订单进入”这样的管控。这些管控“应处于该经纪商或交易商的直接且专属的控制之下”,不过它可以通过书面合同、并在尽职调查之后,把具体的监管管控交给本身就是注册券商的客户,但责任仍由它承担。公司的首席执行官或同等职级的高管每年都必须对这些管控作出证明。
通过券商交易、自身并非券商的基金不在这些条文的字面范围内,不过它的订单仍要经过该券商的管控。拥有市场准入、并运行自己执行层的券商,则自己承担这项义务。该规则涵盖的是“在交易所或另类交易系统上交易证券”的准入,所以期货和其他产品要另行核查。
FINRA 于 2015 年 3 月发布了第 15-09 号监管通知。该通知就算法策略的“有效的监督和控制做法”向会员公司提供指引,涵盖风险评估、代码开发、测试、交易系统和合规。其有效做法包括一套质量保证流程,其中“测试独立于代码开发进行”,以及“公司可以迅速停用算法的机制”。
每条路线要花多少钱?
本文没有引用任何价格,为写这篇文章而阅读的 FlexTrade、Virtu 和 Trading Technologies 产品页面也都没有显示价格。请问经纪商,算法是否包含在你的佣金里;请问 EMS 供应商,新增经纪商或交易场所时由谁来付费。自建则要增加运行它的人员,只要它还在运行,这些人就要一直在;对适用范围内的公司,还有上文所述的合规工作。
我们应该向 EMS 供应商或可能为我们构建执行层的公司问些什么?
- 我们各家经纪商的算法套件中,目前有哪些已在你们的系统上线?经纪商调整参数时由谁来更新?
- 我们能看到每笔子单的哪些信息、带哪些时间戳?能否全部导出?
- 我们的员工能否在所有交易场所一次性撤销每一笔未成交订单,而不必给你们打电话?
- 谁来设定母单和子单的限制?我们如何证明它们在某一天确实生效?
- 当某个交易场所或数据源在订单执行中途中断时,系统会如何表现?重启之后这笔订单会怎样?
- 我们在哪里做测试?如何与每个交易场所或经纪商安排一致性测试?
- 你们为年度自我评估提供哪些记录?
- 你们今天能否在一套正在运行的系统上演示这套方案?
amBrain 在其中处于什么位置?
amBrain 发布这个博客。它用一句话描述了自己交易方面工作的一部分:“amBrain 构建算法交易基础设施:订单执行、行情数据和交易前风控。”这句话没有提到执行管理系统。
amBrain 自 2019 年起开发软件。关于与客户的合作方式,它说:“三种合作方式:整体交付、专属团队,或工程师嵌入你的团队。”它关于所有权的说法是:“客户拥有产品与代码的全部所有权,我们的可复用组件除外。”签约之前,请要求它逐项列出这些组件的名称。
本文不是案例研究,也没有描述任何客户工作。文中没有任何一处表示 amBrain 为任何客户构建、授权或集成过执行管理系统或执行算法。引文来自 ESMA、FINRA、FlexTrade、Trading Technologies、Virtu 和 Interactive Brokers 的公开页面,来自 legislation.gov.uk 上的 RTS 6 文本,以及 govinfo.gov 上的 SEC 规则 15c3-5 文本。本文不主张 amBrain 与其中任何一家有关系,不推荐它们的任何产品,也不给出 amBrain 的价格或时间表。
这也不构成法律或投资意见。请与你交易所在各个市场的律师一起核查适用于贵公司的规则。如果 amBrain 在你的候选名单里,请像对待其他公司一样,把同样的问题也问它。
主题
- 执行算法
- 执行管理
- 交易成本分析
- 自建还是购买