一种适用于证券交易系统的订单内存分配方法技术方案

技术编号:23604426 阅读:46 留言:0更新日期:2020-03-28 05:35
本发明专利技术涉及计算机数据处理技术领域,具体来说是一种适用于证券交易系统的订单内存分配方法,方法具体如下:S1:内存的分配将按单只股票隔离,分别进行,每只股票同一价格档位的订单将依次从一系列的微型内存池中分配;S2:当一个微型内存池被分配满之后,系统将从每只股票各自拥有的一个订单块内存池中分配一个新的内存池,用于后续的新订单分配;S3:系统启动时需要预先给单个订单块内存池分配的内存池;本发明专利技术使得撮合成交时,对订单的访问基本落在CPU的一级缓存内,比现有技术快100倍,只有在每273笔订单撮合完成时,访问才会有一次落在三级缓存内,即使在三级缓存内,访问的时延也比已有方案快十倍。

An order memory allocation method for securities trading system

【技术实现步骤摘要】
一种适用于证券交易系统的订单内存分配方法
本专利技术涉及计算机数据处理
,具体来说是一种适用于证券交易系统的订单内存分配方法。
技术介绍
证券交易系统在交易的过程中,我们需要在内存中维护一个订单容器,里面存放着所有还未成交的订单,这个容器记作“订单簿(OrderBook)”。在一个“订单簿”中,所有价格相等并且买卖方向相同的订单被视作同一档订单,属于同一档位的订单我们需要用链表串联起来,并用一个数据结构(记作priceLeader)保存这个链表的信息、以及保存这个价格档位上所有订单的汇总信息(价格,总下单股数,剩余未成交股数,已成交股数),如图1所示。一个订单簿包含买卖方向相反的两个priceLeader的集合,记作leaderBookBuy和leaderBookSell,订单簿的结构如图2所示。由于股票的交易规则中有最小价格变动单位的限制(记作tickSize),在单个股票的最高价(记作highLimit)和最低价(记作lowLimit)构成的涨跌幅范围内,价格档位数量(记作levelCount)可通过下面的公式计算出来本文档来自技高网...

【技术保护点】
1.一种适用于证券交易系统的订单内存分配方法,其特征在于所述方法具体如下:/nS1:内存的分配将按单只股票隔离,分别进行,每只股票同一价格档位的订单将依次从一系列的微型内存池中分配;/nS2:当一个微型内存池被分配满之后,系统将从每只股票各自拥有的一个订单块内存池中分配一个新的内存池,用于后续的新订单分配;/nS3:系统启动时需要预先给单个订单块内存池分配的内存池;/nS4:除了启动时的预分配外,系统将在运行时根据订单的增长情况,动态的分配新的内存池加入到订单块内存池中进行管理。/n

【技术特征摘要】
1.一种适用于证券交易系统的订单内存分配方法,其特征在于所述方法具体如下:
S1:内存的分配将按单只股票隔离,分别进行,每只股票同一价格档位的订单将依次从一系列的微型内存池中分配;
S2:当一个微型内存池被分配满之后,系统将从每只股票各自拥有的一个订单块内存池中分配一个新的内存池,用于后续的新订单分配;
S3:系统启动时需要预先给单个订单块内存池分配的内存池;
S4:除了启动时的预分配外,系统将在运行时根据订单的增长情况,动态的分配新的内存池加入到订单块内存池中进行管理。


2.如权利要求1所述的一种适用于证券交易系统的订单内存分配方法,其特征在于微型内存池大小为CPU一级缓存的大小。


3.如权利要求1所述的一种适用...

【专利技术属性】
技术研发人员:林琨王泊
申请(专利权)人:上交所技术有限责任公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1