架构概览

产品流程详解

1

阶段 1: 代币创建

发生了什么:
  • 用户在 Factory 合约上调用 deployBondkitToken()
  • Factory 使用最小代理模式克隆实现合约
  • 新代币使用自定义参数进行初始化
  • 代币自动进入债券阶段
Gas 成本: ~200,000 gas(比完全部署便宜 90%) 时间: ~15 秒
2

阶段 2: 债券曲线交易

发生了什么:
  • 用户直接从合约买卖代币
  • 价格遵循算法债券曲线:S = S_final × (R/R_target)^exponent
  • 所有交易收取 5% 费用给费用接收者
  • 合约积累报价资产(ETH/B3)达到目标
  • 后端索引所有交易以进行分析
交易机制:
  • 买入:发送 ETH/B3,按当前曲线价格接收代币
  • 卖出:发送代币,接收 ETH/B3 减去费用
  • 如果购买将超过目标则自动退款
持续时间: 直到达到目标(几小时到几周)
3

阶段 3: DEX 迁移

发生了什么:
  • 目标达成时,管理员调用 migrateToDex()
  • 合约计算公平市场价格为 sqrtPriceX96
  • 创建并初始化 Uniswap v4 池
  • 将累积的流动性转移到池中
  • 放弃所有权到零地址
  • 代币成为标准 ERC20,具有 DEX 交易功能
迁移后:
  • 债券曲线永久禁用
  • 所有交易通过 Uniswap v4 进行
  • 不再有管理员控制
  • 实现完全去中心化
Gas 成本: ~500,000 gas 时间: ~30 秒

系统组件

智能合约

后端服务

用户角色

角色责任权限
创建者部署代币,设置参数,启动迁移迁移前完全控制
交易者在债券期间买卖,DEX 上交易标准交易权利
费用接收者接收交易费用仅被动收入
迁移管理员准备就绪时执行迁移一次性迁移权利
LP 提供者(迁移后)向 Uniswap 添加流动性标准 LP 权利

技术深入

债券曲线数学

债券曲线根据供应确定代币价格:
价格公式:
S = S_final × (R / R_target)^exponent

其中:
- S = 当前代币供应
- S_final = 最终代币供应
- R = 筹集金额 (ETH/B3)
- R_target = 目标金额
- exponent = 1 / (1 + aggressivenessFactor/100)
示例计算:
激进性指数价格行为
01.00线性(恒定价格)
250.80温和曲线
500.67中等曲线
750.57陡峭曲线
1000.50非常陡峭(平方根)

迁移价格计算

迁移到 Uniswap v4 时,合约:
  1. 从债券曲线计算退出价格
  2. 转换为 sqrtPriceX96 格式:
    sqrtPriceX96 = sqrt(price) × 2^96
    
  3. 用此价格初始化池
  4. 使用累积资金添加流动性

Gas 优化技术

最小代理模式 (EIP-1167)代替为每个代币部署完整合约代码:
  • 部署一个实现合约 (600KB)
  • 部署微小的代理合约 (45 字节每个)
  • 代理将所有调用委托给实现
  • 结果:每次部署节省 90% 的 gas

配置参数

代币创建参数

参数类型范围/格式影响
namestring1-50 字符代币显示名称
symbolstring2-10 字符交易符号
finalTokenSupplyuint256> 0可铸造总代币
aggressivenessFactoruint80-100曲线陡峭度
targetEthuint256> 0迁移阈值
feeRecipientaddress有效地址接收费用
lpSplitRatioFeeRecipientBpsuint2560-10000LP 费用份额(基点)
migrationAdminAddressaddress有效地址可触发迁移

运行时参数

操作参数验证
买入minTokensOut, ethAmount滑点保护
卖出tokenAmount, minEthOut余额检查,滑点
迁移达到目标,仅管理员

系统常量

常量描述
交易费5%应用于所有交易
小数位18标准 ERC20 小数位
最小目标0.1 ETH最小可行目标
最大激进性100最大曲线因子

安全考虑

重要安全特性:
  1. 所有权放弃: 迁移后自动进行
  2. 无铸币功能: 创建时固定供应
  3. 不可变参数: 部署后不能更改
  4. 审计合约: 专业审查代码
  5. 无管理员后门: 真正的去中心化
  6. 滑点保护: 内置于买卖功能
  7. 溢出保护: 整个过程安全数学

失败场景及处理

场景系统响应
购买超过目标部分填充,退还多余
卖出流动性不足交易回滚
目标前迁移交易回滚
非管理员尝试迁移交易回滚
重复迁移尝试交易回滚
零地址操作交易回滚

下一步