CodeChain-io / CodeChain-io/codechain-exchange

Implement an order watcher deamon

未关闭
#13 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
Matcher :m: orderwatcher :eyes:
主要语言
TypeScript
星标
17
派生
4
PR 合并指标
30 天内没有已合并 PR

描述

CODEX order watcher is similar to [0x order watcher](https://0xproject.com/wiki#0x-OrderWatcher)
* The `OrderWatcher` is a daemon. ~~You can start and stop it from subscribing to order state changes, add orders you would like to track and remove orders that are no longer relevant.~~ Just can add order and get an event if the status of the order is changed.
* Once the `OrderWatcher` is started and an order has been added to it, it will emit events once, if there is a change in the state backing an order's fillability. If orderWatcher gets an event than it removes an order from the order book.
* There are two kinds of watchers in the order watcher. One is `invalidWatcher` which check the validity of orders except for expiration time. Another one is `expirationWatcher` which check an expiration time of order. The difference between them is the length of the checking time interval. The `expirationWatcher`'s time interval will be much shorter than the `orderWatcher`.
* The `orderWatcher` will be managed by just list and the `expirationWatcher` will be managed by a min-heap. Therefore the `expirationWatcher` only need to monitor one order, which has a minimum expiration time.

## API
```
// orderWatcher
addOrder(order): void
// expirationWatcher
addOrder(order, expiration): void

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。