乐趣区

关于后端:买卖股票的数据结构-订单簿

交易股票的数据结构 – 订单簿

最近股票市场很冷落啊,你晓得买单和卖单是如何匹配的吗?

证券交易所应用的数据结构称为订单簿 (Order Book)。订单簿是按价格排列的订单队列。它有一个买入簿和一个卖出簿,匹配时依照先进先出 (First In First Out) 的准则。

下图是一个简略的订单簿数据结构示意图。

咱们联合图来看一个例子。如果买入 2700 股的市价单,会产生什么状况呢?

  1. 该买入订单与价格为 100.10 的所有卖出订单以及价格为 100.11 的第一笔订单(以浅红色显示)相匹配。
  2. 当初,因为大买单“吃掉”了卖出簿上的第一个价位,最佳卖出价从 100.10 升至 100.11。
  3. 因而,当市场看涨时,人们偏向于买入股票,价格就会一涨再涨。

订单簿的高效数据结构必须满足以下条件:

  • 恒定的查问工夫。操作包含:
  • 获取某一价位或两个价位之间的成交量
  • 查问最佳买入价 / 卖出价。
  • 疾速增加 / 勾销 / 执行 / 更新操作,工夫复杂度最好为 O(1)。操作包含:
  • 下新订单
  • 勾销订单
  • 匹配订单

欢送点赞留言提出你的宝贵意见!

【图解架构设计,关注公众号:ByteByteGo】

退出移动版