`
isiqi
  • 浏览: 16348344 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

股票撮合系统

阅读更多

这是道数据结构题.

在股票交易中,股民可以通过各种手段将委托送到股票交易所。每个委托主要说明了股民身份、买卖的股票、价格和数量。交易的规则是价格优先、时间优先,即出的价格最高的人先买,出的价格最低的人先卖。两个委托只有价格合适时才能成交,未成交的委托按价格顺序放在撮合队列中。每个股票有两个撮合队列:买队列和卖队列。只有当买委托的价格高于等于卖委托的价格,两个委托才可以成交,成交价取两个委托价格的平均值,成交量取两个委托数量的最小值。委托可以是完全成交或部分成交,部分成交的委托保留在撮合队列中继续交易。试利用单链表作为存放委托的数据结构(撮合队列),编写一模拟股票交易的程序,该程序有以下几个功能:

1. 委托申请:

输入:每个委托包括四个数据项,股票编码( 4 位数字)、价格(浮点数)、数量(整数)、买 / 卖( B/S )

输出: a. 程序为每个委托产生一个唯一的序号( %04d ),该序号从 1 开始; b. 每笔成交包括:成交价格( %6.1f )、成交量( %4d )、买委托序号( %04d )、卖委托序号( %04d )。

2. 查询未成交的委托:

输入:股票编码

输出:按撮合队列中委托的顺序,分别输出该股票未成交的委托,每个输出的委托包括:委托序号( %04d )、 股票编码 ( %04d ) 、 价格( %6.1f )、数量( %4d )、 B/S (买 / 卖 )

3. 委托撤消:

输入:要撤消的委托号。

输出:若成功,显示该委托信息,其中委托包括数据项:委托序号、股票编码、价格、数量、 B/S (买 / 卖 ) ;否则显示“ not found ”失败信息。

委托输入格式 : 1 股票编码 价格 数量 买卖

查询输入格式 : 2 股票编码

委托撤销 : .3 委托号

退出: 0

例: (下面的黑斜体为输入)

1 0038 20 1000 b

orderid: 0001

1 0278 18 2000 s

orderid: 0002

1 0003 8 5000 b

orderid: 0003

1 0003 12 1000 b

orderid: 0004

1 0003 10 500 b

orderid: 0005

1 0003 11 9000 b

orderid: 0006

1 0003 18 1000 s

orderid: 0007

2 0003

buy orders:

orderid: 0004, stockid:0003, price: 12.0, quantity: 1000, b/s: b

orderid: 0006, stockid:0003, price: 11.0, quantity: 9000, b/s: b

orderid: 0005, stockid:0003, price: 10.0, quantity: 500, b/s: b

orderid: 0003, stockid:0003, price: 8.0, quantity: 5000, b/s: b

sell orders:

orderid: 0007, stockid:0003, price: 18.0, quantity: 1000, b/s: s

3 0006

deleted order:orderid: 0006, stockid:0003, price: 11.0, quantity: 9000, b/s: b

3 0197

not found

2 0003

buy orders:

orderid: 0004, stockid:0003, price: 12.0, quantity: 1000, b/s: b

orderid: 0005, stockid:0003, price: 10.0, quantity: 500, b/s: b

orderid: 0003, stockid:0003, price: 8.0, quantity: 5000, b/s: b

sell orders:

orderid: 0007, stockid:0003, price: 18.0, quantity: 1000, b/s: s

1 0003 9 1200 s

orderid: 0008

deal--price: 10.5 quantity:1000 sellorder:0008 buyorder:0004

deal--price: 9.5 quantity: 200 sellorder:0008 buyorder:0005

2 0003

buy orders:

orderid: 0005, stockid:0003, price: 10.0, quantity: 300, b/s: b

orderid: 0003, stockid:0003, price: 8.0, quantity: 5000, b/s: b

sell orders:

orderid: 0007, stockid:0003, price: 18.0, quantity: 1000, b/s: s

分享到:
评论

相关推荐

    北理工-大二数据结构乐学编程题-约瑟夫问题、验证表、循环小数、综教楼后的坑...

    股票撮合系统.cpp 4-1.树的建立和基本操作.cpp 4-2.二叉树的建立与基本操作.cpp 4-3.二叉树的遍历序列还原.cpp 5-1.二叉哥的二叉树.cpp 5-2.排序二叉树.cpp 5-3.平衡二叉树.cpp 6-1.前缀码.cpp 6-2.哈夫曼树权值.cpp...

    基于多层分布式体系的股票交易撮合系统.pdf

    股票市场中的电子化交易需要一个高效且稳定的股票交易撮合系统来完成订单的快速处理。 股票交易撮合系统是一个复杂的信息处理系统,它需要能够处理大量的交易数据,并且要具备快速匹配买卖双方订单的能力。传统上,...

    基于java的模拟撮合

    在股票撮合系统中,我们需要定义几个关键的对象,如订单(Order)、股票(Stock)、用户(User)等。订单对象包含买卖方向、股票代码、数量、价格等属性;股票对象表示股票的基本信息,如代码、名称、当前价等;用户...

    撮合系统源代码.rar

    撮合系统是金融交易市场(如股票、期货、数字货币等)中的关键部分,它负责连接买家和卖家,将他们的需求进行匹配,形成交易。在撮合过程中,系统会按照特定的规则(通常是时间优先和价格优先)来处理订单,使得市场...

    C语言大宗商品交易软件+撮合交易系统+商品挂牌系统+交易平台搭建,c语言撮合模块源码

    现货大宗挂牌软件/大宗商品撮合系统/文交所平台搭建/股票行情分析软件/股配资管系统源码,支持:大宗商品,能源、金属、农产品、文化艺术品等,倚天行情分析系统.. 上传的资源为核心c语言模块,如果需要完整版系统,...

    jsp 交易撮合系统 v1.0 build 090907

    【JSP交易撮合系统V1.0 Build 090907】是一个基于Java Server Pages(JSP)技术构建的在线交易平台,主要用于实现高效、安全的交易匹配功能。这个系统的核心目标是将买家的需求与卖家的商品或服务进行精准匹配,确保...

    Java虚拟股票交易系统

    5. **撮合引擎**:模拟真实的交易市场,系统需要一个撮合引擎来匹配买卖订单。当买入订单的价格与卖出订单的价格相匹配时,进行交易,并更新用户的账户余额和股票持有量。 6. **事件驱动编程**:股票交易系统通常是...

    股票交易系统

    股票交易系统是一个模拟真实股票市场的应用程序,用于学习和实践金融交易的基本原理。在这个项目中,C++被选为编程语言,因为它的高效性和在金融计算中的广泛应用。下面将详细讲解这个系统的一些关键知识点。 首先...

    超高效的交易所撮合引擎,采用伦敦外汇交易所LMAX开源的Disruptor框架,分布式内存存取,以及原子性操作

    match-trade超高效的交易所撮合引擎,采用伦敦外汇交易所LMAX开源的Disruptor框架,分布式内存存取,以及原子性操作。使用数据流的方式进行计算撮合序列,才用价格水平独立撮合逻辑,实现高效大数据撮合

    gupiaojiaoyixitong.rar_visual c_交易系统源码_系统源码_股票 交易_股票交易系统

    3. 订单处理:用户提交买入或卖出股票的请求后,系统需要对订单进行验证、匹配、撮合,并将结果反馈给用户。这涉及到订单状态管理、撮合算法和资金账户的实时更新。 4. 资金管理:系统需要跟踪用户的资金余额,处理...

    基于QT股票交易系统毕业设计论文

    这是我2016年的毕业设计的论文资料。是用qt框架开发的股票交易撮合系统。里面有部分内容是是我最这个系统的一些知识性的总结,也写到论文里了。最后包括外文翻译

    java实例股票交易系统

    Java实例股票交易系统是一个基于Java编程语言开发的模拟股票交易平台,它可以帮助开发者和学习者理解股票交易的基本原理和实现方式。在这个系统中,通常会包含用户管理、股票数据处理、交易逻辑、账户管理等多个模块...

    C#实现的股票交易模拟系统

    在本项目中,我们探讨的是一个使用C#编程语言实现的股票交易模拟系统。这个系统不仅提供了用户友好的图形界面,还集成了数据库支持,使得用户可以进行虚拟的股票交易操作,体验真实的市场环境。 首先,我们要理解C#...

    【金手指股票配资微交易】最新+股票配资微交易+虚拟股票交易程序源码+转载分享

    总的来说,【金手指股票配资微交易】是一个结合了股票配置和微交易概念的复杂系统,它的源码可以为开发者提供宝贵的参考资料,有助于深入了解交易系统的架构和实现。然而,由于缺乏详细的技术文档和测试报告,对于...

    针对 集群撮合数据 维护容器.zip

    例如,在股票交易所中,买家和卖家的订单需要快速匹配成交,这就需要高效的撮合算法和稳定的数据处理平台。 容器技术,如Docker,为解决此类问题提供了强大支持。容器能够在轻量级的隔离环境中运行应用程序及其依赖...

    强烈推荐如何建立股票交易系统HPPT学习教案.pptx

    股票交易系统是投资者在金融市场中实现稳定盈利的重要工具,它基于一套明确的规则和策略,旨在减少情绪干扰,提升决策的理性和效率。本篇PPT教程强烈推荐如何建立股票交易系统,适合对股票交易有兴趣并希望提升交易...

    基于Python的股票自动交易系统的设计与实现.rar

    跨平台性: Python具有很好的跨平台性,可以在多个操作系统上运行,包括Windows、Linux、macOS等,使得开发的代码可以轻松迁移。 丰富的标准库: Python内置了大量的模块和库,涵盖了文件操作、网络编程、数据库...

    C14049全国中小企业股份转让系统股票转让规则解读100分.docx

    - 转让日的股票撮合时间为9:15至11:30以及13:00至15:00,这是做市转让撮合的主要时段。 - 对于做市商,全国股份转让系统接受成交确认申报并进行确认的时间是每个转让日的15:00至15:30。 2. **最小变动单位**: -...

Global site tag (gtag.js) - Google Analytics