概述
Geocurve 是 Geode 的首个资产模板:Uniswap v4 Hook 代币的联合曲线。灵感来自 SATO 等代币开创的 Hook 格式。Geocurve 代币有一个简单的机制——全部供应量预铸给 Hook,曲线向买家分发代币,从卖家吸收代币。曲线处理一级发行;二级池创造自然的价差动态。 无需预先流动性,无预售,无隐藏分配。无未售出供应问题,无尴尬的 AMM 迁移。只有一条永久的曲线定义一级市场。游戏规则:曲线创造一级发行。其他场所的二级池创造市场交易。两者之间的价差——曲线价格与二级市场价格的背离——就是游戏。
工作原理
联合曲线
Geocurve 使用虚拟恒定乘积公式——与 Uniswap 相同的x × y = k 数学,但有锚定曲线的虚拟储备:
- Vt = 虚拟代币储备(不可变,发行时设置,≥ totalSupply)
- Ve = 虚拟 ETH 储备(不可变,发行时设置)
- S = 累积分发给买家的代币
- E = 从销售中累积的真实 ETH
- K = 不变量常数(Vt × Ve)
起始价格
在发行时(S = 0, E = 0),价格为:价格变动
买入从曲线分发代币。随着代币离开(S 增加),有效代币侧储备缩小,价格上升:曲线数学
买入的 ETH 成本
从当前状态购买Δs 代币需要多少 ETH?
用 ETH 可获得的代币
花费ethIn ETH 可获得多少代币?
卖出的 ETH 回报
卖出Δs 代币可获得多少 ETH?
发行流程
部署
部署者调用
GeodeFactory.launch(),提供代币名称、符号、总供应量和虚拟储备(Vt, Ve)。工厂部署 GeodeToken ERC20,将全部供应量铸造给 Hook,初始化 v4 池为空壳,并注册永久联合曲线。全部在一笔交易中完成。双路径交易
池进入活跃阶段,立即支持两条交易路径:
- 直接交换通过
beforeSwap→ Hook 计算曲线输出并返回完整 delta - 基于意图的批量结算通过
geodeSettleBatch()→ 批量意图以曲线价格结算
价差游戏
这就是 Geocurve 代币超越简单联合曲线的有趣之处。 曲线和二级市场回答不同的问题:| 曲线(一级) | 二级池 | |
|---|---|---|
| 反映什么 | Hook 上的累积分发/吸收需求 | 更广泛的市场情绪和交易 |
| 价格变动 | 确定性的:遵循 x × y = k | 市场驱动的:订单流、套利、投机 |
| 地板价 | 通过储备费用单向上升 | 无固有地板 |
| 流动性来源 | 联合曲线储备 | 来自其他做市商的 LP 仓位 |
- 当二级市场高于曲线时 → 套利者可以从曲线买入,在二级市场卖出
- 当二级市场低于曲线时 → 套利者可以在二级市场买入,卖回给曲线
- 这种套利循环使两个价格保持松散联系,但价差本身就是一个特性
为何重要:与传统发射台模型将曲线”毕业”到 AMM(导致从虚拟曲线价格到真实池价格的尴尬转换)不同,Geocurve 永久存在。曲线就是一级市场。二级池是补充,不是替代。两者之间的价差就是游戏。
批量结算在曲线上
批量结算期间,ConstantProductCurveLib.computeLaunchSettlement() 替代标准出清价格算法。关键区别:
- 出清价格 = 当前曲线现货价格(非 AMM 现货价格)
- 内部撮合工作方式相同——反向流量以曲线价格交叉
- 剩余流量通过 Hook 的储备路由(无 AMM 交换)
- 净买入剩余 → Hook 分发代币,ETH 进入
launchEthReserve - 净卖出剩余 → Hook 吸收代币,ETH 从
launchEthReserve返回
GeodeFactory
工厂合约处理一笔交易发行:- 部署
GeodeTokenERC20(全部供应给 Hook) - 确定性计算 PoolKey
- 初始化 v4 池为空壳(
sqrtPriceAtTick(0)) - 在 Hook 上调用
geodeInitializePool()配置曲线 - 调用
registerLaunch()设置永久曲线状态追踪
无许可
任何人都可以发行代币。无白名单,无审批流程。部署者只付 Gas。
公平发行
无预售,无隐藏分配。全部代币供应给联合曲线。每个买家以当前曲线价格获得代币。
上升的地板价
每次直接交换费用的 1/3 进入曲线的 ETH 储备,永久提高地板价。
最终买家
曲线始终有报价——代币可以随时卖回。虚拟 ETH 储备确保即使所有分发的代币都被卖回,价格也不会归零。
永久设计:Geocurve 是一级市场。没有”下一阶段”——曲线在代币的整个生命周期内提供一级发行、价格发现和上升的地板价。二级市场自然出现,创造使游戏有趣的价差动态。