ZTDX 现货 (Spot) 是一个多代币现货钱包,以及与永续合约交易所并行运行(但相互隔离)的订单簿 (CLOB) 交易场所。MVP 版本支持 BSC 上的 DF 治理代币、永续合约保证金与现货钱包之间的内部 USDT 划转,以及唯一交易对(DFUSDT)。
子系统
| 子系统 | 开关 | 用途 |
|---|
| 现货钱包 | SPOT_ENABLED=true | 按(用户, 代币)的余额账本,支持 BSC 充提,以及永续合约保证金与现货之间的内部 USDT 划转。 |
| 现货交易 | SPOT_TRADING_ENABLED=true(同时需要 SPOT_ENABLED) | 内存 CLOB 撮合引擎 + REST + WebSocket,对应 /spot/orders*、/spot/trades*、/spot/depth、/spot/klines、/spot/ticker/24hr。 |
交易功能关闭时,路由仍然挂载;下单 / 撤单将返回 503 spot trading disabled,公开行情接口将反映空状态。
快速导航
服务端点
| 环境 | REST Base URL | WebSocket |
|---|
| 测试网 | https://api-sepolia.p99.world/api/v1 | wss://api-sepolia.p99.world/ws |
| 主网 | (尚未部署) | (尚未部署) |
链上组件
| 项目 | 网络 | 地址 / 参数值 |
|---|
| BSC chain id | BSC 测试网 | 97 |
金库合约 (ZtdxSpotVault) | BSC 测试网 | 0x4Fe0b354c5865ee9deb979a99030d757ae47664a |
| DF 代币 (ERC-20) | BSC 测试网 | 0x8063a43ed88397c1B10DA23dcC60ba1E7A0Bf555 |
| DF 精度 | — | 18 |
| 永续合约抵押品 (USDT) | Arbitrum Sepolia (421614) | 0xfA70c5A9221d239Cd51DBf48967ABc79d7B9D61d |
| USDT 精度 | — | 6 |
交易子系统概述
撮合引擎是单个 Tokio 任务,每个市场持有一个内存订单簿(MVP 阶段仅 DFUSDT)。每笔成交均在独立事务中写入 PostgreSQL。重启时,GTC 限价单从 spot_orders 重建;处理中的 IOC 和市价单将被撤销并退还锁定金额。
- 最小价格变动 (tick_size) / 最小数量 (lot_size) / 最小名义额 (min_notional) 均为每个市场独立配置(参见 GET /spot/markets)。
- 自成交防护策略为
DECLINE_TAKER:若您的新订单将与自身挂单发生撮合,该新订单将被拒绝并返回 SELF_TRADE。
- 手续费按市场配置(
maker_fee_bps / taker_fee_bps);测试网当前均为 0。
注意事项
- BSC 监听器从冷启动开始以约 30 个区块/秒的速度追块。追块完成后,充币将在约 40 秒内到账(20 个确认 × BSC 约 2 秒/区块)。
- WebSocket 推送涵盖深度差分、成交、K 线、行情 Ticker,以及用户专属的订单与余额更新。REST 轮询仍可作为备选方案。