CN110929380A - 一种模拟炒股撮合系统和装置 - Google Patents
一种模拟炒股撮合系统和装置 Download PDFInfo
- Publication number
- CN110929380A CN110929380A CN201911022280.5A CN201911022280A CN110929380A CN 110929380 A CN110929380 A CN 110929380A CN 201911022280 A CN201911022280 A CN 201911022280A CN 110929380 A CN110929380 A CN 110929380A
- Authority
- CN
- China
- Prior art keywords
- matching
- server
- queue
- order
- routing
- 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
- 238000004088 simulation Methods 0.000 title claims abstract description 17
- 238000004806 packaging method and process Methods 0.000 claims description 9
- 238000000034 method Methods 0.000 abstract description 12
- 230000008569 process Effects 0.000 abstract description 8
- 230000008859 change Effects 0.000 description 8
- 238000005192 partition Methods 0.000 description 4
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- 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
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- Databases & Information Systems (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Technology Law (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Operations Research (AREA)
- Human Resources & Organizations (AREA)
- Game Theory and Decision Science (AREA)
- Computational Linguistics (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种模拟炒股撮合系统,包括路由服务器、至少一台撮合服务器和数据库服务器,路由服务器用于接收买卖单、根据买卖单生成订单消息并分配至一台撮合服务器,撮合服务器用于根据订单消息与实时行情进行撮合交易,并将交易数据发送给数据库服务器,数据库服务器用于根据交易数据修改并保存用户信息;撮合服务器配置有行情缓存、资金账户缓存和持仓缓存;该系统利用消息队列的异步处理模式,以缓解高峰流量期间I/O阻塞造成的系统承压能力;通过消息队列进行数据流转,各处理过程解耦,将现有技术中集中于数据库服务器的功能模块划分至其他服务器处理;本发明还公开了一种包含该撮合系统的装置。
Description
技术领域
本发明涉及虚拟金融交易系统领域,具体涉及一种模拟炒股撮合系统和装置。
背景技术
投资有风险,入市需谨慎,因此对于刚入门的投资者来说,需要学习投资技巧和提高投资心理素质。模拟炒股系统提供真实的股市行情场景,股票投资者在其中进行仿真度很高的虚拟交易,可以获得接近真实的炒股体验。
模拟炒股系统由前端软件和后台组成,用户通过安装在电脑或者手机上的软件进行炒股的各项操作,比如行情查询、实时买入、预约买入、实时卖出、预约卖出、撤销等,操作指令通过网络发送至后台的服务器进行交易处理。后台服务器存有用户的虚拟账户信息,如资金信息、交易记录、股票持仓信息等,并且服务器还会实时导入真实的股市行情信息,当用户根据实时行情下单进行买卖交易时,服务器会根据买卖单与实时行情进行匹对,满足交易条件的买卖单会被撮合成交。
目前的模拟炒股撮合系统大多是基于扫描数据库表的方式进行撮合成交的。用户下的买卖单被存入数据库,撮合系统每隔几秒扫描买卖单表并根据当前行情中的价和量进行匹对,若达到双方成交条件则撮合成交。这种每隔几秒扫描买卖单表进行撮合的方式非常依赖于数据库的处理能力,因为用户下单时需读写买卖单表,撮合成交也需读写买卖单表。随着用户买卖单的数量不断增加,撮合成交能力就会出现性能瓶颈,尤其是集合竞价阶段要撮合大量的买卖单,从而不能满足互联网下大量用户买卖单的撮合成交需求,用户最明显的体验是用户的操作指令响应严重延迟。
这种每隔几秒扫描买卖单表进行撮合的方式主要缺点有:每隔几秒扫描,不能及时进行撮合处理;买卖单表是查询、下单和撮合成交的热点表,容易造成锁表,尤其是开盘集合竞价阶段,读写性能出现瓶颈;数据库表容量有限,在这种撮合系统结构下,大量用户操作买卖单很容易达到系统承受上限,扩容成本高。
发明内容
本发明要解决的技术问题是:提供一种基于消息队列与高速缓存的模拟炒股撮合系统,改变传统的在数据库中全流程完成下单、交易、修改和保存记录的方式;本系统将现有技术中集中于数据库服务器的功能模块划分至其他服务器处理,以解耦交易处理过程,以提高在高峰流量期间I/O阻塞造成的系统承压能力;本发明还提供一种具有该模拟炒股撮合系统的装置。
一种模拟炒股撮合系统,包括路由服务器、至少一台撮合服务器和数据库服务器;
路由服务器用于接收买卖单、根据买卖单生成订单消息并分配至一台撮合服务器;
撮合服务器用于根据订单消息与实时行情进行撮合交易,并将交易数据发送给数据库服务器;
数据库服务器用于根据交易数据修改并保存用户信息;
以一个用户的买卖单为例:
用户在前端软件上填写买卖单,买卖单包含股票交易的各种买卖要素,如买卖方向类型、证券代码、买卖价格、买卖数量等,同时买卖单还包含用户ID、资金账号、拟交易股票代码等信息,买卖单在前端软件提交后,被发往路由服务器;
路由服务器将接收到的买卖单更新为订单消息,并根据路由算法将订单消息分配给一台撮合服务器;
然后路由服务器将该买卖单形成的订单消息根据路由算法被发送至一台撮合服务器请求处理;
撮合服务器将订单消息与实时行情进行比对,满足交易条件的撮合成交,并将交易数据发送给数据库服务器;
数据库服务器接收到交易数据后,将交易记录写入数据库,并修改该用户的信息,如资金信息、持股信息等。
优选的,撮合服务器配置有行情缓存,行情缓存用于存储实时股票行情信息;
这里的实时股票行情信息与股票交易所的行情信息是同步更新的,在本发明中进行的任何一笔虚拟交易都需要扫描行情信息进行比对撮合,因此将实时行情信息专门设置独立的物理缓存或缓存分区将有效提高撮合服务器的撮合效率。
优选的,撮合服务器还配置有资金账户缓存,资金账户缓存用于临时存储用户的资金账户余额信息。
优选的,撮合服务器还配置有持仓缓存,持仓缓存用于临时存储用户的股票持仓信息;
实时行情信息、资金账户余额信息和用户股票持仓信息是交易过程中最常用的变量信息,因而设计专属缓存可以有效地降低读写数据库的I/O压力,提高其并发读的效率以及缓存命中率。
优选的,撮合服务器安装有撮合程序和组包程序;
撮合程序用于将订单消息与实时行情进行比对,并将其中满足成交条件的订单信息更新为成交消息;
组包程序用于将成交消息分解生成多个数据库指令,并将数据库指令组包成为写库消息向数据库服务器发送;
组包程序将每个订单的交易信息被更新为包含交易流水、变更资金、变更持仓等SQL语句的SQL封包,每500单位的SQL封包被组装为一个SQL批量包,完成组包;
本实施例采用的是SQL数据库。
优选的,撮合服务器还配置有撮合队列和成交队列;
撮合队列用于接收和存储由路由服务器发送的订单消息,撮合程序遍历撮合队列中的订单消息与实时行情进行比对,并将成交消息写入成交队列;
未成交的订单消息将重新进入撮合队列等待下一轮撮合。
优选的,撮合服务器还配置有写库队列;
写库队列用于存储写库消息,即加载有SQL批量包的写库消息被存储于写库队列中,并根据组包程序的指令将写库消息定期批量向数据库服务器发送;
优选的,数据库服务器配置有入库队列并安装有入库程序;
入库队列用于接收写库消息,入库程序遍历入库队列中的写库消息,将写库消息中的数据库指令批量写入、修改数据库数据,这种批量SQL入库方式提高了每秒入库吞吐量,提升了写库效率。
优选的,路由服务器配置有路由队列并安装有路由程序;
这种方式适合于多台撮合服务器并行设置的系统中,路由队列用于接收和存储用户发送的大量买卖单,路由程序遍历路由队列中的买卖单生成订单消息,并根据各撮合服务器的负载状态进行路由分配。
本发明还公开了一种模拟炒股撮合装置,包括路由服务器、至少一台撮合服务器和数据库服务器;
路由服务器用于接收买卖单、根据买卖单生成订单消息并分配至一台撮合服务器;
撮合服务器用于根据订单消息与实时行情进行撮合交易,并将交易数据发送给数据库服务器;
数据库服务器用于根据交易数据修改并保存用户信息;
以一个用户的买卖单为例:
用户在前端软件上填写买卖单,买卖单包含股票交易的各种买卖要素,如买卖方向类型、证券代码、买卖价格、买卖数量等,同时买卖单还包含用户ID、资金账号、拟交易股票代码等信息,买卖单在前端软件提交后,被发往路由服务器;
路由服务器将接收到的买卖单更新为订单消息,并根据路由算法将订单消息分配给一台撮合服务器;
然后路由服务器将该买卖单形成的订单消息根据路由算法被发送至一台撮合服务器请求处理;
撮合服务器将订单消息与实时行情进行比对,满足交易条件的撮合成交,并将交易数据发送给数据库服务器;
数据库服务器接收到交易数据后,将交易记录写入数据库,并修改该用户的信息,如资金信息、持股信息等。
优选的,撮合服务器配置有行情缓存,行情缓存用于存储实时股票行情信息;
这里的实时股票行情信息与股票交易所的行情信息是同步更新的,在本发明中进行的任何一笔虚拟交易都需要扫描行情信息进行比对撮合,因此将实时行情信息专门设置独立的物理缓存或缓存分区将有效提高撮合服务器的撮合效率。
优选的,撮合服务器还配置有资金账户缓存,资金账户缓存用于临时存储用户的资金账户余额信息。
优选的,撮合服务器还配置有持仓缓存,持仓缓存用于临时存储用户的股票持仓信息;
实时行情信息、资金账户余额信息和用户股票持仓信息是交易过程中最常用的变量信息,因而设计专属缓存可以有效地降低读写数据库的I/O压力,提高其并发读的效率以及缓存命中率。
优选的,撮合服务器安装有撮合程序和组包程序;
撮合程序用于将订单消息与实时行情进行比对,并将其中满足成交条件的订单信息更新为成交消息;
组包程序用于将成交消息分解生成多个数据库指令,并将数据库指令组包成为写库消息向数据库服务器发送;
组包程序将每个订单的交易信息被更新为包含交易流水、变更资金、变更持仓等SQL语句的SQL封包,每500单位的SQL封包被组装为一个SQL批量包,完成组包;
本实施例采用的是SQL数据库。
优选的,撮合服务器还配置有撮合队列和成交队列;
撮合队列用于接收和存储由路由服务器发送的订单消息,撮合程序遍历撮合队列中的订单消息与实时行情进行比对,并将成交消息写入成交队列;
未成交的订单消息将重新进入撮合队列等待下一轮撮合。
优选的,撮合服务器还配置有写库队列;
写库队列用于存储写库消息,即加载有SQL批量包的写库消息被存储于写库队列中,并根据组包程序的指令将写库消息定期批量向数据库服务器发送;
优选的,数据库服务器配置有入库队列并安装有入库程序;
入库队列用于接收写库消息,入库程序遍历入库队列中的写库消息,将写库消息中的数据库指令批量写入、修改数据库数据,这种批量SQL入库方式提高了每秒入库吞吐量,提升了写库效率。
优选的,路由服务器配置有路由队列并安装有路由程序;
这种方式适合于多台撮合服务器并行设置的系统中,路由队列用于接收和存储用户发送的大量买卖单,路由程序遍历路由队列中的买卖单生成订单消息,并根据各撮合服务器的负载状态进行路由分配。
本发明的有益效果是,利用消息队列的异步处理模式,以缓解高峰流量期间I/O阻塞造成的系统承压能力;买卖单、成交消息、写库消息等在消息队列中流转,各处理过程解耦,利于功能模块划分;与现有技术相比,将流程分解之后,缓解了单个流程的处理能力瓶颈;通过路由程序对新生成的买卖单进行分配,缓解了单个撮合运算主机的压力,并可以通过增加撮合运算主机进行扩容,充分解决现有技术存在的缺陷;处理程序直接从对应缓存区调取所需,提高了并发读的效率以及缓存命中率。
附图说明
下面结合附图1-3对本发明一种模拟炒股撮合系统和装置作进一步说明。
图1是本发明一种模拟炒股撮合系统和装置的系统拓扑图。
图2是本发明一种模拟炒股撮合系统和装置的流程图。
图3是本发明一种模拟炒股撮合系统和装置的买卖单样例。
图中:
100-路由服务器,200-撮合服务器,300-数据库服务器,1-买卖单,11-订单消息,12-成交消息,13-写库消息,21-行情缓存,22-资金账户缓存,23-持仓缓存,31-撮合程序,32-组包程序,33-入库程序,34-路由程序,41-撮合队列,42-成交队列,43-写库队列,44-入库队列,45-路由队列。
本发明的术语说明:
撮合:指在多方交易中,存在中间一方将多方的信息集中起来,然后将信息进行匹配,以便达到多方对信息的需求。在本发明中,指撮合运算程序将多个用户的订单与实时行情集中处理,按照交易规则对买卖交易进行匹配。
具体实施方式
一种模拟炒股撮合系统,包括路由服务器100、至少一台撮合服务器200和数据库服务器300;
路由服务器100用于接收买卖单1、根据买卖单1生成订单消息11并分配至一台撮合服务器200;
撮合服务器200用于根据订单消息11与实时行情进行撮合交易,并将交易数据发送给数据库服务器300;
数据库服务器300用于根据交易数据修改并保存用户信息;
以一个用户的买卖单为例:
用户在前端软件上填写买卖单1,买卖单1包含股票交易的各种买卖要素,如买卖方向类型、证券代码、买卖价格、买卖数量等,同时买卖单1还包含用户ID、资金账号、拟交易股票代码等信息,买卖单1在前端软件提交后,被发往路由服务器100;
路由服务器100将接收到的买卖单1更新为订单消息11,并根据路由算法将订单消息11分配给一台撮合服务器200;
然后路由服务器100将该买卖单形成的订单消息根据路由算法被发送至一台撮合服务器200请求处理;
撮合服务器200将订单消息11与实时行情进行比对,满足交易条件的撮合成交,并将交易数据发送给数据库服务器300;
数据库服务器300接收到交易数据后,将交易记录写入数据库,并修改该用户的信息,如资金信息、持股信息等。
本实施例中,撮合服务器200配置有行情缓存21,行情缓存21用于存储实时股票行情信息;
这里的实时股票行情信息与股票交易所的行情信息是同步更新的,在本发明中进行的任何一笔虚拟交易都需要扫描行情信息进行比对撮合,因此将实时行情信息专门设置独立的物理缓存或缓存分区将有效提高撮合服务器200的撮合效率。
本实施例中,撮合服务器200还配置有资金账户缓存22,资金账户缓存22用于临时存储用户的资金账户余额信息。
本实施例中,撮合服务器200还配置有持仓缓存23,持仓缓存23用于临时存储用户的股票持仓信息;
实时行情信息、资金账户余额信息和用户股票持仓信息是交易过程中最常用的变量信息,因而设计专属缓存可以有效地降低读写数据库的I/O压力,提高其并发读的效率以及缓存命中率。
本实施例中,撮合服务器200安装有撮合程序31和组包程序32;
撮合程序31用于将订单消息11与实时行情进行比对,并将其中满足成交条件的订单信息更新为成交消息12;
组包程序32用于将成交消息12分解生成多个数据库指令,并将数据库指令组包成为写库消息13向数据库服务器300发送;
组包程序32将每个订单的交易信息被更新为包含交易流水、变更资金、变更持仓等SQL语句的SQL封包,每500单位的SQL封包被组装为一个SQL批量包,完成组包;
本实施例采用的是SQL数据库。
本实施例中,撮合服务器200还配置有撮合队列41和成交队列42;
撮合队列41用于接收和存储由路由服务器100发送的订单消息11,撮合程序31遍历撮合队列41中的订单消息11与实时行情进行比对,并将成交消息12写入成交队列42;
未成交的订单消息11将重新进入撮合队列41等待下一轮撮合。
本实施例中,撮合服务器200还配置有写库队列43;
写库队列43用于存储写库消息13,即加载有SQL批量包的写库消息13被存储于写库队列43中,并根据组包程序32的指令将写库消息13定期批量向数据库服务器300发送;
本实施例中,数据库服务器300配置有入库队列44并安装有入库程序33;
入库队列44用于接收写库消息13,入库程序33遍历入库队列44中的写库消息13,将写库消息13中的数据库指令批量写入、修改数据库数据,这种批量SQL入库方式提高了每秒入库吞吐量,提升了写库效率。
本实施例中,路由服务器100配置有路由队列45并安装有路由程序34;
这种方式适合于多台撮合服务器200并行设置的系统中,路由队列45用于接收和存储用户发送的大量买卖单1,路由程序34遍历路由队列45中的买卖单1生成订单消息11,并根据各撮合服务器200的负载状态进行路由分配。
本发明还公开了一种模拟炒股撮合装置,包括路由服务器100、至少一台撮合服务器200和数据库服务器300;
路由服务器100用于接收买卖单1、根据买卖单1生成订单消息11并分配至一台撮合服务器200;
撮合服务器200用于根据订单消息11与实时行情进行撮合交易,并将交易数据发送给数据库服务器300;
数据库服务器300用于根据交易数据修改并保存用户信息;
以一个用户的买卖单为例:
用户在前端软件上填写买卖单1,买卖单1包含股票交易的各种买卖要素,如买卖方向类型、证券代码、买卖价格、买卖数量等,同时买卖单1还包含用户ID、资金账号、拟交易股票代码等信息,买卖单1在前端软件提交后,被发往路由服务器100;
路由服务器100将接收到的买卖单1更新为订单消息11,并根据路由算法将订单消息11分配给一台撮合服务器200;
然后路由服务器100将该买卖单形成的订单消息根据路由算法被发送至一台撮合服务器200请求处理;
撮合服务器200将订单消息11与实时行情进行比对,满足交易条件的撮合成交,并将交易数据发送给数据库服务器300;
数据库服务器300接收到交易数据后,将交易记录写入数据库,并修改该用户的信息,如资金信息、持股信息等。
本实施例中,撮合服务器200配置有行情缓存21,行情缓存21用于存储实时股票行情信息;
这里的实时股票行情信息与股票交易所的行情信息是同步更新的,在本发明中进行的任何一笔虚拟交易都需要扫描行情信息进行比对撮合,因此将实时行情信息专门设置独立的物理缓存或缓存分区将有效提高撮合服务器200的撮合效率。
本实施例中,撮合服务器200还配置有资金账户缓存22,资金账户缓存22用于临时存储用户的资金账户余额信息。
本实施例中,撮合服务器200还配置有持仓缓存23,持仓缓存23用于临时存储用户的股票持仓信息;
实时行情信息、资金账户余额信息和用户股票持仓信息是交易过程中最常用的变量信息,因而设计专属缓存可以有效地降低读写数据库的I/O压力,提高其并发读的效率以及缓存命中率。
本实施例中,撮合服务器200安装有撮合程序31和组包程序32;
撮合程序31用于将订单消息11与实时行情进行比对,并将其中满足成交条件的订单信息更新为成交消息12;
组包程序32用于将成交消息12分解生成多个数据库指令,并将数据库指令组包成为写库消息13向数据库服务器300发送;
组包程序32将每个订单的交易信息被更新为包含交易流水、变更资金、变更持仓等SQL语句的SQL封包,每500单位的SQL封包被组装为一个SQL批量包,完成组包;
本实施例采用的是SQL数据库。
本实施例中,撮合服务器200还配置有撮合队列41和成交队列42;
撮合队列41用于接收和存储由路由服务器100发送的订单消息11,撮合程序31遍历撮合队列41中的订单消息11与实时行情进行比对,并将成交消息12写入成交队列42;
未成交的订单消息11将重新进入撮合队列41等待下一轮撮合。
本实施例中,撮合服务器200还配置有写库队列43;
写库队列43用于存储写库消息13,即加载有SQL批量包的写库消息13被存储于写库队列43中,并根据组包程序32的指令将写库消息13定期批量向数据库服务器300发送;
本实施例中,数据库服务器300配置有入库队列44并安装有入库程序33;
入库队列44用于接收写库消息13,入库程序33遍历入库队列44中的写库消息13,将写库消息13中的数据库指令批量写入、修改数据库数据,这种批量SQL入库方式提高了每秒入库吞吐量,提升了写库效率。
本实施例中,路由服务器100配置有路由队列45并安装有路由程序34;
这种方式适合于多台撮合服务器200并行设置的系统中,路由队列45用于接收和存储用户发送的大量买卖单1,路由程序34遍历路由队列45中的买卖单1生成订单消息11,并根据各撮合服务器200的负载状态进行路由分配。
需要说明的是:以上的实施例仅仅是本发明一部分实施例,而不是全部的实施例。实施例和所附权利要求书中所使用的单数形式的“第一”、“第二”、“一种”、“本”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。“第一”和“第二”只是为了说明的方便,不表示有先后顺序之分。
本发明不局限于上述实施例,本发明的上述各个实施例的技术方案彼此可以交叉组合形成新的技术方案,另外凡采用等同替换形成的技术方案,均落在本发明要求的保护范围内。
Claims (10)
1.一种模拟炒股撮合系统,其特征在于,包括路由服务器(100)、至少一台撮合服务器(200)和数据库服务器(300);
所述路由服务器(100)用于接收买卖单(1)、根据所述买卖单(1)生成订单消息(11)并分配至一台所述撮合服务器(200);
所述撮合服务器(200)用于根据所述订单消息(11)与实时行情进行撮合交易,并将交易数据发送给所述数据库服务器(300);
所述数据库服务器(300)用于根据所述交易数据修改并保存用户信息。
2.如权利要求1所述的撮合系统,其特征在于,所述撮合服务器(200)配置有行情缓存(21),所述行情缓存(21)用于存储实时股票行情信息。
3.如权利要求2所述的撮合系统,其特征在于,所述撮合服务器(200)还配置有资金账户缓存(22),所述资金账户缓存(22)用于临时存储用户的资金账户余额信息。
4.如权利要求3所述的撮合系统,其特征在于,所述撮合服务器(200)还配置有持仓缓存(23),所述持仓缓存(23)用于临时存储用户的股票持仓信息。
5.如权利要求4所述的撮合系统,其特征在于,所述撮合服务器(200)安装有撮合程序(31)和组包程序(32);
所述撮合程序(31)用于将所述订单消息(11)与实时行情进行比对,并将其中满足成交条件的订单信息更新为成交消息(12);
所述组包程序(32)用于将所述成交消息(12)分解生成多个数据库指令,并将所述数据库指令组包成为写库消息(13)向所述数据库服务器(300)发送。
6.如权利要求5所述的撮合系统,其特征在于,所述撮合服务器(200)还配置有撮合队列(41)和成交队列(42);
所述撮合队列(41)用于接收和存储由所述路由服务器(100)发送的所述订单消息(11),所述撮合程序(31)遍历所述撮合队列(41)中的所述订单消息(11)与实时行情进行比对,并将所述成交消息(12)写入所述成交队列(42)。
7.如权利要求6所述的撮合系统,其特征在于,所述撮合服务器(200)还配置有写库队列(43);
所述写库队列(43)用于存储所述写库消息(13),并根据所述组包程序(32)的指令将所述写库消息(13)向所述数据库服务器(300)发送。
8.如权利要求7所述的撮合系统,其特征在于,所述数据库服务器(300)配置有入库队列(44)并安装有入库程序(33);
所述入库队列(44)用于接收所述写库消息(13),所述入库程序(33)遍历所述入库队列(44)中的所述写库消息(13),并根据所述写库消息(13)中的数据库指令写入、修改数据库数据。
9.如权利要求8所述的撮合系统,其特征在于,所述路由服务器(100)配置有路由队列(45)并安装有路由程序(34);
所述路由队列(45)用于接收和存储所述买卖单(1);所述路由程序(34)遍历所述路由队列(45)中的所述买卖单生成所述订单消息(11),并将所述订单消息(11)分配给一台所述撮合服务器(200)的所述撮合队列(41)。
10.一种模拟炒股撮合装置,其特征在于,包含有权利要求1~9任意一项所述的模拟炒股撮合系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911022280.5A CN110929380A (zh) | 2019-10-25 | 2019-10-25 | 一种模拟炒股撮合系统和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911022280.5A CN110929380A (zh) | 2019-10-25 | 2019-10-25 | 一种模拟炒股撮合系统和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110929380A true CN110929380A (zh) | 2020-03-27 |
Family
ID=69849509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911022280.5A Pending CN110929380A (zh) | 2019-10-25 | 2019-10-25 | 一种模拟炒股撮合系统和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110929380A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112131251A (zh) * | 2020-07-01 | 2020-12-25 | 北京跨联元焕网络科技有限公司 | 竞价交易方法、装置、可读存储介质及电子设备 |
CN112199191A (zh) * | 2020-09-18 | 2021-01-08 | 深圳希施玛数据科技有限公司 | 用于虚拟交易的数据撮合方法、装置及系统 |
CN112465645A (zh) * | 2020-12-18 | 2021-03-09 | 南京艾科朗克信息科技有限公司 | 一种模拟深交所股票交易撮合系统 |
CN112598517A (zh) * | 2020-12-24 | 2021-04-02 | 临沂市新商网络技术有限公司 | 面向大规模并发请求的电子商务交易撮合方法及系统 |
CN112669158A (zh) * | 2021-01-06 | 2021-04-16 | 深圳市金证科技股份有限公司 | 交易系统及其交易服务的控制方法和装置 |
CN113535744A (zh) * | 2021-07-09 | 2021-10-22 | 深圳市蘑菇财富技术有限公司 | 租户数据修改方法、系统、设备及存储介质 |
CN113781220A (zh) * | 2021-09-06 | 2021-12-10 | 上海卡方信息科技有限公司 | 一种分布式股票交易撮合系统及方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104392377A (zh) * | 2014-12-09 | 2015-03-04 | 四川诚品电子商务有限公司 | 一种云交易系统 |
CN106355498A (zh) * | 2016-09-27 | 2017-01-25 | 上海红宋网络科技有限公司 | 一种股票交易管理系统 |
CN108932663A (zh) * | 2018-06-26 | 2018-12-04 | 中国银行股份有限公司 | 一种模拟撮合交易方法及装置 |
CN109636603A (zh) * | 2018-12-06 | 2019-04-16 | 大连飞创信息技术有限公司 | 基于报文策略配置的证券模拟交易平台 |
-
2019
- 2019-10-25 CN CN201911022280.5A patent/CN110929380A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104392377A (zh) * | 2014-12-09 | 2015-03-04 | 四川诚品电子商务有限公司 | 一种云交易系统 |
CN106355498A (zh) * | 2016-09-27 | 2017-01-25 | 上海红宋网络科技有限公司 | 一种股票交易管理系统 |
CN108932663A (zh) * | 2018-06-26 | 2018-12-04 | 中国银行股份有限公司 | 一种模拟撮合交易方法及装置 |
CN109636603A (zh) * | 2018-12-06 | 2019-04-16 | 大连飞创信息技术有限公司 | 基于报文策略配置的证券模拟交易平台 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112131251A (zh) * | 2020-07-01 | 2020-12-25 | 北京跨联元焕网络科技有限公司 | 竞价交易方法、装置、可读存储介质及电子设备 |
CN112199191A (zh) * | 2020-09-18 | 2021-01-08 | 深圳希施玛数据科技有限公司 | 用于虚拟交易的数据撮合方法、装置及系统 |
CN112465645A (zh) * | 2020-12-18 | 2021-03-09 | 南京艾科朗克信息科技有限公司 | 一种模拟深交所股票交易撮合系统 |
CN112598517A (zh) * | 2020-12-24 | 2021-04-02 | 临沂市新商网络技术有限公司 | 面向大规模并发请求的电子商务交易撮合方法及系统 |
CN112598517B (zh) * | 2020-12-24 | 2022-08-23 | 临沂市新商网络技术有限公司 | 面向大规模并发请求的电子商务交易撮合方法及系统 |
CN112669158A (zh) * | 2021-01-06 | 2021-04-16 | 深圳市金证科技股份有限公司 | 交易系统及其交易服务的控制方法和装置 |
CN112669158B (zh) * | 2021-01-06 | 2023-12-15 | 深圳市金证科技股份有限公司 | 交易系统及其交易服务的控制方法和装置 |
CN113535744A (zh) * | 2021-07-09 | 2021-10-22 | 深圳市蘑菇财富技术有限公司 | 租户数据修改方法、系统、设备及存储介质 |
CN113535744B (zh) * | 2021-07-09 | 2023-12-08 | 深圳市蘑菇财富技术有限公司 | 租户数据修改方法、系统、设备及存储介质 |
CN113781220A (zh) * | 2021-09-06 | 2021-12-10 | 上海卡方信息科技有限公司 | 一种分布式股票交易撮合系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110929380A (zh) | 一种模拟炒股撮合系统和装置 | |
US11741542B2 (en) | FPGA circuit for processing electronic messages in a distributed computer system | |
US11636544B2 (en) | Method and apparatus for order entry in an electronic trading system | |
CN107369012A (zh) | 一种支付信息处理方法及系统、及具有履约保证保险机制的预付卡处理方法 | |
US20170148027A1 (en) | Training and selection of multiple fraud detection models | |
US20060277137A1 (en) | System and method for routing a trading order based upon quantity | |
WO2019118939A1 (en) | Self learning data loading optimization for a rule engine | |
US20090313149A1 (en) | Budgetary ledger | |
US9613378B2 (en) | Distributed ranking and matching of messages | |
Aldrich et al. | Order protection through delayed messaging | |
US7523062B2 (en) | Securities processor and a method of processing attributable interest messages | |
US7606906B2 (en) | Bundling and sending work units to a server based on a weighted cost | |
US20050096931A1 (en) | System for managing data regarding derivatives trades | |
US8688544B2 (en) | Analyzing marketplace listing strategies | |
US20020059134A1 (en) | Flexible and extensible e-commerce architecture | |
WO2021217497A1 (en) | Statistics-aware sub-graph query engine | |
CN111899111A (zh) | 一种资金撮合方法、装置、服务器及存储介质 | |
CN101192287A (zh) | 自动发送虚拟资源的方法及系统 | |
US20160232620A1 (en) | Method and system for venture capital raising for startup via award and reality television show | |
CN116823471A (zh) | 交易策略回测方法、装置、电子设备及存储介质 | |
CN111242762A (zh) | 金融产品购买方法、装置以及系统 | |
Katamadze et al. | Challenges and prospects of e-commerce management in the banking sector | |
US20080255983A1 (en) | System and method for bait generation | |
JP2001290943A (ja) | 相対取引処理装置、その方法、並びにそのためのプログラムを記録した記録媒体 | |
CN109949146A (zh) | 用于托管分类账的服务器和方法 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200327 |
|
WD01 | Invention patent application deemed withdrawn after publication |