The invention belongs to the field of financial communication technology, and discloses a futures trading system and method based on FPGA, the system includes order implementation FPGA data reception and analysis, based on the order management, risk control, order packet and network protocol stack; futures trading system and method based on FPGA provided by the invention, analyze and group the package of trading orders data using FPGA hardware, and existing technology using pure software way to deal with the order transaction scheme comparison, to avoid the delay caused by the data analysis of computer kernel software form, solves the existing common futures trading system can not meet user requirements for high-frequency trading speed problems.
【技术实现步骤摘要】
一种基于FPGA的期货交易系统及方法
本专利技术属于金融通信
,更具体地,涉及一种基于FPGA的期货交易系统及方法。
技术介绍
随着期货交易的程序化的日益普及,越来越多的期货交易通过计算机程序自动完成,这极大的提高了交易完成的效率,更快的下单意味着更高的成交概率。在期货交易,尤其是高频交易中,更快的交易系统,意味着可以更早地得到交易策略的执行,从而获取交易的主动权。传统的期货交易方案使用纯软件的方式来实现订单交易,由计算机软件通过交易策略计算以及风险控制评估后得到有效数据,获得有效数据后组包成金融通信领域专用交易数据包,再通过内核集成的以太网协议栈对交易数据包组包成市场订单数据包,并通过计算机万兆以太网口发送市场订单数据包;这种方案引入的软件时延大都在几百微秒以上,难以满足期货交易中对交易数据进行快速收发订单的需求,无法在交易市场上抢占先机。随着高频交易的逐步推进,市场迫切地需要一种既能保障交易安全又能保障交易速度的期货交易系统及方法。
技术实现思路
针对现有技术的以上缺陷或改进需求,本专利技术提供了一种基于FPGA的期货交易系统及方法,其目的在于提高期货交易中订单接收和发送的速度。为实现上述目的,按照本专利技术的一个方面,提供了一种基于FPGA的期货交易系统,包括订单数据解析模块、订单管理模块、风险控制模块、订单数据组包模块和网络连接维护模块;订单管理模块具有用于增加、删除、修改、查找的接口;其中,订单数据解析模块用于根据协议从接收到的用户订单中解析出订单执行信息;订单管理模块用于保存订单信息,并在收到交易所对订单信息的确认消息后更新订单薄,将订单簿的 ...
【技术保护点】
一种基于FPGA的期货交易系统,其特征在于,包括订单数据解析模块、订单管理模块、风险控制模块、订单数据组包模块和网络连接维护模块;所述订单数据解析模块用于根据协议从接收到的用户订单中解析出订单执行信息;所述订单管理模块用于在收到交易所对订单信息的确认消息后更新订单薄,并将订单簿的历史数据保存在数据库中;所述风险控制模块用于根据行情价格数据、用户端设定的价格范围以及用户端设定的单笔订单大小进行订单风险判定,拦截判定为风险的订单并反馈出错消息到用户端;所述订单数据组包模块用于将包括新建订单、修改订单、删除订单、请求获取订单状态的订单数据的组包;网络连接维护模块用于进行网络协议栈的维护;所述期货交易系统基于FPGA实现,通过PCIE接口与外部服务器实现数据交互。
【技术特征摘要】
1.一种基于FPGA的期货交易系统,其特征在于,包括订单数据解析模块、订单管理模块、风险控制模块、订单数据组包模块和网络连接维护模块;所述订单数据解析模块用于根据协议从接收到的用户订单中解析出订单执行信息;所述订单管理模块用于在收到交易所对订单信息的确认消息后更新订单薄,并将订单簿的历史数据保存在数据库中;所述风险控制模块用于根据行情价格数据、用户端设定的价格范围以及用户端设定的单笔订单大小进行订单风险判定,拦截判定为风险的订单并反馈出错消息到用户端;所述订单数据组包模块用于将包括新建订单、修改订单、删除订单、请求获取订单状态的订单数据的组包;网络连接维护模块用于进行网络协议栈的维护;所述期货交易系统基于FPGA实现,通过PCIE接口与外部服务器实现数据交互。2.如权利要求1所述的期货交易系统,其特征在于,外部服务器通过PCIE接口将用户端的信息发送给所述期货交易系统,通过期货交易系统进行订单管理处理、风险控制、订单组包、网络连接维护,并将订单市场数据通过QSFP+接口发送到外部交易所;外部市场数据通过QSFP+接口接入所述期货交易系统,在格式转换后进行数据解析获得订单数据。3.如权利要求1或2所述的期货交易系统,其特征在于,还包括PCIe总线控制器,10GPHY,DMA控制器,DDR3/QDR控制器,BlockRAM,10GigEMAC;所述PCIe总线控制器具有连接外部CPU及内存的接口,10GPHY具有连接QSFP+用于订单收发的接口;所述PCIe总线控制器用于与外部服务器互联实现数据交互;所述10GPHY作为物理接口收发器用于数据收发;DMA控制器用于在接收到订单数据更新时发出DMA操作请求,申请将订单数据存入外部服务器;DDR3/QDR控制器用于存储解析后的订单数据;所述BlockRAM用于将订单数据缓存,以便于通过DDR3/QDR控制器将数据存入DDR3或QDR中;所述10GMAC用于连接物理层的物理介质。4.如权利要求1或2所述的期货交易系统,其特征在于,所述订单管理模块包括订单更新单元和用户端交互单元;所述订单更新单元用于实现用户订单的新增、取消、修改和查找;所述用户端交互单元用于将用户端发送的订单消息通过PCIE接口发送到订单管理模块,并用于将订单管理模块发送的订单执行消息发送到用户端。5.如权利要求1或2所述的期货交易系统,其特征在于,所述网络连接维护模块包括TCP解包单...
【专利技术属性】
技术研发人员:杨涛,
申请(专利权)人:武汉旷腾信息技术有限公司,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。