感觉翻译好难懂啊
PDF原题翻译:
您正在参与一个大型项目,该项目旨在实现东北资源和商品交易所(NEERC)的自动化运营。该交易所通过公开拍卖交易不同的资源和商品。每种资源或商品的交易都独立于其他资源或商品,您的任务是为该交易所的订单簿编写一个核心引擎。每种交易的资源或商品都有一个单独的订单簿实例,将正确的订单输入订单簿不是您的问题。您要编写的订单簿实例将从交易所系统的其他部分接收相应的订单。订单簿接收信息流。
消息是订单和取消先前发出的订单的请求。发出的订单。未取消的订单称为有效订单。有买入订单和卖出订单。卖出。每个买入或卖出订单都有正数规模和正数价格。订单簿维护一份生成报价和交易。以最高价格买入的有效订单是最佳买入订单,其价格称为买入价。买单,其价格称为买入价。以最低价格卖出的有效订单是最佳卖出订单,其价格称为卖出价。其价格称为卖出价。卖出价总是低于买入价,即买方愿意支付的价格低于卖方希望收到的价格。即买方愿意支付的价格低于卖方希望得到的价格。订单簿中的当前报价包含当前买入量、买入价、卖出量和卖出价。
这里,买入价和卖出价的大小是所有有效订单的大小之和,当前买入价和当前卖出价相对应。的总和。交易记录了买方和卖方之间的交易信息。每笔交易都有大小和价格。如果订单簿中出现价格大于或等于当前卖出价的买入订单,则买卖双方就价格达成一致。价格达成一致。反之亦然,如果卖出订单以小于或等于当前买入价的价格到达订单簿,则交易也会发生。则交易也会发生。就订单匹配而言,订单簿就像一个先进先出队列(FIFO队列(详情请进一步阅读)。当订单簿中的买入订单价格大于或等于当前卖出价时它不会立即进入订单簿。首先,会产生一些交易,可能会减少买入订单的规模。在买入订单和最佳卖出订单之间产生交易。卖出。如果有多个最佳订单(卖出价),则选择最先进入订单簿的订单。则选择最先进入订单簿的订单。以当前卖出价成交,成交量等于两个匹配订单中较小的一个。
两个匹配订单中较小的一个。两个匹配订单的规模都会因交易规模而缩小。交易。如果卖出订单的规模减小到零,那么它就会变成非活动订单,并从订单簿中删除。订单簿中删除。如果买入订单的规模变为零,则该过程结束,买入订单变为非活动订单。卖出指令变为无效。如果买入订单的规模仍为正数,且有另一个卖出订单与之匹配,则该过程继续进行。则该流程继续以新卖出价产生更多交易(卖出价会随着卖出订单的成交而增加)。卖出订单成交后,卖出价会上升)。如果没有与之匹配的卖出指令(当前卖出价大于买入订单价格),则将买入订单添加到订单簿中。到订单簿中。对于卖出订单,所有操作都与之类似。与订单簿中的买入订单相匹配,并以买入价成交。
当收到取消订单的请求时,相应订单会从订单簿中删除,成为无效订单。成为非激活状态。需要注意的是,在取消请求发出时,相应订单的数量可能已经减少了一部分,或者订单已经处于非激活状态。取消不活跃订单不会改变订单簿中的任何内容。订单簿必须根据每一条接收到的报文,生成由其引起的所有交易,以及处理相应报文后的当前报价(买入量、买入价、卖出量、卖出价),即使订单簿中没有任何因该报文而发生的变化。因此,订单簿生成的报价数量总是等于收到的报文数量。