Sparky 开发者文档
欢迎使用 Sparky 开发者文档。Sparky 是运行在 EVM 链上的永续合约 DEX:撮合在链下的 Rust 引擎中完成,保证金托管在链上 Vault 合约,所有成交通过 TradeRecorder 合约做链上存证。本站覆盖平台核心概念与完整 API 参考。
内容地图
核心概念
API 参考
- 永续合约 — Binance USDT-M 兼容的
/fapi/v1/*+/fapi/v2/*REST、WebSocket 推送与 Sparky 扩展接口 - 推荐返佣 — 推荐码、阶梯返佣、链下 / 链上领取
支持的链
Sparky 每条链一套独立后端部署。每套部署有自己的 Base URL、数据库和 Vault,因此账户余额、持仓与 API Key 都是按链隔离的:在 Avalanche 创建的 Key 不能用于 Arbitrum。
| 网络 | Chain ID | 原生 Gas | 结算资产 | 状态 |
|---|---|---|---|---|
| Avalanche C-Chain | 43114 | AVAX | USDT(6 位精度) | 主网 |
| Arbitrum One | 42161 | ETH | USDT(6 位精度) | 主网 |
| BNB Chain | 56 | BNB | USDT | 主网 |
| Avalanche Fuji | 43113 | AVAX(测试) | 测试 USDT | 测试网 |
| Arbitrum Sepolia | 421614 | ETH(测试) | 测试 USDT | 测试网 |
各部署的 API Base URL 见 基本信息 › Base URL。
链上合约
合约地址通过环境变量注入到各链的后端部署(VAULT_ADDRESS、TRADE_RECORDER_*、REFERRAL_*),每条链不同,本文档不硬编码任何地址。请从接口读取实时地址:
| 合约 | 作用 | 获取地址 |
|---|---|---|
| Vault | 托管用户保证金。用户调用 deposit(amount, referralCode);提现需要后端 EIP-712 签名(withdraw(user, amount, nonce, expiry, signature))。后端监听 Deposit / Withdraw 事件入账与解冻。 | POST /api/v1/deposit/prepare → contract_address;POST /api/v1/withdraw/request → vault_address |
| TradeRecorder | 所有成交的链上只增记录。后端把成交批量写入 onchain_trade_records outbox,由 recorder worker 提交合约,形成可审计的链上成交账本。 | 目前无接口暴露;来自部署配置 TRADE_RECORDER_* |
| ReferralStorage / ReferralRebate | 链上推荐码注册表(推荐码、关系、等级)与返佣账本。后端每小时同步返佣(batchSyncRebates);用户持后端签名调用 claimRebate(amount, deadline, signature) 领取。 | GET /api/v1/referral/on-chain/operator-status → contract_address |
状态
🚧 持续建设中。 Base URL 在域名分配前为占位符;各端点页面已对照后端路由表核对,Binance 定义但 Sparky 未提供的端点标记为 空缺(暂未实现)。