浅谈FPGA在金融交易领域的应用

作者: Simon Yang,文章来源:FPGA FAE技术分享选集

一、FPGA在金融领域干什么
       金融科技Fintech,可以简单理解为Finance(金融)+ Technology(科技),指通过利用各类科技手段创新传统金融行业所提供的产品和服务,基于大数据、云计算、人工智能、区块链等一系列技术创新,提升效率并有效降低运营成本。在金融科技领域。
       在金融领域的芯片使用中,最常被拿来对比和选择的是CPU、GPU和FPGA。其简要特点分别如下:    

1. CPU:虽然目前的CPU支持较大数量的核、更大的CACHE、更好的Pipelining、动态调度等,但是CPU的串行化指令执行、核间通信、进程调度、中断管理、网络数据解析等带来的延迟,使得在需要大吞吐量、低延迟的场景,仍存在不能覆盖的应用场景;
2. GPU:拥有大量的核和大量的高速内存,使得GPU适合处理数据层并行度高的粗粒度并行计算,GPU并不是完全的并行计算,其定制化特性和延迟确定性也弱于FPGA;
3. FPGA:资源换性能的典型代表,虽然FPGA内部资源的工作频率不高于CPU和GPU,但是FPGA可以在一个时钟周期内并行处理多个指令,并且处理完成的周期数是确定性的,因此FPGA在大数据量、低延迟、高可靠性的场景还有着广泛的应用;FPGA的缺点在于功耗和开发难度;

FPGA可以帮助金融机构提高交易效率、降低风险和优化业务运营,在金融交易领域的典型应用包括:

1. 高效能网络和通信:FPGA可以用于构建确定性高、延迟低的高速网络和通信系统,以实现金融数据的实时传输和交换;

2. 高性能计算:FPGA可以实现并行计算和处理,用于高频交易中的复杂数学模型、风险评估、衍生品估值等计算任务;

3. 数据压缩和加密:FPGA可以用于实时压缩和加密金融数据,以确保数据的安全传输和存储。它可以加速数据的处理速度,并提供低延迟的数据传输;

4. 高频交易:FPGA可以用于实时交易系统,通过高速数据处理和算法执行来实现极低的延迟。它可以执行复杂的算法和策略,同时实时处理大量的市场数据,以在纳秒级别上进行交易决策;

5. 智能交易:FPGA可以用于实现智能交易系统,通过机器学习算法和数据分析来识别市场趋势和交易信号,并自动执行交易决策;

本文仅针对高频交易应用,展开一点作者的理解,如有不对之处,欢迎读者指正和交流。

二、FPGA在高频交易中干什么

高频交易(High Frequency Trading,简称HFT)。高频交易是指从那些人们无法利用的极为短暂的市场变化中寻求获利的计算机化交易,由强大的计算机系统和复杂的运算所主导的能在极短时间内自动完成大量买、卖以及取消指令的交易。中国证监会2024年5月11日发布的《证券市场程序化交易管理规定(试行)》 第二十一条的规定,高频交易是指具备以下特征的程序化交易:(一)短时间内申报、撤单的笔数、频率较高;(二)日内申报、撤单的笔数较高;(三)证券交易所认定的其他特征。证券交易所应当明确并适时完善高频交易的认定标准。

        图1、图2、图3、图4展示了高频交易中典型的系统框图及FPGA在行情解析、策略执行中的应用,作者不熟悉此处算法、不做展开讨论。

1.png

图1

2.png

图2

3.png

图3

4.png

图4

在高频交易中使用FPGA的优势包括:

1. 低延迟:FPGA能够实现硬件级别的并行计算,能够更快地处理行情数据和执行交易决策,大大降低交易的延迟;
       2. 定制化:FPGA可以通过硬件描述语言(如VHDL或Verilog)进行定制化设计,根据具体的交易算法和需求进行优化,提高了系统的灵活性和性能;
       3. 并行计算:FPGA具有良好的并行计算能力,能够同时处理多个数据流,提高了数据处理的效率;
       4. 实时性:FPGA可以实现硬实时性,确保在极短的时间内响应行情变化和执行交易策略;
       在高频交易的应用场景中,对于网络传输、PCIe传输、行情数据解析、策略执行的延迟要求是越低越好,高频交易系统给券商、期货商带来的利润预期已经促使设备和软件达到决战于纳秒之间的地步。而AMD FPGA的如下特点,正契合了高频交易中的技术需求:     

1. 以太网:AMD具备丰富的以太网IP,从10M/100M以太网、1G以太网、2.5G/5G以太网、10G/25G以太网、40G以太网、50G以太网、100G以太网、200G以太网、400G以太网等等丰富的以太网IP,FPGA逻辑打包和解析以太网数据的特性,使得以太网可以做到低延迟数据传输;
      2. PCIe硬核:AMD FPGA内嵌PCIe硬核,辅助以AMD XDMA/QDMA等IP,可以实现大数据量、高效、低延迟的数据传输;
      3. Memory:AMD FPGA支持丰富的Memory存储,如AMD HBM系列FPGA内置HBM存储可以支持瞬时突发数据的大带宽读写需求;Memory支持QDRII+ SRAM和QDRIV SRAM接口可以实现小量数据的极低延迟的读写;而DDR4/DDR5可以实现大带宽/大数据量的临时存储;
     4. Internal Logic Resource:AMD FPGA内部的CLB、DSP Slice、CARRY CHAIN、BRAM等资源丰富,并且可以运行在较高的时钟频率,帮助客户实现大数据量、低延迟、确定性的计算;

三、AMD金融交易行业的加速卡介绍
       AMD已量产多款加速卡并成功应用于金融交易行业,如目前已广泛被用户接受的Ultrascale+ HBM系列加速卡U50、U55C,以及目前已经量产的Versal HBM系列加速卡V80,还有专为金融交易行业而生的GTF超低延迟(less than 3ns GTF Transceiver)加速卡UL3522、UL3422。       

        作者简单整理了这几款加速卡的主要Feature,如您希望了解更详细的信息,欢迎与我们联系。

5.png

图5

6.png

图6

7.png

图7

8.png

图8

9.png

图9

10.png

图10

 其中U50、U55C、V80具备丰富的逻辑资源、大吞吐量Ethernet接口和PCIe接口,同时具备HBM存储,适用于高频交易行业的瞬时突发大带宽数据读写;UL3522和UL3422具备极低GTF穿透延迟,可以大大减少数据传输过程中的延迟。
        国内金融交易与国外金融交易存在的一个区别在于:国外金融交易公司可搭建数据专线直连交易所,而国内交易者的每笔下单撤单需经过券商中转,总延迟的增加相对削弱了FPGA计算加速和低延迟传输带来的优势。

四、AMD关于金融交易行业的参考设计
       AMD多年前就关注到了金融交易市场,并基于FPGA、FPGA加速卡、X86处理器发布了一些金融交易行业的reference design,作者罗列了一些链接供读者参考。

1.    https://community.amd.com/t5/adaptive-computing/xilinx-algorithmic-accelerated-trading/ba-p/557128 

2.    https://www.amd.com/en/developer/resources/alveo-apps/all-apps.html?utm_source=prn&utm_campaign=accelerationZone&utm_medium=pr&utm_term=acceleration&utm_content=dz-landing#sortCriteria=%40title%20ascending 

3.   https://www.amd.com/en/developer/resources/alveo-apps/all-apps.html?utm_source=prn&utm_campaign=accelerationZone&utm_medium=pr&utm_term=acceleration&utm_content=dz-landing#sortCriteria=%40title%20ascending 

4.   https://github.com/max2ma/FinancialModels_AmazonF1         

       也有一些加速卡和IP设计公司,针对金融行业提供了硬件板卡和TOE、低延迟MAC等IP,如Bittware、Enyx、Design-Gateway等公司,如果您对相关硬件和IP有需求,也欢迎联系我们或者联系科通当地销售/技术支持人员。

参考文献说明:本文参考了盛立金融、金仕达、CISCO、ARISTA、真格量化等公司公开发表于互联网上的文章,并引用了浪潮、金仕达文章中的图片,在此表示感谢!如有侵权,请联系作者删除。

欢迎读者联系我们进行沟通和讨论

simonyang@comtech.cn 

charlesxu@comtech.cn 

最新文章

最新文章