CN114926253A - 行情快照的生成方法、装置及电子设备 - Google Patents
行情快照的生成方法、装置及电子设备 Download PDFInfo
- Publication number
- CN114926253A CN114926253A CN202210645563.0A CN202210645563A CN114926253A CN 114926253 A CN114926253 A CN 114926253A CN 202210645563 A CN202210645563 A CN 202210645563A CN 114926253 A CN114926253 A CN 114926253A
- Authority
- CN
- China
- Prior art keywords
- gear
- price
- target
- buying
- selling
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/08—Auctions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/06—Asset management; Financial planning or analysis
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Engineering & Computer Science (AREA)
- Development Economics (AREA)
- Theoretical Computer Science (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Technology Law (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Human Resources & Organizations (AREA)
- Operations Research (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明实施例提供了一种行情快照的生成方法、装置及电子设备,该方法包括:接收来自交易所的目标交易消息;确定目标交易消息中所包含的证券代码以及目标交易消息的消息类型;选取具有该证券代码的目标证券;按照目标交易消息的消息类型,从目标交易消息中提取指定信息;其中,若目标交易消息的消息类型为逐笔委托类型,指定信息为订单类型、委托方向、委托价格和委托量;若目标交易消息的消息类型为逐笔成交类型,指定信息为成交价、成交量和买卖方向;基于指定信息,修改目标证券的价格档位信息;根据修改后的价格档位信息,生成目标证券的行情快照。通过本方案,可以解决生成行情快照所要处理的数据量大、数据结构复杂的问题。
Description
技术领域
本发明涉及信息处理技术领域,特别是涉及一种行情快照的生成方法、装置及电子设备。
背景技术
目前,机构投资者的服务器可以接收证券交易所针对任一证券所发送的交易消息,例如逐笔委托消息或逐笔成交消息,并利用接收到的交易消息,生成该证券的行情快照,从而为证券交易提供决策依据。其中,行情快照一般包含时间戳、总成交量、总成交价、最高价、最低价、开盘价、最新价、价格档位信息等统计信息,具体而言,价格档位信息包括多个买档位、卖档位所对应的委托价格和对应的委托量。
在行情快照中,价格档位信息的生成最为复杂。相关技术中,为了生成一只证券的价格档位信息,每接收一次逐笔委托消息或逐笔成交消息,需要根据逐笔委托消息所包含的原始订单号、委托价格、委托数量、委托方向、订单类型等信息,或者逐笔成交消息所包含的成交价、成交量、买卖方向、买方订单号或卖方订单号,修改该证券的订单信息,订单信息中包括:买方订单号和卖方订单号,以及各个订单号对应的委托价格和委托量;最后统计修改后的订单信息中的各个委托价格和委托量,生成新的价格档位信息。
由于涉及到对每一笔订单信息中的多个订单号的查询,所要处理的数据量大、数据结构复杂,会拖慢机构投资者的服务器的处理速度,增大服务器的延迟和抖动。
发明内容
本发明实施例的目的在于提供一种行情快照的生成方法、装置及电子设备,以解决生成行情快照所要处理的数据量大、数据结构复杂,从而拖慢机构投资者的服务器的处理速度的问题。具体技术方案如下:
第一方面,本发明实施例提供了一种行情快照的生成方法,所述方法包括:
接收来自交易所的目标交易消息;
确定所述目标交易消息中所包含的证券代码以及所述目标交易消息的消息类型;
选取具有所述证券代码的目标证券;
按照所述目标交易消息的消息类型,从所述目标交易消息中提取指定信息;其中,若所述目标交易消息的消息类型为逐笔委托类型,所述指定信息为订单类型、委托方向、委托价格和委托量;若所述目标交易消息的消息类型为逐笔成交类型,所述指定信息为成交价、成交量和买卖方向;所述买卖方向包括:买成交方向和卖成交方向中的一种;
基于所述指定信息,修改所述目标证券的价格档位信息;其中,所述价格档位信息包括:各个买档位和各个卖档位所对应的委托价格,以及各个所述买档位和各个所述卖档位所对应的委托量;
根据修改后的所述价格档位信息,生成所述目标证券的行情快照。
可选地,所述消息类型为逐笔委托消息,所述基于所述指定信息,修改所述目标证券的价格档位信息,包括:
根据所述委托价格以及所述委托方向,确定所述目标证券的价格档位信息中的待调整档位;所述待调整档位为各个买档位和各个卖档位中的、所对应委托价格与所述逐笔交易消息中的委托价格相匹配的档位;
若所述订单类型为增加委托订单,将所述待调整档位所对应的委托量与所述逐笔委托消息所表征的委托量相加,得到修改后的价格档位的委托量;若所述订单类型为删除委托订单,将所述待调整档位所对应的委托量与所述逐笔委托消息所表征的委托量相减,得到修改后的价格档位的委托量;
基于所述修改后的价格档位的委托量,修改所述价格档位信息。
可选地,所述消息类型为集中竞价阶段的逐笔成交消息;
若所述买卖方向包括买方向,所述目标证券的价格档位信息的修改方式包括:
确定所述目标证券的价格档位信息中的指定买档位的委托价格,以及所述指定买档位的委托量;其中,所述指定买档位为所述目标证券的价格档位信息中委托价格最高,且委托量不为0的买档位;
判断所述指定买档位的委托价格是否大于等于所述成交价;
若否,则等待预定的固定时间,重新确定所述目标证券的指定买档位的委托价格以及指定买档位的委托量;
若是,则基于所述指定买档位的委托量与所述成交量的差值,得到第一差值结果;其中,所述第一差值结果为指定买档位剩余的委托量,以及所述成交量的剩余量;
基于所述第一差值结果,更新所述指定买档位的委托价格,以及所述指定买档位的委托量;
若所述买卖方向包括卖方向,所述目标证券的价格档位信息的修改方式包括:
确定所述目标证券的价格档位信息中的指定卖档位的委托价格,以及所述指定卖档位的委托量;其中,所述指定卖档位为所述目标证券的价格档位信息中委托价格最低,且委托量不为0的卖档位;
判断所述指定卖档位的委托价格是否小于等于所述成交价;
若否,则等待预定的固定时间,重新确定所述目标证券的指定卖档位的委托价格以及指定卖档位的委托量;
若是,则基于所述指定买档位的委托量与所述成交量的差值,得到第二差值结果;其中,所述第二差值结果为指定卖档位剩余的委托量,以及所述成交量的剩余量;
基于所述第二差值结果,更新所述指定卖档位的委托价格,以及所述指定卖档位的委托量。
可选地,所述基于所述第一差值结果,更新所述指定买档位的委托价格,以及所述指定买档位的委托量,包括:
若所述指定买档位的委托量大于所述成交量,则确定所述成交量的剩余量为0,所述指定买档位剩余的委托量为所述指定买档位的委托量与所述成交量的差值,并将所述指定买档位剩余的委托量作为更新后的所述指定买档位的委托量;
若所述指定买档位的委托量小于所述成交量,则确定所述成交量的剩余量为所述指定买档位的委托量与所述成交量的差值,并返回确定所述目标证券的指定买档位的价格以及指定买档位的委托量的步骤,直至所述成交量的剩余量为0;
所述基于所述第二差值结果,更新所述指定卖档位的价格,以及所述指定卖档位的委托量,包括:
若所述指定卖档位的委托量大于所述成交量,则确定所述成交量的剩余量为0,所述指定卖档位剩余的委托量为所述指定卖档位的委托量与所述成交量的差值,并将所述指定卖档位剩余的委托量作为更新后的所述指定卖档位的委托量;
若所述指定卖档位的委托量小于所述成交量,则确定所述成交量的剩余量为所述指定买档位的委托量与所述成交量的差值,并返回确定所述目标证券的价格档位信息中的指定卖档位的委托价格,以及所述指定卖档位的委托量的步骤,直至所述成交量的剩余量为0。
可选地,所述消息类型为连续竞价阶段的逐笔成交消息;
若所述买卖方向包括买方向,所述目标证券的价格档位信息的修改方式包括:
根据所述成交价,确定所述目标证券的价格档位信息中的目标买档位以及所述目标买档位对应的目标买委托量;其中,所述目标买档位为各个买档位中的、所对应委托价格与所述成交价相匹配的一档位;
将所述目标买委托量与所述成交量相减,得到修改后的所述目标买档位对应的目标委托量;
若所述买卖方向包括卖方向,所述目标证券的价格档位信息的修改方式包括:
根据所述成交价,确定所述目标证券的价格档位信息中的目标卖档位以及所述目标卖档位对应的目标卖委托量;其中,所述目标卖档位为各个卖档位中的、所对应委托价格与所述成交价相匹配的档位;
将所述目标卖委托量与所述成交量相减,得到修改后的所述目标卖档位对应的目标委托量。
可选地,根据修改后的所述价格档位信息,生成所述目标证券的行情快照,包括:
将所述价格档位信息中委托量不为0的买档位,按照对应的委托价格从高到低排序,并将所述价格档位信息中委托量不为0的卖档位,按照对应的委托价格从低到高排序;
利用排序最高的预定数量行买档位的委托价格及对应的委托量,以及排序最高的预定数量行卖档位的委托价格及对应的委托量,生成所述目标证券的行情快照。
第二方面,本发明实施例还提供一种行情快照的生成装置,所述装置包括:
接收模块,用于接收来自交易所的目标交易消息;
确定模块,用于确定所述目标交易消息中所包含的证券代码以及所述目标交易消息的消息类型;
选取模块,用于选取具有所述证券代码的目标证券;
提取模块,用于按照所述目标交易消息的消息类型,从所述目标交易消息中提取指定信息;其中,若所述目标交易消息的消息类型为逐笔委托类型,所述指定信息为订单类型、委托方向、委托价格和委托量;若所述目标交易消息的消息类型为逐笔成交类型,所述指定信息为成交价、成交量和买卖方向;所述买卖方向包括:买成交方向和卖成交方向中的一种;
修改模块,用于基于所述目标交易消息中所包含的指定信息,修改所述目标证券的价格档位信息;其中,所述价格档位信息包括:各个买档位和各个卖档位所对应的委托价格,以及各个所述买档位和各个所述卖档位所对应的委托量;
生成模块,用于根据修改后的所述价格档位信息,生成所述目标证券的行情快照。
第三方面,本发明实施例还提供一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述行情快照的生成方法的步骤。
第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述行情快照的生成方法的步骤。
本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述行情快照的生成方法。
本发明实施例有益效果:
本发明实施例提供的行情快照的生成方法,先接收来自交易所的目标交易消息;确定目标交易消息中所包含的证券代码以及目标交易消息的消息类型;选取具有该证券代码的目标证券;按照目标交易消息的消息类型,从目标交易消息中提取指定信息;其中,若目标交易消息的消息类型为逐笔委托类型,指定信息为订单类型、委托方向、委托价格和委托量;若目标交易消息的消息类型为逐笔成交类型,指定信息为成交价、成交量和买卖方向;最后基于指定信息,修改目标证券的价格档位信息;从而根据修改后的所述价格档位信息,生成目标证券的行情快照。可见,本方案中,利用了交易消息中的指定信息与价格档位信息中的委托价格、委托量的逻辑关系,直接修改目标证券的价格档位信息,而不用按照订单号查询和修改订单信息,并根据订单信息生成新的价格档位信息。因此,通过本方案可以解决生成行情快照所要处理的数据量大,数据结构复杂,从而拖慢机构投资者的服务器的处理速度的问题。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1为本发明实施例所提供的第一数据表的结构示意图;
图2为本发明实施例所提供的第二数据表的结构示意图;
图3为本发明实施例所提供的行情快照的生成方法的流程图;
图4为本发明实施例中处理逐笔委托消息的流程图;
图5为本发明实施例中处理逐笔成交消息的流程图;
图6为本发明实施例所提供的行情快照的生成装置的结构示意图;
图7为本发明实施例所提供的电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
高频交易是一种利用计算机的复杂运算能力进行运行的证券交易业务。针对任一目标证券,高频交易的机构投资者(如投行、券商和对冲基金公司等)的服务器需要以该证券的行情快照为依据,进行一系列的策略算法计算,最终作出交易决策。因此,行情快照获取得越快越容易在高频交易的过程中获得速度优势,而获取速度慢可能会导致交易机会的流失。其中,行情快照一般包含时间戳、总成交量、总成交价、最高价、最低价、开盘价,还有预定数量档买档位的最高价、卖档位的最低价,例如5档、10档等,以及对应的委托量。
目前,证券交易所会针对任一目标证券生成行情快照,并发送至机构投资者的服务器中,但由于证券交易所行情快照的更新速度较慢,难以满足高频交易的需求,因此,证券交易所还会向机构投资者的服务器发送该目标证券的逐笔委托消息和逐笔成交的消息,供对速度有更高要求的公平交易的机构投资者在服务器中自行生成行情快照。其中,逐笔委托消息包含原始订单号(Order NO.)、委托价格、委托数量、委托方向、订单类型(包括:增加委托订单、删除委托订单、状态订单等)和时间戳等信息。逐笔成交行情包含成交价、成交量、买卖方向、买方订单号、卖方订单号和时间戳等信息。
在快照合成的过程中,最难以处理的是该目标证券的价格档位信息,相关技术中,为了更新一只目标证券的价格档位信息,需要在服务器内存中维护两个数据表(也可称作订单薄):第一数据表和第二数据表。其中,如图1所示,第一数据表用于记录原始订单号与委托价格和委托量的对应关系,即订单信息,可以根据证券代码找到该第一数据表的存储基地址;如图2所示,第二数据表用于维护合成行情快照的常用信息(如证券代码、时间戳、总成交量、总成交额等)和价格档位信息的档位排序信息(最新的买1档委托价格、买1档委托数量、卖1档委托价格、卖1档委托数量……)等。若第二数据表中每行内容用64位数据表示,买档位和卖档位各维护n档,则此时一只证券占用2n+5行内容,此处仅为方便说明,并不限定内存中的具体数据结构。其中行情快照的时间戳、总成交量、总成交额的更新比较简单,接收到的逐笔委托消息或逐笔成交消息的时间戳可以直接作为行情快照的时间戳,最高价、最低价、开盘价,可以直接统计逐笔委托中的成交价,总成交量、总成交额只需根据逐笔成交消息中的成交量和成交价计算即可。
行情快照可能只需要档位排序信息中的买/卖5档的信息,但是必须要在内存中记录下一天中所有出现过的委托价格,以5档为例,一天中排在买/卖前5个位置的委托价格是会时刻变化的,对于一只交易活跃的证券,一天中可能出现上千种的买/卖的委托价格,因此必须记录下所有出现过的委托价格以及对应的委托量,才能保证在各种情况下都能正确计算出前5档买/卖的委托价格和对应的委托量。档位排序信息的处理过程通常如下:
当接收到一个逐笔委托消息,需要根据证券代码,确定目标证券,再解析出该逐笔委托消息中的订单号、委托方向、委托价格和委托量等信息,保存在第一数据表中;当接收到一个逐笔成交行情后,要根据解析出的订单号在第一数据表中查找出对应的订单号,再根据成交量修改对应的委托数量;统计修改后的第一数据表中的各个委托价格和委托量,生成新的价格档位信息,即各个买档位、卖档位所对应的委托价格和对应的委托量。最后将委托量不为0的买档位,按照对应的委托价格从高到低排序,将委托量不为0的卖档位,按照对应的委托价格从低到高排序,得到价格档位信息的档位排序信息。
以上是一只证券的价格档位信息的处理过程,而在高频交易中,需要关注的证券数目可能是几十到几百只,可见,在生成行情快照时所要处理的数据量大,且数据结构复杂,会占用大量的内存资源,以及计算资源,这都可能会拖慢机构投资者的服务器的处理速度,增大服务器的延迟和抖动,导致交易机会流失。
为了解决上述问题,提高生成行情快照的速度,本发明实施例提供了一种行情快照的生成方法、装置及电子设备,该方法可以应用于机构投资者的服务器中,该方法包括:
接收来自交易所的目标交易消息;
确定所述目标交易消息中所包含的证券代码以及所述目标交易消息的消息类型;
选取具有所述证券代码的目标证券;
按照所述目标交易消息的消息类型,从所述目标交易消息中提取指定信息;其中,若所述目标交易消息的消息类型为逐笔委托类型,所述指定信息为订单类型、委托方向、委托价格和委托量;若所述目标交易消息的消息类型为逐笔成交类型,所述指定信息为成交价、成交量和买卖方向;所述买卖方向包括:买成交方向和卖成交方向中的一种;
基于所述指定信息,修改所述目标证券的价格档位信息;其中,所述价格档位信息包括:各个买档位和各个卖档位所对应的委托价格,以及各个所述买档位和各个所述卖档位所对应的委托量;根据修改后的所述价格档位信息,生成所述目标证券的行情快照。
本发明实施例提供的行情快照的生成方法,先接收来自交易所的目标交易消息;确定目标交易消息中所包含的证券代码以及目标交易消息的消息类型;选取具有该证券代码的目标证券;按照目标交易消息的消息类型,从目标交易消息中提取指定信息;其中,若目标交易消息的消息类型为逐笔委托类型,指定信息为订单类型、委托方向、委托价格和委托量;若目标交易消息的消息类型为逐笔成交类型,指定信息为成交价、成交量和买卖方向;最后基于指定信息,修改目标证券的价格档位信息;从而根据修改后的所述价格档位信息,生成目标证券的行情快照。可见,本方案中,利用了交易消息中的指定信息与价格档位信息中的委托价格、委托量的逻辑关系,直接修改目标证券的价格档位信息,而不用查询和修改订单信息,并根据订单信息生成新的价格档位信息。因此,通过本方案可以解决生成行情快照所要处理的数据量大,数据结构复杂,从而拖慢机构投资者的服务器的处理速度的问题。
下面结合附图,对本发明实施例所提供的一种行情快照的生成方法进行介绍,如图3所示,该方法可以包括以下步骤:
S301,接收来自交易所的目标交易消息;
交易所的发送的目标交易消息可以为:逐笔委托消息或逐笔成交消息。
一般的,逐笔委托消息中会包含:原始订单号、证券代码、委托价格、委托数量、委托方向、订单类型(增加委托订单、删除委托订单、状态订单等)和时间戳等信息。其中,状态订单用来表示交易所交易状态(停牌、启动、开市集合竞价、连续自动撮合、闭市集合竞价、闭市、交易结束)。
逐笔成交消息中会包含:成交价、成交量、买卖方向、买方订单号、卖方订单号、证券代码和时间戳等信息。
S302,确定所述目标交易消息中所包含的证券代码以及所述目标交易消息的消息类型;
从交易所接收的目标交易消息中会包含类型标识,该类型标识可以用来表征该目标交易消息的消息类型为逐笔委托消息或逐笔成交消息。每一上市的证券都具有唯一的证券代码,目标交易消息中也会携带有证券代码的信息。
S303,选取具有所述证券代码的目标证券;
当接收到的目标交易消息的消息类型为逐笔委托消息时,可以先判断该逐笔委托消息的订单类型是不是状态订单,根据判断结果,来执行不同的操作,其中,逐笔委托的订单类型可以包括状态订单,增加委托订单,删除委托订单。具体而言,若判断结果表明该逐笔委托消息的订单类型是状态订单,那么,由于属于状态订单的逐笔委托消息与价格档位信息无关,因此,可以直接提取逐笔委托消息中所表征的状态信息和时间戳,用来更新行情快照中的状态信息和时间戳即可;若判断结果表明该逐笔委托消息的订单类型不是状态订单,那么,该逐笔委托消息的订单类型是增加委托订单或删除委托订单,此时,可以根据该逐笔委托消息中所包含的证券代码,选取待处理的目标证券。
当接收到的目标交易消息为逐笔成交消息时,可以直接从该逐笔成交消息中包含的证券代码,选取待处理的目标证券,从而确定在内存中该目标证券用于生成行情快照的常用信息的存储基地址。
S304,按照所述目标交易消息的消息类型,从所述目标交易消息中提取指定信息;其中,若所述目标交易消息的消息类型为逐笔委托类型,所述指定信息为订单类型、委托方向、委托价格和委托量;若所述目标交易消息的消息类型为逐笔成交类型,所述指定信息为成交价、成交量和买卖方向;所述买卖方向包括:买成交方向和卖成交方向中的一种;
若该目标交易消息的消息类型为逐笔委托消息,则从目标交易消息中提取表征订单类型、委托方向、委托价格和委托量的信息;若该目标交易消息为逐笔成交消息,则从目标交易消息中提取表征成交价、成交量和买卖方向的信息。可见,本发明实施例中,不需要提取目标交易消息中的订单号,也不需要根据目标交易消息中的订单号来查询和更新每一笔订单的信息数据。
S305,基于所述指定信息,修改所述目标证券的价格档位信息;其中,所述价格档位信息包括:各个买档位和各个卖档位所对应的委托价格,以及各个所述买档位和各个所述卖档位所对应的委托量;
当接收到的目标交易消息的消息类型为逐笔委托消息时,若逐笔委托消息不是状态订单消息,在一种实现方式中,所述指定信息包括所述逐笔委托消息中所包含的订单类型、委托方向、委托价格和委托量;所述委托方向包括:买委托方向和卖委托方向中的一种;
所述基于指定信息,修改所述目标证券的价格档位信息,可以包括步骤A1-A3:
步骤A1,根据所述委托价格以及所述委托方向,确定所述目标证券的价格档位信息中的待调整档位;所述待调整档位为各个买档位和各个卖档位中的、所对应委托价格与所述逐笔交易消息中的委托价格相匹配的档位;
当接收到逐笔委托消息时,可以根据委托方向确定是买委托方向和卖委托方向,从而确定要查找的是该目标证券的价格档位信息中的买档位还是卖档位,再从各个买档位或者卖档位中,根据委托价格找到与该委托价格相同的一档位,作为待调整档位。
步骤A21,若所述订单类型为增加委托订单,将所述待调整档位所对应的委托量与所述逐笔委托消息所表征的委托量相加,得到修改后的价格档位的委托量;
增加委托订单的委托价格可能是新出现的委托价格,此时,在该目标证券的价格档位信息中找不到与该委托价格和委托方向相同的档位,则可以在管理该目标证券的价格档位信息的内存地址上,增加一行表征该委托价格和委托方向的档位。若能够查找到待调整档位,将待调整档位所对应的委托量与逐笔委托消息所表征的委托量相加,得到修改后的价格档位的委托量。
步骤A22,若所述订单类型为删除委托订单,将所述待调整档位所对应的委托量与所述逐笔委托消息所表征的委托量相减,得到修改后的价格档位的委托量;
删除委托订单表明有投资者要撤销之前生成的委托订单,此时,可以根据委托方向和委托价格找到对应的待调整档位,将待调整档位所对应的委托量与逐笔委托消息所表征的委托量相减,得到修改后的价格档位的委托量。
步骤A3,基于所述修改后的价格档位的委托量,修改所述价格档位信息。
可以将待调整档位的委托量替换为修改后的价格档位的委托量,完成价格档位信息的修改。
可见,在收到逐笔委托消息时,本方案利用了增加委托订单或删除委托订单与价格档位信息中的委托价格、委托量之间的逻辑关系进行价格档位信息的更新,而不用查询和修改订单信息,并根据订单信息生成新的价格档位信息。因此,通过本方案,在接收到逐笔委托消息时,可以快速生成行情快照。
另外,当消息类型为逐笔成交消息时,所述指定信息包括:成交价、成交量和买卖方向;所述买卖方向包括:买方向和卖方向中的一种;
在一种实现方式中,所述基于指定信息,修改所述目标证券的价格档位信息,可以包括:
基于所述成交价、所述成交量和所述买卖方向,修改所述目标证券的价格档位信息。
收到逐笔成交消息代表着有一笔委托订单成交,这意味着价格档位信息中对应的买档位或卖档位中的委托量的减少。因此,同样地,可以利用成交价和买卖方向找到对应的待修改档位,再将该待修改档位的委托量与该逐笔成交消息中的成交量相减,从而修改目标证券的价格档位信息。
可见,在收到逐笔成交消息时,本方案利用了逐笔成交消息中的成交价、成交量与价格档位信息中的委托价格和委托量之间的逻辑关系进行价格档位信息的更新,而不用查询和修改订单信息,并根据订单信息生成新的价格档位信息。因此,通过本方案,在接收到逐笔成交消息时,可以快速生成行情快照。
S306,根据修改后的所述价格档位信息,生成所述目标证券的行情快照。
行情快照一般包含时间戳、总成交量、总成交价、最高价、最低价、开盘价,还有预定数量档买档位的最高价、卖档位的最低价,以及对应的委托量。其中,时间戳、总成交量、总成交价、最高价、最低价、开盘价的生成容易处理,本发明实施例不做改进。预定数量个买档位的最高价、卖档位的最低价则可以根据上述的修改后的所述证券价格档位信息来生成。
在一种实现方式中,根据修改后的所述价格档位信息,生成所述目标证券的行情快照,可以包括步骤B1-B2:
步骤B1,将所述价格档位信息中委托量不为0的买档位,按照对应的委托价格从高到低排序,并将所述价格档位信息中委托量不为0的卖档位,按照对应的委托价格从低到高排序;
步骤B2,利用排序最高的预定数量行买档位的委托价格及对应的委托量,以及排序最高的预定数量行卖档位的委托价格及对应的委托量,生成所述目标证券的行情快照。
可见,将证券价格档位信息中委托量不为0的买档位,按照对应的委托价格从高到低排序,并将证券价格档位信息中委托量不为0的卖档位,按照对应的委托价格从低到高排序,就能得到行情快照中的预定数量个买档位的最高价、卖档位的最低价,从而快速生成目标证券的行情快照。
本发明实施例提供的行情快照的生成方法,先接收来自交易所的目标交易消息;确定目标交易消息中所包含的证券代码以及目标交易消息的消息类型;选取具有该证券代码的目标证券;按照目标交易消息的消息类型,从目标交易消息中提取指定信息;其中,若目标交易消息的消息类型为逐笔委托类型,指定信息为订单类型、委托方向、委托价格和委托量;若目标交易消息的消息类型为逐笔成交类型,指定信息为成交价、成交量和买卖方向;最后基于指定信息,修改目标证券的价格档位信息;从而根据修改后的所述价格档位信息,生成目标证券的行情快照。可见,本方案中,利用了交易消息中的指定信息与价格档位信息中的委托价格、委托量的逻辑关系,直接修改目标证券的价格档位信息,而不用查询和修改订单信息,并根据订单信息生成新的价格档位信息。因此,通过本方案可以解决生成行情快照所要处理的数据量大,数据结构复杂,从而拖慢机构投资者的服务器的处理速度的问题。
可选的,在本发明的另一实施例中,所述消息类型为集中竞价阶段的逐笔成交消息;
集中竞价交易是证券交易所内进行证券买卖的一种交易方式,一般是指二个以上的买方和二个以上的卖方通过公开竞价的形式来确定成交价的情形。可以通过时间戳来判断所接受到的逐笔成交消息是否是集中竞价阶段的,例如,在一些交易所,生成的时间戳在9:30以前的逐笔成交消息为集中竞价阶段的逐笔成交消息。
若所述买卖方向包括买方向,所述目标证券的价格档位信息的修改方式,可以包括步骤C1-C3:
步骤C1,确定所述目标证券的价格档位信息中的指定买档位的委托价格,以及所述指定买档位的委托量;其中,所述指定买档位为所述目标证券的价格档位信息中委托价格最高,且委托量不为0的买档位;
竞价阶段的成交价是由交易所根据一定时间段内的全部委托订单的委托价和委托量,计算得到的。当接收到集中竞价阶段的逐笔成交消息后,可以先处理价格档位信息中委托价格最高,且委托量不为0的买档位。
步骤C2,判断所述指定买档位的委托价格是否大于等于所述成交价;
步骤C21,若否,则等待预定的固定时间,重新确定所述目标证券的指定买档位的委托价格以及指定买档位的委托量;
指定买档位是最高的委托价格,正常情况下是肯定大于或等于成交价的,若小于,则说明有延迟导致还没有接收到委托价格最高的逐笔委托消息,此时,可以等待预定的固定时间,例如100ms,期间可以接收最新的逐笔委托消息,再重新确定目标证券的指定买档位的委托价格以及指定买档位的委托量。
步骤C22,若是,则基于所述指定买档位的委托量与所述成交量的差值,得到第一差值结果;其中,所述第一差值结果为指定买档位剩余的委托量,以及所述成交量的剩余量;
步骤C3,基于所述第一差值结果,更新所述指定买档位的委托价格,以及所述指定买档位的委托量;
可以理解的,若计算后指定买档位的委托量被扣完,此时也需要重新确定指定买档位的委托价格及委托量。可以再次查询出目标证券的价格档位信息中委托价格最高,且委托量不为0的买档位。
在一种实现方式中,所述基于所述第一差值结果,更新所述指定买档位的委托价格,以及所述指定买档位的委托量,可以包括:
若所述指定买档位的委托量大于所述成交量,则确定所述成交量的剩余量为0,所述指定买档位剩余的委托量为所述指定买档位的委托量与所述成交量的差值,并将所述指定买档位剩余的委托量作为更新后的所述指定买档位的委托量;
由于在集中竞价阶段,会有委托价格大于或等于成交价的多笔订单成交,即,价格档位信息中可能会有多个档位的委托量需要被修改,因此,可以不断判断指定买档位的委托量是否大于所述成交量,若大于,则确定所述成交量的剩余量为0。
若所述指定买档位的委托量小于所述成交量,则确定所述成交量的剩余量为所述指定买档位的委托量与所述成交量的差值,并返回确定所述目标证券的指定买档位的价格以及指定买档位的委托量的步骤,直至所述成交量的剩余量为0。
若所述买卖方向包括卖方向,所述目标证券的价格档位信息的修改方式,可以包括步骤D1-D3:
步骤D1,确定所述目标证券的价格档位信息中的指定卖档位的委托价格,以及所述指定卖档位的委托量;其中,所述指定卖档位为所述目标证券的价格档位信息中委托价格最低,且委托量不为0的卖档位;
步骤D2,判断所述指定卖档位的委托价格是否小于等于所述成交价;
步骤D21,若否,则等待预定的固定时间,重新确定所述目标证券的指定卖档位的委托价格以及指定卖档位的委托量;
步骤D22,若是,则基于所述指定买档位的委托量与所述成交量的差值,得到第二差值结果;其中,所述第二差值结果为指定卖档位剩余的委托量,以及所述成交量的剩余量;
步骤D3,基于所述第二差值结果,更新所述指定卖档位的委托价格,以及所述指定卖档位的委托量。
类似地,在一种实现方式中,所述基于所述第二差值结果,更新所述指定卖档位的价格,以及所述指定卖档位的委托量,可以包括:
若所述指定卖档位的委托量大于所述成交量,则确定所述成交量的剩余量为0,所述指定卖档位剩余的委托量为所述指定卖档位的委托量与所述成交量的差值,并将所述指定卖档位剩余的委托量作为更新后的所述指定卖档位的委托量;
若所述指定卖档位的委托量小于所述成交量,则确定所述成交量的剩余量为所述指定买档位的委托量与所述成交量的差值,并返回确定所述目标证券的指定卖档位的价格以及指定卖档位的委托量的步骤,直至所述成交量的剩余量为0。
指定卖档位处理方式与指定买档位的处理方式类似,在此不再赘述。
可见,本实施例中,利用了集中竞价阶段的成交价、成交量与价格档位信息中的委托价格和委托量之间的逻辑关系进行价格档位信息的更新,而不用查询和修改订单信息,并根据订单信息生成新的价格档位信息。因此,通过本方案,在接收到集中竞价阶段的逐笔成交消息时,可以快速生成行情快照。
在本发明的另一实施例中,所述消息类型为连续竞价阶段的逐笔成交消息;
在连续竞价阶段,会对每一笔买、卖的委托订单产生成交价。当接收到连续竞价阶段的逐笔成交消息时,可以先判断买卖方向。
若所述买卖方向包括买方向,所述目标证券的价格档位信息的修改方式,可以包括步骤E1-E2:
步骤E1,根据所述成交价,确定所述目标证券的价格档位信息中的目标买档位以及所述目标买档位对应的目标买委托量;其中,所述目标买档位为各个买档位中的、所对应委托价格与所述成交价相匹配的档位;
在连续竞价阶段,买方向的逐笔成交是由投资者根据目前卖档位的委托价格和委托量,来决定该笔成交订单的成交价和成交量。成交后,交易所会向结构投资者服务器发送该笔订单的逐笔成交消息,确定该逐笔委托信息中的成交价后,可以根据成交价找到价格档位信息中的目标卖档位。
步骤E2,将所述目标买委托量与所述成交量相减,得到修改后的所述目标买档位对应的目标委托量;
在该步骤中,还可以先比较目标买委托量与成交量的大小,由于实际情况下买成交量不可能大于买委托量,因此,若目标买委托量小于成交量,则说明系统出现错误,此时也可以等待固定的时间后,重新确定目标买档位以及对应的目标买委托量。
类似地,若所述买卖方向包括卖方向,所述目标证券的价格档位信息的修改方式,可以包括步骤F1-F2:
步骤F1,根据所述成交价,确定所述目标证券的价格档位信息中的目标卖档位以及所述目标卖档位对应的目标卖委托量;其中,所述目标卖档位为各个卖档位中的、所对应委托价格与所述成交价相匹配的档位;
步骤F2,将所述目标卖委托量与所述成交量相减,得到修改后的所述目标卖档位对应的目标委托量。
卖方向的逐笔成交是也由投资者根据目前买档位的委托价格和委托量,来决定该笔成交订单的成交价和成交量,处理过程与买方向类似,在此不再赘述。
可见,本实施例中,利用了连续竞价阶段的成交价、成交量与价格档位信息中的委托价格和委托量之间的逻辑关系进行价格档位信息的更新,而不用查询和修改订单信息,并根据订单信息生成新的价格档位信息。因此,通过本方案,在接收到连续竞价阶段的逐笔成交消息时,可以快速生成行情快照。
为了方便理解,下面结合图4-图5对本发明实施例所提供的一种行情快照的生成方法进行示例性介绍。
如图4所示,针对逐笔委托消息后,处理步骤可以包括:
101.机构投资者的服务器持续接收逐笔委托消息;
102.判断订单类型是否是状态订单;
若是,则跳转到步骤110.从逐笔委托消息中提取状态和时间戳;111.更新状态和时间戳字段,即,用提取的状态和时间戳信息覆盖内存中的状态和时间戳;若否,则跳转到步骤103;
103.从逐笔委托消息中提取出证券代码、委托价格、委托量、委托方向和时间戳等信息;
104.从内存中检索并读出证券代码对应的档位和委托量,例如,可以根据证券代码算出目标证券的价格档位信息内存中的存储基地址,再根据委托价格和委托方向,算出对应的待调整的档位和委托量的偏移地址;
105.判断是增加订单还是删除订单,即判断订单类型,若是增加委托订单,则跳至步骤106.增加委托量,即,将价格档位信息中对应的委托量与逐笔委托消息中的委托量相加,得到新委托量;若是删除委托订单,则跳至步骤107.扣减委托量,即,将价格档位信息中对应的委托量与逐笔委托消息中的委托量相减,得到修改后的委托量;
108.更新委托量,即,将修改后的委托量写入内存,完成委托量更新;
109.更新时间戳,即,将逐笔委托中的时间戳写入内存,完成时间戳更新;
112.结束本次逐笔委托消息的处理。
如图5所示,在针对逐笔成交消息后,处理步骤依次如下:
201.持续接收逐笔成交消息;
202.从逐笔成交消息中提取证券代码、成交价、成交量、买卖方向和时间戳等信息;
203.从内存读取证券代码对应的总成交量、总成交额、最新价和时间戳等信息;
可以根据证券代码算出目标证券的价格档位信息内存中的存储基地址,并读取总成交量、总成交额、最新价和时间戳等字段;
204.计算新的总成交量、总成交额,并把总成交量、总成交额、最新价和时间戳一并更新;
205.判断是否是集中竞价阶段;若为集中竞价阶段,则跳转到步骤206和212(两个步骤同时执行,无优先级);
212.从内存中读取买1档价格及委托量;即,指定买档位的委托价格及委托量;
213.判断买1档价格是否大于等于成交价;
若是,则跳到步骤214.扣减买1挡委托量,具体的,可以判断成交量是否小于买1档的委托量;若是,则新委托量等于委托量减去成交量,成交量的剩余量变为0;若否,则新委托量等于0,成交量的剩余量等于成交量减去委托量;
若否,则跳到步骤229.等待固定时间后,跳转至步骤212.从内存中读取买1档价格和委托量;
215.更新买1档的价格和委托量;
216.判断逐笔成交消息是否处理完成(即,检查成交量的剩余量是否为0);若否,则跳到步骤229;若是,则跳到步骤217.等待买卖双边均更新完成;
206.从内存中读取卖1档价格和委托量,即,指定卖档位的委托价格和委托量;
207.判断卖1档价格是否小于等于成交价;
若是,则跳到步骤208.扣减卖1档委托量,具体的,可以判断成交量是否小于卖1档的委托量;若是,则新委托量等于委托量减去成交量,成交量的剩余量变为0;若否,则新委托量等于0,成交量的剩余量等于成交量减去委托量;
若否,则跳到步骤211.等待固定时间,再跳转至步骤206.从内存中读取卖1档价格和委托量;
209.更新卖1档的价格和委托量;
210.判断逐笔成交消息是否处理完成(即,检查成交量的剩余量是否为0);若否,则跳到步骤211.等待固定时间,再跳转至步骤206.从内存中读取卖1档价格和委托量;若是,则跳到步骤217.等待买卖双边均更新完成;
若不是集中竞价阶段,则为连续竞价阶段,此时执行步骤如下:
218.判断买卖方向;若为买方向,则跳转到步骤224.从内存中读取对应卖委托量,即成交价对应的卖档位的委托量;若为卖方向,则跳转到步骤219.从内存中读取对应买委托量,即成交价对应的买档位的委托量;
225.判断卖委托量是否大于等于成交量,若是,则跳转到步骤226.扣减卖委托量,即卖委托量与成交量相减,得到新的卖委托量;227.更新卖委托量;若否,则跳转到步骤228.等待固定时间,再跳转至步骤224.从内存读取对应卖委托量;
220.判断买委托量是否大于等于成交量,若是,则跳至步骤221.扣减买委托量,即买委托量与成交量相减,得到新的买委托量;222.更新买委托量;若否,则跳至步骤223.等待固定时间,再跳转至步骤219.从内存中读取对应买委托量;
230.结束本次逐笔成交消息的处理。
本发明实施例提供的行情快照的生成方法,先接收来自交易所的目标交易消息;确定目标交易消息中所包含的证券代码以及目标交易消息的消息类型;选取具有该证券代码的目标证券;按照目标交易消息的消息类型,从目标交易消息中提取指定信息;其中,若目标交易消息的消息类型为逐笔委托类型,指定信息为订单类型、委托方向、委托价格和委托量;若目标交易消息的消息类型为逐笔成交类型,指定信息为成交价、成交量和买卖方向;最后基于指定信息,修改目标证券的价格档位信息;从而根据修改后的所述价格档位信息,生成目标证券的行情快照。可见,本方案中,利用了交易消息中的指定信息与价格档位信息中的委托价格、委托量的逻辑关系,直接修改目标证券的价格档位信息,而不用查询和修改订单信息,并根据订单信息生成新的价格档位信息。因此,通过本方案可以解决生成行情快照所要处理的数据量大,数据结构复杂,从而拖慢机构投资者的服务器的处理速度的问题。
本发明实施例还提供了一种行情快照的生成装置,如图6所示,该装置包括:
接收模块610,用于接收来自交易所的目标交易消息;
确定模块620,用于确定所述目标交易消息中所包含的证券代码以及所述目标交易消息的消息类型;
选取模块630,用于选取具有所述证券代码的目标证券;
提取模块640,用于按照所述目标交易消息的消息类型,从所述目标交易消息中提取指定信息;其中,若所述目标交易消息的消息类型为逐笔委托类型,所述指定信息为订单类型、委托方向、委托价格和委托量;若所述目标交易消息的消息类型为逐笔成交类型,所述指定信息为成交价、成交量和买卖方向;所述买卖方向包括:买成交方向和卖成交方向中的一种;
修改模块650,用于基于所述指定信息,修改所述目标证券的价格档位信息;其中,所述价格档位信息包括:各个买档位和各个卖档位所对应的委托价格,以及各个所述买档位和各个所述卖档位所对应的委托量;
生成模块660,用于根据修改后的所述价格档位信息,生成所述目标证券的行情快照。
可选地,所述消息类型为逐笔委托消息,所述修改模块包括:
确定子模块,用于根据所述委托价格以及所述委托方向,确定所述目标证券的价格档位信息中的待调整档位;所述待调整档位为各个买档位和各个卖档位中的、所对应委托价格与所述逐笔交易消息中的委托价格相匹配的档位;
相加子模块,用于若所述订单类型为增加委托订单,将所述待调整档位所对应的委托量与所述逐笔委托消息所表征的委托量相加,得到修改后的价格档位的委托量;
相减子模块,用于若所述订单类型为删除委托订单,将所述待调整档位所对应的委托量与所述逐笔委托消息所表征的委托量相减,得到修改后的价格档位的委托量;
修改子模块,用于基于所述修改后的价格档位的委托量,修改所述价格档位信息。
可选地,所述消息类型为集中竞价阶段的逐笔成交消息;
若所述买卖方向包括买方向,所述修改模块具体用于:
确定所述目标证券的价格档位信息中的指定买档位的委托价格,以及所述指定买档位的委托量;其中,所述指定买档位为所述目标证券的价格档位信息中委托价格最高,且委托量不为0的买档位;
判断所述指定买档位的委托价格是否大于等于所述成交价;
若否,则等待预定的固定时间,重新确定所述目标证券的指定买档位的委托价格以及指定买档位的委托量;
若是,则基于所述指定买档位的委托量与所述成交量的差值,得到第一差值结果;其中,所述第一差值结果为指定买档位剩余的委托量,以及所述成交量的剩余量;
基于所述第一差值结果,更新所述指定买档位的委托价格,以及所述指定买档位的委托量;
若所述买卖方向包括卖方向,所述修改模块具体用于:
确定所述目标证券的价格档位信息中的指定卖档位的委托价格,以及所述指定卖档位的委托量;其中,所述指定卖档位为所述目标证券的价格档位信息中委托价格最低,且委托量不为0的卖档位;
判断所述指定卖档位的委托价格是否小于等于所述成交价;
若否,则等待预定的固定时间,重新确定所述目标证券的指定卖档位的委托价格以及指定卖档位的委托量;
若是,则基于所述指定买档位的委托量与所述成交量的差值,得到第二差值结果;其中,所述第二差值结果为指定卖档位剩余的委托量,以及所述成交量的剩余量;
基于所述第二差值结果,更新所述指定卖档位的委托价格,以及所述指定卖档位的委托量。
可选地,所述修改模块基于所述第一差值结果,更新所述指定买档位的委托价格,以及所述指定买档位的委托量,包括:
若所述指定买档位的委托量大于所述成交量,则确定所述成交量的剩余量为0,所述指定买档位剩余的委托量为所述指定买档位的委托量与所述成交量的差值,并将所述指定买档位剩余的委托量作为更新后的所述指定买档位的委托量;
若所述指定买档位的委托量小于所述成交量,则确定所述成交量的剩余量为所述指定买档位的委托量与所述成交量的差值,并返回确定所述目标证券的指定买档位的价格以及指定买档位的委托量的步骤,直至所述成交量的剩余量为0。
所述基于所述第二差值结果,更新所述指定卖档位的价格,以及所述指定卖档位的委托量,包括:
若所述指定卖档位的委托量大于所述成交量,则确定所述成交量的剩余量为0,所述指定卖档位剩余的委托量为所述指定卖档位的委托量与所述成交量的差值,并将所述指定卖档位剩余的委托量作为更新后的所述指定卖档位的委托量;
若所述指定卖档位的委托量小于所述成交量,则确定所述成交量的剩余量为所述指定买档位的委托量与所述成交量的差值,并返回确定所述目标证券的价格档位信息中的指定卖档位的委托价格,以及所述指定卖档位的委托量的步骤,直至所述成交量的剩余量为0。
可选地,所述消息类型为连续竞价阶段的逐笔成交消息;
若所述买卖方向包括买方向,所述修改模块具体用于:
根据所述成交价,确定所述目标证券的价格档位信息中的目标买档位以及所述目标买档位对应的目标买委托量;其中,所述目标买档位为各个买档位中的、所对应委托价格与所述成交价相匹配的一档位;
将所述目标买委托量与所述成交量相减,得到修改后的所述目标买档位对应的目标委托量;
若所述买卖方向包括卖方向,所述修改模块具体用于:
根据所述成交价,确定所述目标证券的价格档位信息中的目标卖档位以及所述目标卖档位对应的目标卖委托量;其中,所述目标卖档位为各个卖档位中的、所对应委托价格与所述成交价相匹配的一档位;
将所述目标卖委托量与所述成交量相减,得到修改后的所述目标卖档位对应的目标委托量。
可选地,所述生成子模块,包括:
排序子模块,用于将所述价格档位信息中委托量不为0的买档位,按照对应的委托价格从高到低排序,并将所述价格档位信息中委托量不为0的卖档位,按照对应的委托价格从低到高排序;
生成子模块,用于利用排序最高的预定数量行买档位的委托价格及对应的委托量,以及排序最高的预定数量行卖档位的委托价格及对应的委托量,生成所述目标证券的行情快照。
本发明实施例还提供了一种电子设备,如图7所示,包括处理器701、通信接口702、存储器703和通信总线704,其中,处理器701,通信接口702,存储器703通过通信总线704完成相互间的通信,
存储器703,用于存放计算机程序;
处理器701,用于执行存储器703上所存放的程序时,实现上述行情快照的生成方法。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述行情快照的生成方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中行情快照的生成方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (9)
1.一种行情快照的生成方法,其特征在于,所述方法包括:
接收来自交易所的目标交易消息;
确定所述目标交易消息中所包含的证券代码以及所述目标交易消息的消息类型;
选取具有所述证券代码的目标证券;
按照所述目标交易消息的消息类型,从所述目标交易消息中提取指定信息;其中,若所述目标交易消息的消息类型为逐笔委托类型,所述指定信息为订单类型、委托方向、委托价格和委托量;若所述目标交易消息的消息类型为逐笔成交类型,所述指定信息为成交价、成交量和买卖方向;所述买卖方向包括:买成交方向和卖成交方向中的一种;
基于所述指定信息,修改所述目标证券的价格档位信息;其中,所述价格档位信息包括:各个买档位和各个卖档位所对应的委托价格,以及各个所述买档位和各个所述卖档位所对应的委托量;
根据修改后的所述价格档位信息,生成所述目标证券的行情快照。
2.根据权利要求1所述的方法,其特征在于,所述消息类型为逐笔委托消息,所述基于所述指定信息,修改所述目标证券的价格档位信息,包括:
根据所述委托价格以及所述委托方向,确定所述目标证券的价格档位信息中的待调整档位;所述待调整档位为各个买档位和各个卖档位中的、所对应委托价格与所述逐笔交易消息中的委托价格相匹配的档位;
若所述订单类型为增加委托订单,将所述待调整档位所对应的委托量与所述逐笔委托消息所表征的委托量相加,得到修改后的价格档位的委托量;若所述订单类型为删除委托订单,将所述待调整档位所对应的委托量与所述逐笔委托消息所表征的委托量相减,得到修改后的价格档位的委托量;
基于所述修改后的价格档位的委托量,修改所述价格档位信息。
3.根据权利要求1所述的方法,其特征在于,所述消息类型为集中竞价阶段的逐笔成交消息;
若所述买卖方向包括买方向,所述目标证券的价格档位信息的修改方式包括:
确定所述目标证券的价格档位信息中的指定买档位的委托价格,以及所述指定买档位的委托量;其中,所述指定买档位为所述目标证券的价格档位信息中委托价格最高,且委托量不为0的买档位;
判断所述指定买档位的委托价格是否大于等于所述成交价;
若否,则等待预定的固定时间,重新确定所述目标证券的指定买档位的委托价格以及指定买档位的委托量;
若是,则基于所述指定买档位的委托量与所述成交量的差值,得到第一差值结果;其中,所述第一差值结果为指定买档位剩余的委托量,以及所述成交量的剩余量;
基于所述第一差值结果,更新所述指定买档位的委托价格,以及所述指定买档位的委托量;
若所述买卖方向包括卖方向,所述目标证券的价格档位信息的修改方式包括:
确定所述目标证券的价格档位信息中的指定卖档位的委托价格,以及所述指定卖档位的委托量;其中,所述指定卖档位为所述目标证券的价格档位信息中委托价格最低,且委托量不为0的卖档位;
判断所述指定卖档位的委托价格是否小于等于所述成交价;
若否,则等待预定的固定时间,重新确定所述目标证券的指定卖档位的委托价格以及指定卖档位的委托量;
若是,则基于所述指定买档位的委托量与所述成交量的差值,得到第二差值结果;其中,所述第二差值结果为指定卖档位剩余的委托量,以及所述成交量的剩余量;
基于所述第二差值结果,更新所述指定卖档位的委托价格,以及所述指定卖档位的委托量。
4.根据权利要求3所述的方法,其特征在于,所述基于所述第一差值结果,更新所述指定买档位的委托价格,以及所述指定买档位的委托量,包括:
若所述指定买档位的委托量大于所述成交量,则确定所述成交量的剩余量为0,所述指定买档位剩余的委托量为所述指定买档位的委托量与所述成交量的差值,并将所述指定买档位剩余的委托量作为更新后的所述指定买档位的委托量;
若所述指定买档位的委托量小于所述成交量,则确定所述成交量的剩余量为所述指定买档位的委托量与所述成交量的差值,并返回确定所述目标证券的指定买档位的价格以及指定买档位的委托量的步骤,直至所述成交量的剩余量为0;
所述基于所述第二差值结果,更新所述指定卖档位的价格,以及所述指定卖档位的委托量,包括:
若所述指定卖档位的委托量大于所述成交量,则确定所述成交量的剩余量为0,所述指定卖档位剩余的委托量为所述指定卖档位的委托量与所述成交量的差值,并将所述指定卖档位剩余的委托量作为更新后的所述指定卖档位的委托量;
若所述指定卖档位的委托量小于所述成交量,则确定所述成交量的剩余量为所述指定买档位的委托量与所述成交量的差值,并返回确定所述目标证券的价格档位信息中的指定卖档位的委托价格,以及所述指定卖档位的委托量的步骤,直至所述成交量的剩余量为0。
5.根据权利要求1所述的方法,其特征在于,所述消息类型为连续竞价阶段的逐笔成交消息;
若所述买卖方向包括买方向,所述目标证券的价格档位信息的修改方式包括:
根据所述成交价,确定所述目标证券的价格档位信息中的目标买档位以及所述目标买档位对应的目标买委托量;其中,所述目标买档位为各个买档位中的、所对应委托价格与所述成交价相匹配的一档位;
将所述目标买委托量与所述成交量相减,得到修改后的所述目标买档位对应的目标委托量;
若所述买卖方向包括卖方向,所述目标证券的价格档位信息的修改方式包括:
根据所述成交价,确定所述目标证券的价格档位信息中的目标卖档位以及所述目标卖档位对应的目标卖委托量;其中,所述目标卖档位为各个卖档位中的、所对应委托价格与所述成交价相匹配的档位;
将所述目标卖委托量与所述成交量相减,得到修改后的所述目标卖档位对应的目标委托量。
6.根据权利要求1-5任一项所述的方法,其特征在于,根据修改后的所述价格档位信息,生成所述目标证券的行情快照,包括:
将所述价格档位信息中委托量不为0的买档位,按照对应的委托价格从高到低排序,并将所述价格档位信息中委托量不为0的卖档位,按照对应的委托价格从低到高排序;
利用排序最高的预定数量行买档位的委托价格及对应的委托量,以及排序最高的预定数量行卖档位的委托价格及对应的委托量,生成所述目标证券的行情快照。
7.一种行情快照的生成装置,其特征在于,所述装置包括:
接收模块,用于接收来自交易所的目标交易消息;
确定模块,用于确定所述目标交易消息中所包含的证券代码以及所述目标交易消息的消息类型;
选取模块,用于选取具有所述证券代码的目标证券;
提取模块,用于按照所述目标交易消息的消息类型,从所述目标交易消息中提取指定信息;其中,若所述目标交易消息的消息类型为逐笔委托类型,所述指定信息为订单类型、委托方向、委托价格和委托量;若所述目标交易消息的消息类型为逐笔成交类型,所述指定信息为成交价、成交量和买卖方向;所述买卖方向包括:买成交方向和卖成交方向中的一种;
修改模块,用于基于所述目标交易消息中所包含的指定信息,修改所述目标证券的价格档位信息;其中,所述价格档位信息包括:各个买档位和各个卖档位所对应的委托价格,以及各个所述买档位和各个所述卖档位所对应的委托量;
生成模块,用于根据修改后的所述价格档位信息,生成所述目标证券的行情快照。
8.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210645563.0A CN114926253A (zh) | 2022-06-08 | 2022-06-08 | 行情快照的生成方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210645563.0A CN114926253A (zh) | 2022-06-08 | 2022-06-08 | 行情快照的生成方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114926253A true CN114926253A (zh) | 2022-08-19 |
Family
ID=82811969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210645563.0A Pending CN114926253A (zh) | 2022-06-08 | 2022-06-08 | 行情快照的生成方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114926253A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115168280A (zh) * | 2022-08-30 | 2022-10-11 | 珠海星云智联科技有限公司 | 行情快照的处理方法及相关装置 |
-
2022
- 2022-06-08 CN CN202210645563.0A patent/CN114926253A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115168280A (zh) * | 2022-08-30 | 2022-10-11 | 珠海星云智联科技有限公司 | 行情快照的处理方法及相关装置 |
CN115168280B (zh) * | 2022-08-30 | 2022-12-02 | 珠海星云智联科技有限公司 | 行情快照的处理方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7617128B2 (en) | Online transaction hosting apparatus and system | |
US20110112869A1 (en) | Online transaction hosting apparatus and method | |
EP3582112B1 (en) | Optimized data structure | |
US11126480B2 (en) | Conservation of electronic communications resources and computing resources via selective processing of substantially continuously updated data | |
CN112000675A (zh) | 行情数据更新方法、装置、终端设备及存储介质 | |
JP7165788B2 (ja) | 取引所のイベントおよび動作に関連するメッセージを使用するプログラム間通信 | |
CN112950311A (zh) | 一种电商化企业采购解决方法和装置 | |
CN114926253A (zh) | 行情快照的生成方法、装置及电子设备 | |
JP6294193B2 (ja) | 取引管理システムおよび取引管理方法 | |
JP2001249962A (ja) | 指数決定方法、株式市況指数決定方法、指数売買方法、指数決定装置、及び記録媒体 | |
CN116402583A (zh) | 一种订单处理方法、装置、存储介质及设备 | |
JP2017120666A (ja) | 金融商品取引管理装置、金融商品取引管理システム、金融商品取引管理システムにおける金融商品取引管理方法 | |
CN116167857A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN114022258A (zh) | 一种拍卖交易方法、智能拍卖平台及存储介质 | |
JP2009176174A (ja) | オークション代行サーバ装置、およびオークション代行方法 | |
KR102380375B1 (ko) | 온라인 차량 구매 희망자의 서비스 이용 기록을 참조하여 구매자 중심으로 차량을 거래하기 위한 방법 및 이를 이용한 서버 | |
CN108154431B (zh) | 一种标的募集状态处理方法及装置 | |
CN112131251A (zh) | 竞价交易方法、装置、可读存储介质及电子设备 | |
JP2021018796A (ja) | 金融商品取引管理装置、金融商品取引管理システム、プログラム | |
JP2021018736A (ja) | 金融商品取引管理装置、金融商品取引管理システム、プログラム | |
CN112597181B (zh) | 一种连环单查找方法及装置 | |
KR20200001190A (ko) | 오픈 마켓 상품에 대한 품절 관리 방법 및 시스템 | |
JP7547020B2 (ja) | 株式取引管理システム | |
US11501354B2 (en) | Information processing apparatus for searching database | |
JP5586971B2 (ja) | Vwap取引市場システムおよびvwap取引方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |