Skip to content

newquant/potential-matching

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 

Repository files navigation

potential-matching

模拟交易系统实现

网关系统 Gateway

当一个请求(Request)通过网关(Gateway)进入交易系统后

用户系统 User

首先由用户系统(User)识别用户身份,然后由账户系统(Account)对用户资产进行冻结(frozen),买入冻结资产(Asset),卖出冻结标的(Underlying),冻结如果成功,订单就进入定序系统(Sequence)

账户系统 Account

包含用户所持有的资产与标的,并与其相关的所有订单记录

订序系统 Sequence

系统中所有订单是一个有序队列。不同的用户在同一时刻下单,也必须由定序系统确定先后顺序

撮合引擎 Match-Engine

经过定序的订单被送入撮合引擎(Match-Engine),撮合引擎是交易系统的核心。撮合引擎本质上就是维护一个买卖盘列表,然后按价格优先原则对订单进行撮合,能够成交的就输出成交结果,不能成交的放入买卖盘。此处没有时间优先原则,因为经过定序的订单队列已经是一个时间优先的队列了。

清算系统 Clearing

当撮合引擎输出了成交结果后,该成交记录由清算系统(Clearing)进行清算。清算的工作就是把买单冻结的资产(Asset)扣掉,并加上买入所得的标的(Underlying),同时,把卖单冻结的标的(Underlying)扣掉,并加上卖出所得的资产(Asset)。根据taker/maker的费率(Fee Ratio),向买卖双方收取手续费(Fee) 清算系统完成清算后,更新订单状态 通过网关(Gateway)返回相应,通知用户,之后可以查询到买卖的成交情况。

行情系统 Quotation

在撮合引擎(Match-Engine)输出成交记录给清算系统(Clearing)的同时,它还把去除用户和订单相关信息的成交记录输出给行情系统(Quotation),由行情系统保存市场的成交价(Price)、成交量(Volume)等信息,并输出实时价格、K线图(K Bar)等技术数据,以便公开市场查询。

Releases

No releases published

Packages

No packages published