撮合大致是怎麼進行的
Intention 上的訂單在 IntentionKernel 內部撮合,撮合的對象是一個中央限價訂單簿,規則是嚴格的價格優先、時間優先。排序是確定的:鏈的每一個副本都會複現出相同的訊息順序,因而得到相同的成交序列。完整說明見訂單交易分派器一頁,狀態機視角見 IntentionKernel 一頁。就成交類工單而言,關鍵性質是:不存在私有訂單流優勢,也不存在鏈下撮合引擎;你的訂單和與你成交的那筆訂單,都記錄在規範的區塊流裡。成交價格為什麼會和螢幕上的價格不同
你點擊「buy」那一刻螢幕上的數字,不是你成交時的數字,這是正常的。- 滑價。 市價單或可立即成交的限價單會沿著訂單簿逐檔吃進,直到吃滿全部數量或觸及限價上限。如果盤口很薄,實際均價可能比你片刻前看到的最佳報價差上不少。
- 中途插入的成交。 其他參與者的訂單可能落在同一個區塊裡,也可能落在你上一次重新整理介面之後、包含你訂單的那個區塊之前。這些成交吃掉了流動性,也就改變了你這筆訂單的實際價格。
- 快照與提交之間的延遲。 螢幕上的價格是一個快照;等你的訂單被排序並撮合時,訂單簿可能已經動了。這不是撮合器的 bug,而是你和鏈之間傳輸需要時間的必然結果。
未實現損益與已實現損益
- 未實現損益反映的是你未平部位在當前標記價格下按市價計算的價值。這個數字隨標記價格連續變動,是滾動估算值,不是已結算的數字。
- 已實現損益是你已經平掉的那些部位累計出來的結果。不隨標記價格變動,只有在你減倉或平倉時才會變。
標記價格與最新成交價
標記價格不是最新成交價。標記價格是一個平滑後的參考價,用於保證金核算、未實現損益、資金費和強制平倉,構造上就是為了抵抗對單筆成交的操縱。它怎麼構建,見標記價格一頁。最新成交價則只是最近一筆成交恰好落在的價格。兩者可能背離,快速行情中尤其如此,而這種背離是設計使然:用最新成交價來算保證金,會讓強制平倉變得極易被操縱。 資金費同樣是對標記價格計算的;如果你的已實現損益裡出現了你沒預料到的資金費流水,見資金費率。讀取逐筆成交歸因
每一筆成交在產生時都帶有識別碼、價格、數量、手續費和排序位置。你可以從 API 或執行流中拉取這些資料。逐筆成交記錄才是「我的訂單到底經歷了什麼」的權威答案;介面上的彙總只是這些記錄的一種便捷呈現。如果還是不對,該寄什麼給團隊
寄信到contact@intention.xyz,附上:
- 你的訂單 id,如果有的話還有成交 id。
- 預期的價格和數量,以及這個預期是根據什麼來的。
- 應用或 API 中實際顯示的價格和數量。
- 該成交落定時的區塊高度或 UTC 時間戳記。
- 一句話描述差異所在。