Relayer strategy
@posgnu đang làm issue này rồi.
Từ ngày 7/12/2018.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
Strategy:
As a client submit its order, the relayer checks if there is a matching order stored in the order book. Before this, the relayer also checks if the order conforms with fee policy regulated by the DEX. Only the relayer can fill the orders so that there is no primary race condition from the matching process. The relayer also knows when orders are matched before anyone else and can update the order book as soon as the transaction is submitted.
Rest API
submit(inputs: assetTransferInput[], order: Order, marketId: number, makerAddress: string)
Check if the transaction is valid
Before relaying transactions, they have to be checked validity. First, the DEX have to verify that the transaction 's unlock script is valid. It means that the transaction has to provide a correct signature over order. After the validity checking is finished, the transaction will be relayed on the DEX so that other clients can fill the transaction.
Matching
When the transaction arrives at the DEX, there may or may not be combinable orders. If there are not, the transaction will directly go into the order book as order. The case becomes more complicated if there are orders which are combinable with the incoming transaction. It can be divided into three situations.
- There is an order which has exactly the same rate and amount with the incoming transaction - In this case, the order is filled and transmitted to a Codechain node
- There is an order which has the same rate but less amount than an incoming transaction - Fill the order and relay the remainder.
- There is an order which has the same rate but more amount than an incoming transaction - Do the partial fill
Matching priority
First In, Frist Match rule
Sync
All of the operations with DB have to be atomic. In addition, the matching processes have to be synchronized since matching only occurs in the DEX.
- Ngôn ngữ chính
- TypeScript
- Star
- 17
- Fork
- 4
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của CodeChain-io/codechain-exchange
-
I cannot run tests Đang mởhelp wanted test
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 30/100
CodeChain-io/codechain-exchange#28 · 3 bình luận ·
-
design
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 15/100
-
design
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 10/100
-
layout- responsive web Đang mởdesign
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
-
Matcher :m: orderwatcher :eyes:
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
CodeChain-io/codechain-exchange#13 · 1 bình luận ·
Tất cả issue của CodeChain-io/codechain-exchange
Issue tương tự
-
bug(cli): hapi doctor inline-media prints a fabricated B:\ helper-script path in packaged installs Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
-
Crush Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
catppuccin/catppuccin#3125 ·
-
Add a SECURITY.md Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
ElementsProject/cln-application#167 · 1 bình luận · 1 reaction ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Quantco/pnpm-licenses#17 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100