FLOWA 借助 AMD 构建低时延电子交易基础设施

Flowa Technologies 成立于 15 年前,总部位于里约热内卢,致力于为买方与卖方机构提供端到端电子交易解决方案。该公司提供多经纪商交易平台、执行与订单管理系统,以及可通过 API 访问的高级算法交易功能。

目前,该公司的交易平台为 300 多家机构客户提供支持,覆盖了几乎所有在巴西运营的经纪商,这意味着该国约 10% 的交易通过其基础设施完成。

Flowa Technologies 首席技术官 Eduardo Nicodemos 表示:“我们提供面向电子交易的所有产品和服务,以帮助交易员在巴西交易所执行订单。几乎 100% 的本地经纪商都通过我们的基础设施开展运营。”

项目挑战

在时延敏感的电子交易市场中,行情数据接收和订单响应时间直接决定交易策略响应市场事件的速度。Flowa 的 FPGA 团队专注于需要确定性处理、且对时延要求极为严格的工作负载,尤其是交易活跃的期货及衍生品标的。在巴西,迷你指数期货和迷你美元期货等活跃合约每秒产生数百万条消息;处理这些海量金融数据,是时延敏感型交易策略的基础。

随着期货与衍生品中的这些交易策略越来越依赖于确定性、超低时延的市场数据处理,Flowa 发现了纯软件架构的实际限制。Flowa FPGA 开发主管 Nilson Vaz Eduardo 指出:“当采用纯软件解决方案时,你只能挤压出有限的性能。”

在基准测试对比中,Flowa 观察到其基于软件的市场数据解码流水线会引入数十微秒的时延,而基于 FPGA 的处理能够显著降低这一数字。

实现超低时延只是挑战的一部分。Flowa 还需要在市场流量峰值期间保持确定性的处理性能,使用精确时间戳测量往返时延,并随着可交易标的数量的增加扩展系统处理能力。

Flowa 的上一代 FPGA 实现方案可完全在 FPGA 可编程逻辑内处理约 150 种对时延要求严格的交易标的。超过这一数量后,如果没有更先进的内存架构,系统扩展就会受到限制。此外,仅依赖交易所提供的时间信息,无法满足性能评估和内部调优的需求。Flowa 需要一个高度可靠的硬件级监控系统,为进入和离开其基础设施的每个数据包添加时间戳。

Eduardo 表示:“与更成熟的市场相比,巴西市场仍在发展中,我们这里提供硬件加速解决方案的供应商非常有限。”因此,Flowa 需要一种能够在内部开发和维护的架构,其应符合巴西市场的协议与微观结构,并能够随着交易所方法和客户期望的变化而不断发展。

解决方案

Flowa Technologies 部署了 AMD Alveo V80 加速器卡,为其下一代超低时延市场数据与交易系统提供支持。通过利用 AMD FPGA 技术,Flowa 能够实时处理市场数据并监控交易网络。这使金融机构能够在竞争激烈的期货与衍生品市场中更快速地执行交易。

Flowa 首席运营官 Francisco Gurgel 指出:“由于 Flowa 始终在巴西市场处于技术前沿,我们决定通过采购 AMD Alveo V80 加速器卡并将其部署到我们的基础设施中,从而迁移到最新一代基于 AMD FPGA 的解决方案。AMD 帮助我们选择了合适的器件,并将我们的解决方案移植到了卡上。”

该基础设施面向巴西 B3 市场,涵盖股票、衍生品和期货,支持完全在 FPGA 内进行的行情数据处理,并通过硬件时间戳监控实现 Flowa 交易网络的数据包级可观测性。AMD Alveo V80 平台上运行着两类工作负载:内部监控系统,以及一套已投入实际业务运行的行情数据解决方案,后者为在巴西交易的本地和全球市场参与者提供超低时延算法交易服务支持。

Gurgel 表示:“针对行情数据系统,我们设计了一种混合架构,将对时延最敏感的交易标的完全放在 FPGA 可编程逻辑内处理,以尽可能提高处理的确定性并降低时延。”其他交易标的则通过 FPGA 逻辑与外部内存相结合的方式处理,突破以往实际扩展能力的限制。客户可以通过一组简单的 API 在系统运行时进行配置,选择哪些交易标的需要满足最严格的时延要求。

该平台还集成了硬件监控系统,通过同步时钟为数据包添加时间戳,以测量网络和交易路径时延。Gurgel 指出:“我们开发了一套解决方案,以经 GPS 同步的主时钟为时间基准,使用标准时间同步协议,为所有传入和传出的数据包添加时间戳。所有经过我们交易网络的消息都由 FPGA 板卡处理。”除行情数据解决方案外,Flowa 还计划向客户提供这一监控功能。

Flowa 的解决方案在板卡上解码 B3 行情数据流,管理交易标的的状态和订单簿,再通过板卡分发行情信息,供 Flowa 的交易执行软件栈使用。Gurgel 表示:“我们现在处理股票和衍生品的行情数据,并通过板卡分发这些信息。”他补充道,这一功能支持本地机构和全球企业在巴西开展交易,而无需自行维护用于行情数据处理的 FPGA 代码库。

Flowa 在设计基础设施时,考虑了巴西交易所不断演进的行情数据处理机制,以兼容全球行情数据标准并支持多个交易所的数据流。Eduardo 指出:“巴西证券交易所调整了客户接收和处理行情数据的方式,使其更接近全球其他交易所的做法。我们的解决方案已经采用这种处理方式,因此更容易适配其他市场及其当地协议,同时通过 FPGA 汇集多个交易所的数据。”

设计成效

根据 Flowa 的对比测试,基于软件的行情解码引入约 20 微秒时延;在早期实现方案中,完全在 FPGA 可编程逻辑内进行的处理平均时延约为 216 纳秒。Eduardo 表示:“迁移到 Alveo V80 后,平均时延降至 67 纳秒,标准差为 9 纳秒。”

除了降低处理时延,Flowa 还强调系统在高消息速率下保持确定性处理的能力。这对时延要求严格的期货产品尤为重要:系统需要在每秒处理数百万条消息的同时,保持一致的处理时间。

与此同时,基于 FPGA 的监控功能旨在对往返时序以及系统对市场事件的反应时间提供一致、独立的测量。这种可见性使 Flowa 能够更精确地调优其算法,并验证其整个交易基础设施的网络性能。

展望未来,Flowa 计划通过服务和许可模式扩大对这些功能的访问,包括支持外部参与者在其自有环境中部署 Flowa 设计的 FPGA 功能。

👍 点赞 · 0