说明:收录25万 73个行业的国家标准 支持批量下载
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210164141.1 (22)申请日 2022.02.22 (71)申请人 上海金融期 货信息技 术有限公司 地址 200122 上海市浦东 新区中国(上海) 自由贸易试验区杨高南路288号19-21 层 (72)发明人 朱恺 王康贵 沈俊华 张海荣  李思昌 陈建武 金甫虞 陈吉芳  (74)专利代理 机构 上海专利商标事务所有限公 司 31100 专利代理师 施浩 (51)Int.Cl. G06Q 30/06(2012.01) G06F 15/78(2006.01) G06F 16/23(2019.01) (54)发明名称 一种低延时高吞吐的实时订单簿生成方法 (57)摘要 本发明公开了一种低延时高吞吐的实时订 单簿生成方法, 使用FPGA硬件, 同时结合软件优 势, 实现订单簿生成的低延时和高吞吐。 其技术 方案为: 一方面用FPGA 硬件代替传统软件实现合 约订单簿的实时处理和生成; 另 一方面, 本发明 采用分割存储合约订单簿的存储 结构(大表和小 表)来存储合约订单簿, 利用FPGA硬件的高并发 低延时特性和软件存储灵活容量大的优势分别 处理小表和大表, 增加本发明的实用性并降低使 用成本。 权利要求书2页 说明书9页 附图4页 CN 114549129 A 2022.05.27 CN 114549129 A 1.一种低延时高吞吐的实时订单簿生成方法, 其特 征在于, 包括: 步骤1: 获取交易所发布的逐笔行情消息, 根据 逐笔行情消息 中的合约 号查找对应的合 约订单簿; 步骤2: 使用步骤1 获取到的逐 笔行情消息更新 查找到的对应的合约订单簿; 步骤3: 从经步骤2更新后的合约订单簿中提取 所需的档位行情; 步骤4: 基于步骤3提取到的档位行情生成行情信息并推送。 2.根据权利要求1所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 步骤1中 的逐笔行情消息的获取是接收包含了行情信息的网络报文并对网络报文进 行解析处理, 其 中网络报文的接收和解析均是由FPGA硬件来实现。 3.根据权利要求1所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 合约 订单 簿是分割存储订单簿的存储结构, 将合约订单簿分为大表和小表, 小表存储在FPGA硬件的 合约订单簿中, 大表存储在软件的合约订单簿中, 大表和小表之间内容互斥, 大表和小表共 同组成一个完整的合约订单簿。 4.根据权利要求3所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 大表和小 表分别都是有序的。 5.根据权利要求3所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 在合约 订 单簿的更新处理中, 若当前处理的行情消息中的价格属于小表中的价格范围, 则在小表内 更新对应的订单数目, 若当前处理的行情消息中的价格属于大表中的价格范围, 则在大表 中更新对应的订单 数目。 6.根据权利要求3所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 当小表已 被填满且有新的订单价格插入时, 则将小表中的一个订单价格转移到大表中进行存储; 当 发生撤单或者成交以使小表中的价格档位减少且减少到某临界值时, 则从大表转移数据到 小表。 7.根据权利要求6所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 触发小表 数据转移到大表的情况下, 只将小表的最后一档的档位传输到大表中, 以最小化小表的延 迟; 触发大表数据转移到小表的情况 下, 是以批量方式将大表的多个档位传输 到小表中。 8.根据权利要求3所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 合约 订单 簿的小表的存储结构是结构化阵列方式, 以合约地址作为索引, 通过同时访问多个不同的 FPGA片内存储BRAM得到同一个合约中的不同的数据字段, 以便在一个时钟周期内同时获取 所有合约信息, 其中每一个合约信息对应一个唯一的合约地址 。 9.根据权利要求3所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 逐笔行情 消息包括逐笔委托消息和逐笔成交消息, 对应步骤2的合约订单簿的更新包括对于逐笔委 托消息的合约订单簿更新和对于逐 笔成交消息的合约订单簿更新。 10.根据权利要求9所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 对于逐 笔委托消息的合约订单簿更新进一 步包括: 获取交易所发布的逐笔委托消息后, 根据 该笔委托消息中的委托价格判断该笔委托消 息的处理对 象: 若委托价格大于软件对应处理的合约订单簿中的最优价格, 则该笔委托消 息由FPGA硬件来处理, 否则该笔委托消息由软件来处理软件的合约订单簿即大表中的更 新;权 利 要 求 书 1/2 页 2 CN 114549129 A 2对于委托消息由FP GA硬件处理的方式, 是将该委托消息中的委托订单插入FPGA硬件的 合约订单簿即小表中完成更新, 其中在FPGA硬件处理的合约订单簿更新流程中, 首先判断 委托类型是新增报单还是撤销报单, 若为新增报单且小表中的价格档位已存在, 则在小表 中找到对应价格档位并在档位当前数量上加上委托数量; 若为新增报单但价格档位不存 在, 则在小表尾部新增该价格档位, 以待后续排序操作中恢复小表的有序性; 若为撤销报 单, 则在FPGA硬件的合约订单簿上找到相应价格档位并在档位当前 数量上减去委托数量; 对更新后的FP GA硬件的合约订单簿执行排序操作, 恢复FP GA硬件的合约订单簿的价格 档位有序性; 检查更新并排序后的FPGA硬件的合约订单簿的状态, 若此时由于新增委托导致小表中 价格档位溢出, 则将部位档位移至软件的合约订单簿即大表中; 若由于撤单委托导致小表 中价格档位 不足, 则将部分档位从软件的合约订单簿即大表中移至小表。 11.根据权利要求9所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 对于逐 笔成交消息的合约订单簿更新进一 步包括: 获取交易所发布的逐笔成交消息后, 根据 该笔成交消息中的成交价格判断该笔成交消 息的处理对 象: 若成交价格大于软件的合约订单簿即大表中的最优价格, 则该笔成交消息 由FPGA硬件处 理, 否则该 笔成交消息由软件来处 理软件的合约订单簿即大表中的更新; 对于成交消息由FP GA硬件处理的方式, 是将该笔成交消息更新到FP GA硬件的合约订单 簿即小表, 包括在小表中查找对应的价格档位, 并在价格档位的当前数量上减去该笔成交 消息中的成交数量; 对更新后的FP GA硬件的合约订单簿执行排序操作, 恢复FP GA硬件的合约订单簿的价格 档位有序性; 检查更新并排序后的FPGA硬件的合约订单簿的状态, 若此时由于成交导致小表中价格 档位不足, 则将部分档位从软件的合约订单簿的大表中移至小表。 12.根据权利要求3所述的低延时高吞吐的实时订单簿生成方法, 其特征在于, 步骤3的 提取档位行情是从更新后的FPGA硬件的合约订单簿中提取需要的档位行情。权 利 要 求 书 2/2 页 3 CN 114549129 A 3

.PDF文档 专利 一种低延时高吞吐的实时订单簿生成方法

文档预览
中文文档 16 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共16页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种低延时高吞吐的实时订单簿生成方法 第 1 页 专利 一种低延时高吞吐的实时订单簿生成方法 第 2 页 专利 一种低延时高吞吐的实时订单簿生成方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 11:12:25上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。