> ## Documentation Index
> Fetch the complete documentation index at: https://dexbuilder.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 訂單生命週期

> 瞭解訂單從建立、提交、撮合到鏈上結算的完整流程，以及訂單與成交狀態。

事件合約 CLOB 採用混合模式：訂單撮合在鏈下完成以獲得更高效率，最終資產交割在鏈上執行。下面介紹訂單從建立到結算的完整生命週期。

![Image](https://mintcdn.com/dexbuilder/HmQKrNhFx36mwspk/images/image-4.png?fit=max\&auto=format\&n=HmQKrNhFx36mwspk\&q=85\&s=6064e7ab0bef5d73b0e77485638f2c13)

## 訂單如何工作

CLOB 中底層都可以視為限價訂單。通常所說的“市價單”，本質上是一個價格足夠激進、能夠立即穿過訂單簿成交的限價訂單。

撮合遵循價格優先、時間優先：更優價格優先成交；同一價格下，更早進入訂單簿的訂單優先。

## 訂單有效方式

以下值用於 `order_type`；`order_mode` 使用 `LIMIT` 或 `MARKET`。

| 類型 | 行為 | 典型場景 |
| - | - | - |
| `GTC` | Good-Til-Cancelled，直到成交或主動撤銷前持續有效 | 掛單、做市 |
| `GTD` | Good-Til-Date，到指定時間自動失效 | 有有效期的報價 |
| `FOK` | Fill-Or-Kill，必須立即全部成交，否則全部取消 | 全成或全撤 |
| `FAK` | Fill-And-Kill，立即成交可成交部分，其餘取消 | 快速吃單 |

### Post Only

Post Only 訂單保證只作為 Maker。如果提交時會立即與現有訂單成交，則訂單直接被拒絕，而不會主動吃掉流動性。

## 完整生命週期

**1. 建立並簽名**

構造訂單參數，包括 Token ID、方向（`BUY` / `SELL`）、價格、數量、過期時間和時間戳，並使用交易錢包簽名。

**2. 提交到 CLOB**

CLOB 驗證簽名、餘額與授權，並校驗 tick size、最小下單數量等交易規則。不合法訂單不會進入訂單簿。

**3. 撮合或進入訂單簿**

可立即成交的訂單與現有流動性撮合；無法立即成交的訂單繼續留在訂單簿，直到成交、撤銷或過期。部分市場可能對 Taker 設定撮合延遲保護 Maker。

**4. 鏈上結算**

撮合完成後，結算合約驗證訂單並在一次原子交易中完成結果代幣與 USDT 的資產交割。

**5. 確認完成**

鏈上交易確認後，帳戶餘額、成交記錄和持倉同步更新。

## REST 訂單狀態

REST 訂單查詢及 `status` 篩選使用以下小寫值；WebSocket 訂單推送使用另一套大寫 UI 狀態。

| 狀態 | 含義 |
| - | - |
| `processing` | 訂單請求處理中，包括撤單處理中 |
| `open` | 訂單仍開放，包括部分成交且仍有剩餘數量的訂單 |
| `matched` | 訂單已撮合 |
| `canceled` | 訂單已取消或到期 |
| `failed` | 訂單失敗或被拒絕 |

## 成交狀態

| 狀態 | 含義 | 是否終態 |
| - | - | - |
| `MATCHED` | 鏈下撮合已確認，等待鏈上結算 | 否 |
| `MINED` | 結算交易已上鏈 | 否 |
| `CONFIRMED` | 結算最終確認，餘額已更新 | 是 |
| `RETRYING` | 鏈上提交失敗，系統正在重試 | 否 |
| `FAILED` | 結算最終失敗 | 是 |

## Maker 與 Taker

| 角色 | 說明 |
| - | - |
| Maker | 掛單並提供流動性 |
| Taker | 主動跨過訂單簿、消耗已有流動性 |

Taker 實際成交價格按照訂單簿上對手方的掛單價格執行。例如買單限價為 `$0.55`，與 `$0.52` 的賣單成交時，成交價為 `$0.52`。

## 撤單

未成交訂單通常可主動取消。已經完成撮合的部分無法撤回；即使剩餘部分被撤銷，已撮合部分仍會繼續完成結算。

## 下單要求

| 要求 | 說明 |
| - | - |
| Balance | 買入需要足夠 USDT，賣出需要足夠結果代幣 |
| Allowance | 對應合約需要獲得資產轉移授權 |
| API credentials | 私有交易介面需要有效認證資訊 |

單筆新訂單最大可用數量應扣除現有未成交訂單已佔用的餘額：

```text theme={null}
maxOrderSize = balance − ∑(openOrderSize − filledAmount)
```

## 下一步

> [card] [市場結算](https://dexbuilder.mintlify.site/zh-TW/event-contracts/resolution.md)
>
> 瞭解市場如何確定結果以及獲勝 Token 如何贖回。

> [card] [提交訂單](https://dexbuilder.mintlify.site/zh-TW/event-contracts/place-orders.md)
>
> 檢視交易介面與下單流程。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.