摘要
跟單交易 (copy-trading) 讓一般使用者能複製專業交易者的策略,卻長期受困於三個結構性問題: 排行榜不透明、只看報酬不看風險;資金由中心化平台託管;績效無從查證。
Upwell 是 Blubuu Finance 的鏈上跟單產品,針對這三點重新設計。它把每位交易者畫成深海裡的一顆泡泡,
只用兩個維度排序——報酬 (PnL) 與 最大回撤 (MDD)——好交易者自然浮向右上角。
排行榜上的泡泡是主網 DeepBook 的真實錢包,績效由其真實鏈上成交計算、可逐筆查證;
跟單資金存入 Sui 上由 Move 合約託管的泛型金庫 CopyVault<T>,本金 1:1 隨時可贖回,無人能挪用。
1. 問題
現行跟單交易(無論中心化交易所或多數 DeFi 方案)有三個反覆出現的痛點:
- 排行榜誘導豪賭。排行榜幾乎只以「報酬率」或「絕對獲利」排序,於是把交易者推向高槓桿、高風險的短期豪賭——對跟單者極度危險。
- 風險被隱藏。真正決定一位交易者能否長期存活的「回撤」往往被淡化或不揭露。跟單者看到漂亮的報酬,卻看不見背後的資金回落。
- 託管與可驗證性。中心化平台代管資金、自報績效,使用者必須信任平台沒有造假、不會挪用、不會跑路。
結果是:使用者跟到的,常常是「最會冒險」而非「最會交易」的人,且全程缺乏可驗證的保障。
2. 解決方案
Upwell 以三個設計同時回應上述問題:
- 二維排行榜。交易者同時被報酬與回撤兩個軸評比;只有「報酬高且回撤小」的人才會浮到右上角的「聖杯區」。
- 真實鏈上績效。泡泡取自主網 DeepBook 的真實錢包,PnL 與 MDD 由其真實成交計算,並提供主網瀏覽器連結逐筆查證。
- 合約託管的跟單金庫。跟單本金存入鏈上
CopyVault,以FollowReceipt為憑證,贖回時 1:1 退還,全程非中心化託管。
3. 為何只用兩個維度
Upwell 的核心信念是:克制本身就是一種功能。把評比限制在兩個正交、直覺的維度,使用者不必理解一堆衍生指標,就能在一張平面上一眼分辨好壞。
| 維度 | 軸向 | 意義 | 越好= |
|---|---|---|---|
| 報酬 PnL | 縱軸 (Y) | 已實現+未實現損益百分比 | 越高,泡泡越往上浮 |
| 最大回撤 MDD | 橫軸 (X) | 歷史最深的資金回落幅度 | 越小,泡泡越往右移 |
| 交易量 Volume | 泡泡大小 | 主網真實累積交易量 | 規模一眼可見(輔助維度) |
報酬回答「他賺不賺錢」,回撤回答「他賺錢時冒了多大的險」。兩者一起看,才是負責任的跟單。右上角——高報酬、低回撤——就是聖杯。
4. 系統架構
Upwell 採三層架構,刻意把「託管」與「績效鏡像」分離:
4.1 第一層 — 鏈上 (Sui Move)
智能合約是信任根:託管跟單本金、保存二維排行榜、控管權限。所有狀態皆鏈上可讀、可驗證。
4.2 第二層 — 鏈下 Executor / Keeper
完全同步的「鏈上鏡像」並不符合真實跟單的運作方式——主交易者的成交必須先被觀察,才能被複製。
Upwell 誠實地建模這點:一個持有 ExecutorCap 的鏈下 keeper 監看主交易者在 DeepBook 的成交,
重算其 PnL 與最大回撤,透過 update_stats 推上鏈,並以 record_trade 紀錄鏡像成交。泡泡因此在排行榜上移動。
4.3 第三層 — 前端 dApp
React 18 · Vite · TypeScript,透過 @mysten/dapp-kit 連接 Sui 錢包。整張排行榜以單次 getObject(Registry) 讀回
(所有交易者內嵌於單一向量),每數秒輪詢更新;跟單以 PTB(可程式化交易區塊)一次完成幣選取、合併與存入。
5. 鏈上合約規格
5.1 模組
| 模組 | 職責 |
|---|---|
upwell::upwell | 排行榜 Registry、跟單金庫、follow / unfollow、executor 推送績效。 |
upwell::dusdc | DeepBook 風格的 DUSDC 測試幣,附帶共享、無權限的水龍頭,供任何人完整體驗流程(僅限測試網)。 |
5.2 核心物件
Registry(共享物件)— 把每位交易者以vector<TraderEntry>內嵌保存,前端一次抓取即可得到整張排行榜。每筆含pnl_bps/pnl_negative、mdd_bps、volume_usdc、aum、follower_count、trade_count。CopyVault<T>(共享物件)— 泛型於幣種,託管追隨者彙集的本金 (Balance<T>) 與追隨部位表。同一套合約可服務內建 DUSDC 或真實 DeepBook DUSDC。FollowReceipt(持有物件)— 追隨憑證,unfollow時燒毀以贖回本金。AdminCap— 種子 / 修復交易者檔案。ExecutorCap— 由鏈下 keeper 持有,鏡像 DeepBook 成交並推送 PnL / MDD。
5.3 進入點函式
| 函式 | 權限 | 作用 |
|---|---|---|
create_vault<T> | AdminCap | 為某幣種建立金庫(每幣種一次) |
register_trader | 無權限 | 任何錢包自行註冊為交易者(戰績歸零) |
admin_upsert_trader | AdminCap | 種子 / 更新交易者檔案 |
update_stats | ExecutorCap | 推送二維戰績(PnL + MDD) |
record_trade | ExecutorCap | 紀錄一筆鏡像成交 |
follow<T> | 無權限 | 存入 Coin<T> 跟單,取得 FollowReceipt |
unfollow<T> | 憑證持有者 | 燒毀憑證、1:1 贖回本金 |
5.4 事件
合約發出 TraderRegistered、StatsUpdated、Followed、Unfollowed、TradeRecorded 等事件,供索引與前端即時更新。
6. 資料真實性
Sui 測試網沒有真實的交易人口(其 DBUSDC 市場累計僅約 15 筆成交、由少數機器人產生)。為了讓排行榜有意義, Upwell 直接取用主網 DeepBook SUI/USDC 池的真實錢包。流程如下:
fetch-real-traders.mjs從 DeepBook indexer 抓取真實成交。- 以「現金 + 持倉市值(mark-to-market)」還原每個錢包的 PnL,並以「最高在險資本」標準化計算 最大回撤。
- 透過每筆 taker 成交的交易發送者解析出真實錢包位址,寫入
real-traders.json。 seed-real.mjs把這些真實交易者種子到測試網的 Registry。
7. 跟單與資金安全
跟單的完整生命週期:
- 跟單。追隨者呼叫
follow<T>,把 DUSDC 存入CopyVault(真實鏈上資產),合約累加該交易者的aum與follower_count,並回傳一張FollowReceipt。 - 鏡像。主交易者在 DeepBook 下單;鏈下 executor 重算其 PnL / MDD 並
update_stats上鏈,以record_trade紀錄成交。 - 贖回。追隨者呼叫
unfollow<T>,合約驗證憑證屬於本人、金庫餘額充足後,以 1:1 退還本金並燒毀憑證。
本金始終在鏈上金庫中,憑證綁定追隨者位址,贖回路徑明確且可驗證——這正是相對中心化託管的關鍵差異。
8. 安全性考量
- 權限分離。績效更新需
ExecutorCap、種子資料需AdminCap;一般跟單 / 贖回則完全無權限。 - 贖回防護。
unfollow檢查憑證對應正確金庫 (EWrongVault)、呼叫者為憑證持有人 (ENotReceiptOwner)、金庫餘額足夠 (EInsufficientVault)。 - 金額檢查。跟單金額須大於 0 (
EZeroAmount);重複註冊會被擋下 (ETraderAlreadyRegistered)。 - 水龍頭警告。
dusdc::Faucet為無權限鑄造(單次有上限),僅供測試網體驗,絕不可上主網。
9. 代幣與經濟模型
目前版本以 DeepBook 測試幣 DUSDC(6 位小數)作為跟單計價資產。由於 CopyVault<T> 泛型於幣種,
同一套合約可無痛切換至真實 DeepBook DUSDC 或其他 Coin<T>。
目前的金庫採本金 1:1記帳,協議尚未收取任何費用。未來可能的收入設計(皆為規劃、尚未實作)包含:
- 績效費 / 分潤。對跟單者的獲利,按比例分潤給主交易者與協議。
- 主交易者激勵。依 AUM 與留存表現分配獎勵,鼓勵優質交易者上架。
10. 路線圖
| 階段 | 目標 |
|---|---|
| 現在(黑客松) | 測試網上線:二維排行榜、真實主網數據、合約託管跟單、可驗證流程。 |
| 近期 | 強化 executor keeper(自動化、容錯)、更完整的成交鏡像與歷史曲線、前端體驗打磨。 |
| 中期 | 第三方安全審計、接入真實 DeepBook 幣種、主交易者上架與分潤機制。 |
| 長期 | 主網部署、跨市場(更多 DeepBook 池)、社群治理與激勵設計。 |
11. 風險與免責聲明
- 本產品目前運行於 Sui 測試網,為黑客松展示與研究用途,不涉及真實資金。
- 合約尚未經第三方審計,可能存在未知風險。
- 跟單交易具高度風險,過往績效不代表未來表現;本文件不構成投資、財務或法律建議。
- 排行榜上的主網錢包資料用於展示真實績效計算,與 Blubuu Finance 無從屬關係,亦不代表其授權或背書。
附錄 A · 已部署位址(Sui Testnet)
| 物件 | 位址 / 摘要 |
|---|---|
| Package | 0xb3afa59df2b787ad4a062ebe983735986b36f3d7f1f897376d26049e9a2363f9 |
| Registry | 0x0f82e63c5a689e6a702da07637e4b6fed9e1ead155466adf5f6bc071e360f499 |
| CopyVault (DUSDC) | 0x562f1b3870e9b7eba04bc68af4d9e5dde5616baf619f24a6f993fdf2f3ec54d5 |
| DUSDC 幣別 | 0xe95040085976bfd54a1a07225cd46c8a2b4e8e2b6732f140a0fc49850ba73e1a::dusdc::DUSDC |
| Publish 交易 | HLfwuAG7eF5tz9wBjPkBYzjtHBFudYZ4W51QxDBdDcUy |
於 Suiscan (testnet) 以上述位址即可查驗。
附錄 B · 詞彙表
| PnL | Profit and Loss,損益;交易者的報酬。 |
| MDD | Maximum Drawdown,最大回撤;歷史最深的資金回落幅度。 |
| bps | basis points,基點;1% = 100 bps。合約以 bps 儲存 PnL 與 MDD。 |
| DeepBook | Sui 上的原生中央限價訂單簿 (CLOB)。 |
| CopyVault | 託管跟單本金的鏈上金庫,泛型於幣種。 |
| PTB | Programmable Transaction Block,Sui 的可程式化交易區塊。 |
| Keeper / Executor | 監看 DeepBook 並把績效推上鏈的鏈下程式,受 ExecutorCap 控管。 |