从这里开始
寄存代币。带着现金离开。 隔离账本。分级 LTV。收入买回迷因币。
LOAN MEME 是一个拥有借贷协议的迷因币,不是一个租了个吉祥物的协议。你把一个迷因币作为抵押品存入它自己的账本(一个市场:一个迷因币,一种稳定币),以此借出稳定币,还款后再把它取回。
目前什么都还没部署,没有合约,没有市场,没有代币地址。今天任何自称是 LOAN MEME 的东西都不是我们的。
它是什么,不是什么
谁不该参与
文档
寄存代币。带着现金离开。 隔离账本。分级 LTV。收入买回迷因币。
LOAN MEME 是一个拥有借贷协议的迷因币,不是一个租了个吉祥物的协议。你把一个迷因币作为抵押品存入它自己的账本(一个市场:一个迷因币,一种稳定币),以此借出稳定币,还款后再把它取回。
目前什么都还没部署,没有合约,没有市场,没有代币地址。今天任何自称是 LOAN MEME 的东西都不是我们的。
什么都还没部署。本页说明下一步上线之前每一件必须成立的事,并列出所有仍在等一个数字的参数。
下面的阶段是有先后顺序的,不是排好日程的。只有在上一个阶段结束之后,我们才会公布下一个阶段的日期。一份写着我们守不住的日期的路线图,比没有日期更糟。
每个阶段都列出了离开它必须成立的条件。没有任何事情按日历推进,只有满足退出条件才会推进。
本文档中目前标注为 待定 的每一个数字,都会有一个数值、一个理由和一个负责人。
合约部署到公开测试网,至少有一个账本和一条可用的清算路径。
合约会在任何账本开放之前完成审计。在那之前,上面没有任何参数是生效的,也没有任何资金处于风险之中。见 治理与参数.
一条链,少量账本,借款上限设得远低于仅凭交易池深度所允许的水平。只有优先级金库。
薄账本开放,次级份额随之上线。这是一个可能被取消的阶段:如果 优先级与次级 中的瀑布结构无法做到把次级损失限制在各自的账本之内,次级就不会上线,T3 也继续关闭。
只有在第一条链走完一个完整周期、包括至少一次清算连锁之后,才会有第二条链。 预言机与上架 上的公链表格会一直是空的,直到每一条链真正上线。
存入一个已上架的迷因币。以它为抵押借出稳定币,上限由它所在的分级决定。贷款开着的时候利息一直在走。还款后取回迷因币。
一个仓位,从头到尾。每个账本都有两边:出借人存入稳定币,你存入迷因币并取出稳定币。第 1 步和第 2 步在同一笔交易里完成。第 3 步会自己进行,直到你做第 4 步。
你把一个已上架的迷因币发送到它自己的账本(它自己的钱包)。它锁在那里。它不会被借出,不会被质押,也不会被拿去挖任何东西。
账本按 TWAP 为你的迷因币估值:主池在一个时间窗口内的平均价格,而不是最后一笔成交。你最多可以借出该价值的一个固定比例,也就是该代币所在分级的最高 LTV。借得更少,迷因币就有更多下跌空间。你收到的金额里会扣掉 2.5% 的开仓费:借 $10,000 你拿到 $9,750,欠 $10,000。
随着时间推移,利息按该账本的借款利率加到你的债务上。没有任何按期应付的款项。债务只是不断增长,即使价格不动,贷款也会朝清算漂移。
还清稳定币加利息,再加上按还款金额计的 2.5% 还款费,迷因币就解锁。
只要保持健康,贷款就一直开着。提前结束它的是价格和利息,不是日历。见 清算.
一个数字告诉你离清算有多近。等于或大于 1 就没事。低于 1,任何人都可以清算你。
抵押品价值用的是 TWAP,不是最后一笔成交。 一个区块的插针不会清算你,也救不了你。
清算线来自分级。 如果代币掉了一级,变更生效后,更紧的清算线就适用于你已经开着的贷款。 通知期待定
你的债务随利息增长, 所以一笔你从不动的贷款,即使价格不动也会朝清算漂移。
你有两种方式提高 HF: 偿还一部分债务,或者追加同一个迷因币。
如果价格跌得足够深,或者利息堆了起来,任何人都可以清算你。他们偿还你的一部分债务,并拿走相应数量的迷因币,外加 12% 的奖励(视账本不同为 10% 到 15%)。你借到的稳定币归你。他们拿走的迷因币不会回来,哪怕一小时后价格就反弹。没有警告,没有宽限期,也没有申诉。
你的 LTV 首先是按代币评级的,不是按推广它的网红评级的。
LTV 是你能借出的迷因币价值的占比。每一个已上架的迷因币都属于某个分级,分级为它的账本设定两个数字:最高 LTV,以及清算线,也就是你的贷款可以被清算的水平。一个上线两天、交易池很薄的代币,拿不到一个活了一年、有真实深度的代币的条件。
更高的分级意味着更好的条件,不是更安全的迷因币。T1 代币一样会砸盘。
待定,下面的区间是工作中的大致形态,不是已敲定的参数。最终数值会在第一个市场开放前落在这里。
| 分级 | 谁能进 | 最高 LTV | 清算 | 借款上限 |
|---|---|---|---|---|
| T3 | 新代币,账本薄。只满足最低上架门槛,再无其他。 | ~30% | ~38% | 小 |
| T2 | 有年龄,有真实成交量,LP 已锁定。 | ~45 到 50% | ~58% | 中 |
| T1 | 幸存者。账本深,增发权限已废除。 | ~55 到 60% | ~65% | 较大 |
所有这些数字都是估算。每个迷因币都会有自己专属的数字和算法,在我们的应用里展示。
分级决定你的 LTV。借款上限决定整个账本能承载多少,而它不是拍脑袋定的:它由主池的深度推导出来,因为每一次清算都必须在这个池子里卖出。
要求是:把这个账本 全部 未偿债务一次性拿去清算,对清算人来说仍然是一笔愿意做的交易。这意味着这笔卖出必须在 底线给出的盈亏平衡滑点之下完成,并且留有余量。
| 分级 | 滑点目标 | κ,上限占交易池深度的比例 |
|---|---|---|
| T1 | 待定 | 推导自 starget |
| T2 | 待定 | 推导自 starget |
| T3 | 待定 | 推导自 starget |
滑点目标是这里唯一的自由选择;一旦它定下来, κ 就由公式得出。它必须满足的约束是:一次整本清算仍然能成交,也就是说 starget 必须低于清算奖励所能吸收的盈亏平衡滑点。见 底线.
低分级会拿到更小的深度占比,不是因为薄池活该受罚,而是因为它们的深度更不可靠:一个薄池可能一夜之间腰斩,而上限必须撑过两次重算之间的空档。这个先后顺序是定了的,尽管数值还没定。
借款上限是债务的绝对天花板,由交易池决定。利用率是已借出与已存入的比值,它管住出借人的提取,并决定利率。如果出借人本来就没存多少,一个账本可以处在 100% 利用率却离上限很远。见 利率.
所有能让代币升级的东西,同样能让它降回去:深度流失、成交量是假的、LP 锁到期、权限又出现了。降级会收紧 该账本里每一笔未结清的贷款的清算线,所以它可能在价格完全没动的情况下让你变得可被清算。
生效之前有一个通知期,具体机制、时间锁类别以及现有仓位会怎么样,都在 分级降级。如果一个代币完全不再满足上架门槛,账本会被清退而不是降级:见 下架与清退.
一个公式,每个账本四个数字。利率不是任何人按天设定的:它是当前账本被借出多少的函数。
本页上凡是方程式的内容,都是设计意图。进入公式的每一个数值 — 基础利率、拐点、斜率 1、斜率 2 — 都是 待定。唯一的例外是储备金比例,它定为 20%。下面出现的任何其他数字,都是为了展示算术过程,而不是在陈述某个参数。
利用率是一个账本的稳定币中当前借出去的那部分占比。它是借款利率的唯一输入。
借款利率是一条两段斜率的折线,在一个目标利用率处有一个拐点。拐点以下利率上升平缓,因为我们希望账本被用起来。拐点以上利率陡峭上升,因为账本里最后那些稳定币,正是出借人需要能提走的,而唯一能把它们释放出来的杠杆,就是让债务变贵。
base。在拐点处是 base + slope1。在 U = 1 时是 base + slope1 + slope2,这是该账本能收取的最高利率。
借款人支付的利息,在该账本的出借人和协议之间分配。协议拿走的那部分是 储备金比例。其余全部归出借人,摊到整个账本上,包括当前没有借出去的那部分。
× U 就是一个闲置账本几乎不付息的原因:只有借出去的那部分在赚钱,但收益要分摊到每一笔存款上。见 出借人.
算一下,用 20% 的储备金比例,另外两项取任意输入:一个 U = 0.70、借款利率 12% 的账本,会付给出借人 12% × 0.70 × 0.80 = 6.72%,并把账本的 1.68% 导向协议。利用率和借款利率都不是已定的数值。
没有付款计划。利息按每秒的指数连续复利计入你的债务。你的债务不是以稳定币的数量存储的,而是存储为那个指数的一个份额,所以每一笔开着的贷款都会在没有人动它的情况下累计。
APR 是复利之前的利率。APY 是在按秒复利之后,你实际支付或赚到的数字。这个换算是算术,不是参数:无论各分级的取值最终是多少,它都成立。
借款成本和出借人收益都以 APY 显示,因为那才是你实际感受到的数字。本文档中凡是 APR 的数字都会注明。合约存储的是 APR,界面负责换算。
每个分级四个数字,目前一个都还没定,外加储备金比例,各分级一律 20%。下表是最终签字确认时要填入的形状,利率各列宁可空着发布,也不用猜测填满。
| 分级 | 基准利率 | 拐点 | 斜率 1 | 斜率 2 | 最高利率 | 储备金比例 |
|---|---|---|---|---|---|---|
| T1 | 待定 | 待定 | 待定 | 待定 | 基准利率 + 斜率 1 + 斜率 2 | 20% |
| T2 | 待定 | 待定 | 待定 | 待定 | 基准利率 + 斜率 1 + 斜率 2 | 20% |
| T3 | 待定 | 待定 | 待定 | 待定 | 基准利率 + 斜率 1 + 斜率 2 | 20% |
所有数值都将是 APR。这组数字必须满足的唯一性质是方向性的:账本越薄、越新,拐点越低、斜率 2 越陡,因为一个薄账本承受不起被钉在满利用率上、让出借人干等。数字没定,这个约束已经定了。
利息会加到你的债务上,所以即使迷因币没动,你的健康度也会下降。一笔贷款在横盘行情下能活多久,完全由利率以及最高 LTV 与清算线之间的差距决定,这正是那些数字值得争论的原因。 见 计算示例.
协议收取的每一项费用都在一张表里,每一行都有数字。费用为零的地方就写零,而不是绝口不提。
没有任何一项收费不在这张表上。如果你发现了这里没有列出的收费,那是 bug,我们想知道。
| 费用 | 费率 |
|---|---|
| 存入费 | 2.5% |
| 提取费 | 2.5% |
| 借款开仓费 | 2.5% |
| 还款费 | 2.5% |
| 储备金比例 | 20% |
| 清算奖励 | 12% 的已偿还债务(各账本 10–15%) |
| 清算中的协议分成 | 该奖励的 10% |
| 上架费 | 0 |
| 出借人收益的业绩费 | 0 |
协议收入有三个来源:每一笔存入、提取、借款和还款收取的 2.5% 费用;借款利息上 20% 的储备金比例;以及清算奖励的 10%。三者都落在各自产生它们的那个账本里,而且在任何钱流出之前,三者都先补该账本的储备金。
这些会让你花钱,但其中没有一分进入协议。我们把它们列出来,因为漏掉它们正是一张费用表变得不诚实的方式。
本页上的每一项费用都是带时间锁的参数,由经过审计的合约强制执行。任何变更都会在生效前公告,每一次变更都记录在 治理与参数.
三个头寸,每一个数字都一路算给你看:一个善终,一个被清算,一个留下窟窿。算术你可以自己核。
MEME_A、MEME_B 和 MEME_C 都是占位。没有任何代币已上架,没有任何账本存在,下面用到的每一个参数 — LTV、清算线、利率、清算比例 — 都是 待定,在这里选定只是为了让算术有东西可跑。费用则是真实的,来自 费用:借款 2.5%、还款 2.5%、20% 的储备金比例,以及 12% 的清算奖励并把其中的 10% 给储备金。固定下来的是方法,不是数值。改动任何一个输入,下游的每一个数字都会跟着动。
MEME_A,一个 T1 账本:最高 LTV 60%,清算线 65%,在该账本当前利用率下借款利率 6.30% APR,储备金比例 20%。
| 步骤 | 发生了什么 | 数字 |
|---|---|---|
| 存入 | 把 100,000 MEME_A 存入账本,按 $2.40 的 TWAP 计价 | 抵押品 = 100,000 × $2.40 = $240,000 |
| 借款上限 | 该分级的最高 LTV 是 60% | $240,000 × 0.60 = $144,000 |
| 借款 | 你有意借得远低于上限 | $100,000 USD,LTV 为 41.7% |
| 借款开仓费 | 借款额的 2.5%,从你收到的钱里扣 | 你收到 $97,500 并欠下 $100,000 |
| 健康度 | 用的是 65% 的清算线,不是 60% 的借款上限 | (240,000 × 0.65) / 100,000 = 1.56 |
| 90 天过去 | 按 6.30% APR 每秒复利 | 100,000 × e0.063 × 90/365 = $101,565.55 |
| 利息分配 | $1,565.55 的利息,其中 20% 进储备金 | 出借人 $1,252.44,储备金 $313.11 |
| 价格缓慢下滑 | 你回来时 MEME_A 的 TWAP 是 $2.10 | 抵押品 = $210,000 |
| 此时的健康度 | 两边都低了,依然宽裕 | (210,000 × 0.65) / 101,565.55 = 1.34 |
| 还款 | 你付清全部债务,外加 2.5% 的还款费,账本解锁迷因币 | $101,565.55 + $2,539.14 = $104,104.69,把 100,000 MEME_A 还给你 |
这笔贷款花了 $6,604.69:其中 $1,565.55 是利息,相当于 90 天内本金的 1.57%,即 6.50% APY,另加 $5,039.14 的开仓费和还款费。每项费用只收一次,贷款开多久都一样,所以在一笔 90 天的贷款上,费用占了成本的大部分。贷款期间迷因币跌了 12.5%,什么也没发生,因为这个头寸是在 41.7% 的 LTV 上开的,而不是顶在 60% 的上限。这个差距就是这个例子能以拿回迷因币收尾的全部原因。
MEME_B,一个 T2 账本:最高 LTV 50%,清算线 58%,借款利率 15% APR,清算奖励 12%,清算比例 50%,协议在奖励中的分成 10%。借款人的行为和上面一样,但更贴近上限,而且账本更薄。
| 步骤 | 发生了什么 | 数字 |
|---|---|---|
| 开仓 | 5,000,000 MEME_B,TWAP 为 $0.0200,借款 $48,000,扣掉 2.5% 费用后收到 $46,800 | 抵押品 $100,000,LTV 48% |
| 健康度 | 清算线只比借款高出 8 个百分点 | (100,000 × 0.58) / 48,000 = 1.21 |
| 60 天过去 | 按 15% APR 计息 | 债务 = $49,198.27 |
| 价格下跌 20% | TWAP 打出 $0.0160 | 抵押品 = $80,000 |
| 健康度 | 低于 1。从这个区块开始,任何人都可以清算。 | (80,000 × 0.58) / 49,198.27 = 0.943 |
| 还款 | 清算人按清算比例偿还,也就是一半债务。还款费不适用于清算。 | R = $24,599.14 |
| 扣押 | 他们拿走这部分价值加上 12% 的清算奖励,按同一个 TWAP 计价 | $24,599.14 × 1.12 = $27,551.03 = 1,721,940 MEME_B |
| 奖励分配 | $2,951.90 的奖励被拆分,它出自被扣押的部分,而不是额外的抵押品 | 清算人 $2,656.71,储备金 $295.19 |
| 再次检查 | 债务 $24,599.14,抵押品 3,278,060 MEME_B,价值 $52,448.96 | HF = 1.24,所以到此为止 |
这次清算之所以成立,是因为在这条清算线下 12% 落在两个边界之内:L = 0.58 时的上界是 1/0.58 − 1 = 72%,而 5% 退出滑点下的下界约为 5.8%。健康度 上升了,从 0.943 到 1.24,而这正是全部要点所在。见 两个边界.
MEME_C,一个 T3 账本:最高 LTV 30%,清算线 38%,借款利率 14% APR,清算奖励 12%。借款人没做任何反常的事。代币跳空了。
| 步骤 | 发生了什么 | 数字 |
|---|---|---|
| 开仓 | 20,000,000 MEME_C,TWAP 为 $0.0050,借款 $29,000,扣掉 2.5% 费用后收到 $28,275 | 抵押品 $100,000,HF 1.31 |
| 16 天过去 | 按 14% APR 计息 | 债务 = $29,178.52 |
| 代币跳空 | MEME_C 在不到一小时内下跌 76%。TWAP 滞后,随后打出 $0.0012。 | 抵押品 = $24,000 |
| 健康度 | 远低于 1,抵押品已经完全覆盖不住债务 | (24,000 × 0.38) / 29,178.52 = 0.31 |
| 清算人最多能偿还多少 | 他们扣押的迷因币不可能多于实际存在的数量,所以可偿还额被抵押品本身封顶 | $24,000 / 1.12 = $21,428.57 |
| 扣押 | 剩下的代币全部被拿走。借款人的抵押品现在是零。 | 20,000,000 MEME_C |
| 剩下什么 | 没有任何东西支撑的债务。这就是坏账。 | $29,178.52 − $21,428.57 = $7,749.95 |
亏损按 坏账页中规定的顺序吸收:先是该账本的储备金,然后是次级,最后是优先级。这个账本是 T3,所以优先级从一开始就不在其中。
| 层级 | 容量 | 吸收 | 剩余待吸收 |
|---|---|---|---|
| MEME_C 账本储备金 | $2,400 | $2,400,全部 | $5,349.95 |
| 本账本中的次级 | $120,000 | $5,349.95 | $0 |
| 优先级 | 不存在 | $0 | $0 |
次级在 MEME_C 账本中的份额从 $120,000 降到 $114,650.05,即该账本次级份额价格减记 4.46% 。某位次级存款人的金库有 $600,000 分散在多个账本上,他看到的金库份额价格只下跌 0.89%,因为只有 MEME_C 这一块被打到。一个从未对 MEME_C 有过敞口的出借人分毫未损。
上面的例子假设有清算人出现。在 8% 的退出滑点下确实会有:卖出 $24,000 的 MEME_C 净得 $22,080,对应 $21,428.57 的偿还和 $107 的成本,利润 $544。在 25% 的滑点下,也就是一个刚跌了 76% 的代币的现实数字,同一笔交易亏损 $3,536,而 没有人会去清掉它。这个头寸就那样摆着,利息继续累积,直到价格回升,或者账本被退市清退。$7,749.95 的坏账已经是好结果了。
上面每一个数字都可以用 利率 和 贷款如何运作页上的公式复现。如果你是对着合约而不是计算器重建它们,有两件事要知道:
你放入稳定币。借款人放入迷因币并向你支付利息。本页说明它是怎么运作的。
你存入借出资产:USD 或该链的稳定币,取决于部署。它待在一个账本里,被借给那些已经锁入该账本迷因币的借款人。你的回报是他们支付的利息,减去协议 20% 的分成。存入和提取各收 2.5%。见 费用.
你只对自己出借进去的账本有敞口。你没进的账本不会让你损失任何东西。你进哪些账本是你存入时的选择,而这就是你全部的敞口。
同一个账本上的两种索取权,顺序固定:次级先被减记,并因此拿到更高的回报。摘要见下;瀑布顺序、次级覆盖上限、利率拆分和被打穿的情形都在 优先级与次级. 待定,只有在我们能把它做对时才会上线
| 优先级 | 次级 | |
|---|---|---|
| 出借范围 | 仅限 T1 账本 | 任何分级,T1 到 T3 |
| 亏损 | 某个 T1 账本出事。更少见,但并非不可能。 | 承担第一笔亏损。新而薄的账本正是迷因币死掉的地方。 |
| 利率 | 预期较低 | 预期较高 |
| 适合谁 | 你想让稳定币赚利息,并接受智能合约风险,以及偶尔出事的 T1 账本。 | 你接受在一个薄迷因账本出事时排在第一位,也接受你可能损失一部分存款。 |
次级的本质 就是如此。如果一个 T2 或 T3 账本在清算之后仍然留下坏账,那笔亏损由次级出借人承担。更高的利率就是对此的报酬。如果你不能接受在薄迷因币账本上排第一位,就去出借优先级,或者去别的地方。
利用率是一个账本的稳定币当前被借出的比例。它决定借款利率,也决定你此刻能不能提取。
按发生的频率排序,不是按损失的大小。两者并不一致:最可能的损失不是最大的,最大的那个排在接近末尾的位置。每一行上的标签说明真正处于风险中的是什么。
迷因币跳空下跌的速度快过清算能跟上的速度,抵押品不再覆盖债务,缺口落到该账本的出借人头上。其他账本的出借人分毫未损。
利用率被钉在 100%,而你恰好在想离场的那一刻被锁住。你的余额完好无损,你只是在借款人还款或新存款到来之前碰不到它。
借款人还款,利用率下降,你的稳定币闲置着,几乎赚不到东西。没有任何东西出错。这个账本只是没人用。
市场合约、持有迷因币的锁仓合约、喂价源或费用路由里的一个 bug。可能性很低,而且是迄今为止最糟的:它能把一切都拿走,而且不在乎你在哪个金库里,也不在乎账本是哪个分级。
你持有的是借出资产。如果 USD 或该链的稳定币不再值 $1,那就是你的损失,本协议里没有任何东西能抵消它。账本依然是平的,只是计价的代币变得不值钱了。
每个账本都有自己的储备金,由该账本自身的收入注入,覆盖该账本债务的百分之几。它在出借人被动到之前吸收小额亏损。它不是保证,也不是大型事件的兜底,我们不会把它说成那样。见 储备金.
同一个账本上的两种索取权,顺序固定。次级拿到更高回报,因为次级先被减记。本页讲的就是这个顺序、上限、利率拆分,以及次级被耗尽的情形。
分层是本协议里最原创的东西,也是 DeFi 借贷里最少见的,这意味着它是可以借鉴的别人的错误最少的那部分。只有当下面的瀑布顺序能够做到让一笔次级亏损留在它发生的那个账本之内时,它才会上线。如果做不到,次级就不发布,T3 账本保持关闭,我们会在这里直说,而不是用同一个名字发布一个更弱的版本。
一个覆盖所有迷因币账本的单一出借池,对一个跨度极宽的风险区间只有一个价格。想在稳定币上拿 5% 的出借人,和想要 20% 且清楚自己在买什么的出借人,拿到的是同一个混合数字,而前者在悄悄补贴后者的上行。把索取权拆开,各自为自己的风险定价。
这更接近私募信贷,而不是 Aave。Aave 把亏损在整个池子里共担,并用质押模块兜底。Morpho、Euler 和 Silo 按市场把亏损社会化,完全没有兜底。在这里,亏损按账本隔离, 并且 在账本内部还有顺序。见 我们有何不同.
当一个账本出现坏账时,缺口按以下顺序吸收,而且永远只由原本就在那个账本里的钱来吸收。
这个问题值得说精确,因为答案会改变你买的究竟是什么。
| 优先级 | 次级 | |
|---|---|---|
| 可配置到 | 仅限 T1 账本 | 任何分级,T1 到 T3 |
| 在账本中的位次 | 亏损时最后承担,利息上最先分配 | 最先被减记,拿剩下的 |
| 预期利率 | 较低,波动也较小 | 较高,并且在糟糕的月份可能是负的 |
| 什么时候会亏钱 | 某个 T1 账本的亏损大于该账本里全部的次级 | 它所在的任何一个账本出现任何亏损 |
| 提取 | 受空闲流动性限制 | 受空闲流动性限制 以及 下文的次级覆盖上限和冷却期的限制 |
| 适合谁 | 你想让稳定币赚利息,接受智能合约风险,也接受一个 T1 迷因币仍可能死得难看到把次级吃穿。 | 你是在有意为迷因币信用风险定价,你明白自己排在第一位,而且你可能损失大部分甚至全部存款。 |
优先级的保护只有它下面垫着的次级那么厚,所以一个账本不能在薄薄的一层次级之上吸纳无限的优先级资金。每个账本都带有一个最大比率。
这个上限在实践中做什么:
账本赚到一个数字:借款人支付的利息,扣除储备金比例,具体见 借款利率。这个数字随后被拆分。优先级先拿到它那一份;剩下的归次级。
仅为示意,用来说明拆分是怎么运作的。一个账本有 $400,000 优先级和 $100,000 次级,比例 4:1,付给出借人的混合利率为 8%,折扣设为 25%。这些输入没有一个是已经敲定的数值。
| 资本 | 按比例应得利息 | 实际支付 | 利率 | |
|---|---|---|---|---|
| 优先级 | $400,000 | $32,000 | $24,000 | 6.00% |
| 次级 | $100,000 | $8,000 | $16,000 | 16.00% |
| 账本合计 | $500,000 | $40,000 | $40,000 | 8.00% |
次级拿到 16% 而不是 8%,是因为每年有 $8,000 从优先级转移过来。 这 $8,000 就是优先级为 $100,000 缓冲层付出的价格。改动折扣,最后两列的每个数字 都会变;机制不会变。这笔交易划不划算,取决于这层缓冲被用到的频率,而那正是 风险 要讲的事。
| 账本中的缺口 | 储备金吸收 | 次级吸收 | 优先级吸收 | 次级份额价格 |
|---|---|---|---|---|
| $5,000 | $5,000 | $0 | $0 | 不变 |
| $35,000 | $5,000 | $30,000 | $0 | −30% |
| $105,000 | $5,000 | $100,000,全部 | $0 | 归零 |
| $135,000 | $5,000 | $100,000,全部 | $30,000,即 −7.5% | 归零 |
假设该账本有 $5,000 储备金。优先级的第一分钱亏损要到第四行才出现。
次级份额价格为零不是一个四舍五入的问题,而是该账本中这一层的终局状态。 下面这些事会自动发生,和减记在同一笔交易里完成。
没有任何机制能让同一个账本之后赚到的利息,把已经被减记的次级持有人补回来, 也没有任何机制能用另一个账本的利润来补。如果你希望减记是可以恢复的,那你要的是 优先级。
| 优先级 | 次级 | |
|---|---|---|
| 存入 | 随时,除非该账本已经到达次级化上限 | 随时 |
| 存入费 | 2.5% | 2.5% |
| 提取费 | 2.5% | 2.5% |
| 提取,流动性 | 以该账本的空闲稳定币为限 | 以该账本的空闲稳定币为限 |
| 提取,上限 | 不受该比例限制 | 如果会把账本推过 Rmax |
| 冷却期 | 无 | 长度 待定。它存在的意义是:不让次级在价格刚开始动的那一刻就先跑掉。 |
| 暂停期间提取 | 可以,以稳定币空闲的部分为限 | 可以,以稳定币空闲且上限允许的部分为限 |
次级冷却期只有一个理由:没有它,第一个注意到某个迷因币开始晃动的次级存入人 就能按面值退出,把亏损留给剩下的次级持有人,而在他们同时在场的那一刻,这笔亏损 本该是共同承担的。冷却期让这场赛跑变成跑不赢,而不只是不公平。
公布出来,是因为它们还没定,也因为一个把这些藏起来的文档页,对任何正在决定要不要 出借的人来说,比没用还糟。
目前优先级只进 T1。支持开放 T2 的理由是:一个下面垫了完整次级层的 T2 账本,可能确实比一个已经到达上限的 T1 账本更安全,而分级只是一个粗糙的代理指标。反对的理由是:这会让优先级的风险取决于第二个变量,而存入人现在得逐个账本去盯它。尚未解决。
一个统一的折扣,会为次级挡在 T1 账本前面和挡在 T3 账本前面支付同样的溢价,这等于低估了 T3 次级的价格。按分级设定折扣能解决这一点,但也给每个账本多加了一个需要治理的参数。倾向于按分级设定,但没有决定。
机制上可以,因为层级是仓位在某个账本中的属性,而不是存入人的属性。界面是否应该鼓励这么做,是另一个问题。目前每一笔存入在一个账本里选一层,或者通过一个代为分配的金库来做。
有时候抵押品先耗尽,债务还没还完。本页讲的是接下来会发生什么:亏损在什么时候被确认, 谁来吸收,按什么顺序,以及它落地的那一刻你的份额价格会怎样。
坏账是背后已经没有抵押品的债务。不是只是浮亏的仓位,也不是还没有人去清算的仓位: 那些是健康度不足的仓位,它们可以恢复。坏账是清算人已经拿走最后一个代币、债务却仍然 不为零时剩下的东西。
账本两个都报,因为只报第二个,正是一个协议看起来一直有偿付能力、直到它没有的方式。
立刻,和最后一次清算在同一笔交易里。 不 往后拖,不摊销,也不塞进某个账目里留待以后处理。
理由是,任何拖延都会制造一场赛跑。如果一个账本有一个已知的窟窿,份额价格却还说没有, 那么先提取的出借人能全身而退,动作慢的那些人就得扛下全部亏损。当场确认意味着份额价格 在每个区块都是真的,而在抵押品耗尽那一刻还留在账本里的每个人,都按比例分担这笔亏损。
在价格跳空和最后一次清算结清之间,这个缺口是未实现的,而在这个窗口里提取的出借人, 躲掉的是其他人要承担的亏损。有三件事让这个窗口变窄:清算是无需许可的,所以任何人都能 去平掉这个仓位;缺口全程公开,所以没有人是靠私有信息在提取;次级存入带有冷却期,所以 承担第一笔亏损的那一层没法在窗口里跑掉。它被缩窄了,没有被关闭。
三层,按这个顺序,全部都在出现亏损的那个账本之内。瀑布结构图在 优先级与次级.
| 顺序 | 层 | 容量 | 它对你意味着什么 |
|---|---|---|---|
| 1 | 该账本的储备金 | 该账本累计到的全部金额,以其余额为上限 | 没有影响。这种规模的亏损,出借人察觉不到。 |
| 2 | 本账本的次级 | 该账本中次级的全部余额,直到归零 | 次级份额价格下跌。见 清零的情形. |
| 3 | 本账本的优先级 | 该账本中优先级的全部余额 | 优先级份额价格下跌。只有在次级归零之后才会触及。 |
储备金是每个账本各自的缓冲,由该账本自己的收入注资,具体见 费用。它会在确认亏损的那笔交易里自动支取,没有审批环节,也没有自由裁量。它的目标规模是 待定,而无论那个数字最后定成多少,它都是对小额亏损的缓冲,而不是对大额亏损的保险。
出借人的存入以账本中的份额形式持有,按账本的总资产计价。减记坏账会减少总资产, 而份额数量不变,所以每份份额的价格下跌。没有任何东西从你的钱包里被拿走;只是每份份额 值的钱变少了。
次级层上一次 4.46% 的减记,意味着原本值 $1,000 的 1,000 份份额,现在值 $955.40。 份额还是你的,也还在继续赚钱;只是赚钱的本金更小了。
完整的算术在 计算实例. 下面每一个数字都只是示意:它用到的参数都还没有拍板。
| 金额 | 说明 | |
|---|---|---|
| 未偿债务 | $29,178.52 | 按示意性的 14% APR 计息 16 天之后 |
| 按 TWAP 计的剩余抵押品 | $24,000 | MEME_C 下跌 76% |
| 清算人最多能偿还 | $21,428.57 | $24,000 / 1.12,因为他们扣押的迷因币不可能多过实际存在的数量 |
| 已实现坏账 | $7,749.95 | 在清算的那笔交易里被减记 |
| 储备金吸收 | $2,400 | 该账本储备金的全部余额 |
| 次级吸收 | $5,349.95 | 该账本次级份额价格下跌 4.46% |
| 优先级吸收 | $0 | T3 账本,优先级从来就不被允许进入 |
无论储备金目标定成多少,它都会是一个账本债务的百分之几。真正会伤到一个迷因币账本的 事件,是 40% 到 80% 的跳空,面对那种情况,储备金就是个舍入误差。它的作用是挡住小额亏损, 不让它打到出借人身上,而不是让出借人毫发无损。任何把它说成保险的人,包括状态不好的那天 的我们自己,都是错的。
价格来自主池的 TWAP,而不是最后一笔成交。如果交易池空了,新借款暂停。 一个代币只有通过每一项上架检查,才会拿到账本。
最后一笔成交是交易池里上一笔交易的价格。在迷因币上,把它推动很便宜。如果抵押品按它计价, 任何人都可以把价格拉上去,按这个假价值借款然后走人,或者把价格砸下去,把别人清算掉拿 清算奖励。
所以每个账本都用 TWAP,也就是时间加权平均价,来给它的迷因币计价:交易池在一个设定窗口内 的平均价格。要推动 TWAP,你必须在整个窗口里把价格拉离市场,这要花真金白银,还给了其他所有人 时间跟你反向交易。
“我们用 TWAP”是一个决定,不是一组参数。在迷因币上,预言机是最有可能出问题的那一个点, 所以定义它的每一个数字都该写在这里。
| 分级 | TWAP 窗口 | 最少观测基数 | 理由 |
|---|---|---|---|
| T1 | 待定 | 待定 | 池子最深,操纵最贵,所以窗口最短,价格也最新。 |
| T2 | 待定 | 待定 | 折中。 |
| T3 | 待定 | 待定 | 池子最浅,推动最便宜,所以窗口最长:攻击者必须在整个窗口里把价格拉离市场。 |
基数 指交易池存储了多少条历史观测。存得太少的交易池, 没法提供我们需要的那么长的窗口,这时预言机读取会直接 revert,而不是悄悄返回一个更短的窗口。 基数在上架时检查,每次分级变动时重新检查;如果不够,协议会自己把它扩大并支付 gas,一次, 在上架时完成。
从累加器读出的 TWAP 不会在通常意义上变陈旧,但它可以建立在一堆很老的观测之上, 那是同一个问题换了顶帽子。一个几个小时都没人交易的交易池,会自信地报出一个已经不存在的 价格的平均值。
读到陈旧价格时,按以下顺序:
一次跳动幅度超过合理市场波动的读数,在被证明不是之前,一律当作攻击处理。
在一次真实的 30% 崩盘中把清算暂停一个窗口,意味着账本要在任何人能动手之前,先吃下 一个窗口的额外跌幅。这是实打实的代价,也是不被一个从来就不真实的价格抽干所要付的价钱。 偏离边界定在现在这个位置,是因为在迷因币上,第二种失败比第一种更有可能发生。
主池在上架时指定,是该账本唯一的价格来源。迷因币的流动性会迁移:一个新池子在另一个 AMM 上 开出来,旧的那个被抽干,账本就只能拿一个什么都不剩的池子来给抵押品计价。这套流程是故意做得慢的, 因为快速换池是一个披着好心外衣的攻击面。
清算人按 TWAP 扣押迷因币,然后必须把它卖掉。如果交易池在这两个时刻之间被清空,差额由清算人 承担,不是账本。协议从不承诺任何退出价格。
| 不使用 | 为什么不用 |
|---|---|
| 最后一笔成交 | 在迷因币上推动它很便宜。一笔交易就能决定借款额度。 |
| Chainlink 或 Chronicle 的喂价源 | 没有哪个专业喂价源会去覆盖一个两周大的迷因币,以后也不会有。这个取舍让整个协议得以存在,同时也是它最大的弱点。Aave 正是因为这个理由拒绝把 DEX TWAP 当作主要价格来源;而我们在给 Aave 根本不会上架的资产计价。 |
| 多个交易池的中位数 | 考虑过。它在迷因币上行不通,因为第二和第三个池子通常太浅,没法拿来取中位数,而中位数里的一个浅池是攻击面,不是防护。 |
| 链下价格或签名价格 | 任何我们自己无法用链上数据重建的东西,都是需要你信任我们的东西。 |
一个代币只有在每一条都成立时才会拿到账本。不是大部分成立。
上架意味着这个迷因币可以用作抵押品。它不意味着这个迷因币拿着就安全。
| 检查项 | 为什么重要 | 不通过会怎样 |
|---|---|---|
| 增发权限 | 谁拿着它,谁就能印出新的供应量,把账本里锁着的每一枚迷因币的价格砸下去。 | 不上架 |
| 冻结权限 | 被冻结的代币在清算中拿不走,所以债务永远收不回来。 | 不上架 |
| LP 锁定 | 没有锁定的流动性,可以在清算进行到一半时被从池子里抽走。 | 最高只到 T3,或者不上架 |
| 可升级的代币 | 如果有人能在上架之后改变代币的运作方式,我们做过的每一项检查都等于没做。 | 不上架 |
| 大户 | 一个大到能砸穿池子的钱包,决定了真正的最坏情况。 | 更低的分级,更低的上限 |
来自 Robinhood Chain、Base、BSC 和 Solana 的迷因币,都可以存在于 LOAN MEME 的宇宙里。市场只存在于我们真正部署过的链上,而这张表只列出已经上线的链。
| 链 | 已上线的市场 | 状态 |
|---|---|---|
| 暂无链 | 无 | 尚未部署任何东西 |
我们不会列出一条我们还没上线的链,我们也不隶属于任何链的运营方、交易所或券商。 一个起源于某条链的迷因币,可能最终被上架成为抵押品;那不代表跟任何人有关系。
当你的健康度跌破 1,任何人都可以替你偿还一部分债务,并拿走对应价值的迷因币,外加一笔奖励。 如果迷因币跳空下跌得太快,来不及这么做,亏损就留在那个账本里。
牵涉三方:你、清算人,以及该账本中的出借人。任何人都可以当清算人。不需要许可,没有排队。
TWAP 更新,你的迷因币值的钱变少了,或者利息把你的债务推高了。你的健康度跌到 1 以下,从那一刻起任何人都可以清算这笔贷款。
清算人用稳定币替你偿还一部分债务。这些稳定币回到账本里,归它的出借人。
作为回报,清算人拿走你的迷因币:他们偿还的价值,加上清算奖励。那些迷因币不会回到你手里。
如果你的健康度回到 1 或以上,就到此为止。如果没有,这笔贷款可以马上被再清算一次。
清算奖励固定为已偿还债务的 12%,各账本在 10% 到 15% 之间设定。那是一个数字,而它必须满足的 不是一个条件,而是两个,其中只有一个是不动的。把算术摆出来,比断言这个数字没问题要好。
用 C 表示抵押品代币数量, P 表示预言机价格, L 表示清算线, D 表示债务, R 表示单次调用中 偿还的金额,以及 b 表示清算奖励。
这就是它的全部任务。如果扣押抵押品让健康度变得 更糟,那么每一次清算都会把仓位拖得更深,机制就是在跟自己对着干。
| 清算线 | 仍然有效的最高奖励 | 固定 15% 的情况 |
|---|---|---|
| 0.38 T3 | 163.2% | 远在界内。这里不是约束条件。 |
| 0.58 T2 | 72.4% | 宽裕。 |
| 0.65 T1 | 53.8% | 宽裕。 |
| 0.80 | 25.0% | 仍然可以。 |
| 0.85 | 17.6% | 在界内,但余地不大。 |
| 0.90 | 11.1% | 适得其反。 每一次清算都把健康度推得更低。 |
各分级的清算线见 分级与等级 一页,都远低于 0.80,因此上限不太可能成为约束条件。但只要有人提议高 LTV 的分级,它立刻就变成约束条件;这也是为什么稳定币式的 0.90 清算线永远不可能配上 15% 的奖励。
清算人偿还 R,按滑点 s卖出扣押的迷因币,并支付 g 的 gas 与融资成本。低于某个奖励水平,这笔交易就会亏钱,理性的机器人不会接。
奖励定为已偿还债务的 12%,各账本可在 10% 到 15% 之间设定。这张图就是它至今仍是一个值得重新审视的参数、而不是一个已定之数的原因。
两种模式最后偿还的债务是一样的。它们的区别在于由谁决定清算的代价:参数文件,还是竞价者。
拍卖把奖励变成一个被发现的价格。它从零开始上升,直到某个竞价者开始有利可图为止,而这正是上图里的下限。从那个出清点到固定数值之间的一切,都是固定模式按其构造白白送出去的价值。
拍卖的代价是延迟。爬坡进行的时候仓位还在水下,而对一个一分钟内能跳空 40% 的迷因币来说,这是实实在在的风险:87 秒的价格发现,可能就是抵押品彻底覆盖不住债务的 87 秒。 价格发现与平仓速度之间的取舍就是这里的权衡,而这个决定本协议还没有做出。
无论哪一种,当 没有任何 奖励能够出清时会发生什么,都会被写清楚,而不是留在脚注里。那条路的终点是坏账,它有自己的一页: 坏账.
这是真正让出借人亏钱的失效模式,而且它不是假设。一个刚跌了 70% 的迷因币,点差最宽、深度最薄的时刻,恰恰就是协议需要有人吃下一笔大额抛售的时刻。
没人能被迫接下一笔亏钱的交易,而协议自己也没有资本去接。如果一个账本走到这一步,里面的出借人等的是市场,不是我们。
写给跑机器人的人。怎么找到可清算的仓位、调用什么、拿到多少报酬,以及从哪一点开始它不再值得做。
这一页上的接口是预期的形态,不是已部署的 ABI。在任何账本开放之前,它们会对照审计过的合约重新发布并冻结。你可以按自己的节奏照着开发;不要假设选择器是最终的。
清算人不是可有可无的。一个账本能保持偿付能力,只是因为有人在盯着它,并在健康度跌破 1 之后的几分钟内动手。如果没人觉得这么做有利可图,仓位就会一直在水下放着,缺口扩大,损失落到出借人头上。这一页上的一切,都是为了把这份工作写得足够容易,好让它真的有人做。
三种办法,大致按速度排序。
单次调用最便宜,也是唯一不会过期的来源。
// Health factor, 1e18 = exactly 1.0
function healthFactor(address borrower) external view returns (uint256);
// True when healthFactor < 1e18
function isLiquidatable(address borrower) external view returns (bool);
// The most you may repay on this position right now, in loan-asset base units.
// Already has the close factor applied.
function maxRepay(address borrower) external view returns (uint256);
// What you would get for a given repay, before your own swap costs
function previewLiquidate(address borrower, uint256 repayAmount)
external view returns (
uint256 collateralOut, // meme base units you receive
uint256 bonusValue, // the bonus portion, in loan-asset units
uint256 protocolCut // the slice routed to the book reserve
);
对一个账本的借款人集合做一次 multicall,只需要一次 RPC 往返。借款人集合来自 Borrow 事件,或者来自下面的子图。
每一个可能改变健康度的状态变更都会发出事件。监听这些事件就足以维护一个本地索引,不用反复重读整个账本。
event Borrow (address indexed book, address indexed borrower, uint256 assets, uint256 shares);
event Repay (address indexed book, address indexed borrower, uint256 assets, uint256 shares);
event Deposit (address indexed book, address indexed borrower, uint256 collateral);
event Withdraw (address indexed book, address indexed borrower, uint256 collateral);
event PriceUpdate (address indexed book, uint256 twap, uint256 observedAt);
event Liquidate(address indexed book, address indexed borrower, address indexed liquidator,
uint256 repaid, uint256 seized, uint256 bonusValue);
event BadDebt (address indexed book, address indexed borrower, uint256 amount);
event BorrowsPaused (address indexed book, uint8 reason);
PriceUpdate 是关键的那一个。在两次价格更新之间,该账本里没有任何仓位会因为价格而变得可清算,只可能因为利息,而利息是可预测的。在每次
PriceUpdate 时重算整个账本,就是简单而正确的策略。
上手最容易,但最好情况下也落后一个区块。端点 待定.
{
positions(
first: 100
orderBy: healthFactor
orderDirection: asc
where: { healthFactor_lt: "1000000000000000000", debtShares_gt: "0" }
) {
borrower
book { id ticker league liquidationThreshold liquidationBonus }
collateral
debt
healthFactor
}
}
function liquidate(
address borrower,
uint256 repayAmount, // or type(uint256).max for the full close factor
address collateralTo, // where the seized meme is sent
bytes calldata data // empty: you pay up front. non-empty: callback, see below.
) external returns (uint256 repaid, uint256 seized);
当 data为空时,账本会先从你这里拉走 repayAmount 数量的借出资产,再把迷因币发给你,所以你需要手上有稳定币并设好授权额度。
传入非空的 data ,顺序就反过来:账本先把扣押的迷因币发给你,回调你,只有在你返回时才检查它是否已经拿到偿还。在回调里卖出,用卖得的钱偿还。
interface ILoanMemeLiquidateCallback {
function onLoanMemeLiquidate(
uint256 repaid, // what you must have transferred back by the time you return
uint256 seized, // meme base units already sitting in your contract
bytes calldata data
) external;
}
这把闪电贷费用从你的成本模型里彻底去掉了。如果你更喜欢闪电贷,从任何地方借都行;协议不提供闪电贷,也不为此收费。见 费用.
平仓比例限制单次调用的上限。它不是一个固定的比例:只是轻微处在水下的仓位会被部分清算,而严重水下的仓位可以被全额平掉,因为留下一个灰尘级的仓位对谁都没好处。
| 仓位 | 平仓比例 | 原因 |
|---|---|---|
| 轻微水下 | 待定,部分平仓 | 在上限之内的任何奖励下,一次部分偿还都足以把健康度推回 1 以上。拿得比这更多,就是从借款人手里拿走价值,而账本一无所得。 |
| 严重水下 | 待定,预计为全额平仓 | 这里的部分清算往往让仓位仍然停在 1 以下,结果只是付两次 gas。直接平掉。 |
| 债务低于灰尘下限 | 待定,全额平仓 | 小到不值得再发一笔交易的仓位,一次平掉。下限 待定. |
| 抵押品价值低于债务 | 受抵押品限制 | 被扣押的迷因币不可能多于实际存在的数量。上限是 collateralValue / (1 + bonus),剩下的部分就成为 坏账. |
这些比例,以及它们切换时对应的健康度,都是
待定。已经定下来的是形状:接近 1 时部分平仓,远低于 1 时全额平仓,抵押品用尽后有一个硬上限。 maxRepay() 永远返回实时的答案,所以去读它,不要重新实现这张表。
你偿还 R,按 TWAP 收到价值 R(1 + b) 的抵押品,以滑点 s卖出,并支付 g 的 gas 和任何借入成本。
| 奖励 | 盈亏平衡的退出滑点 | 在 5% 滑点下偿还 $25,000 的利润 |
|---|---|---|
| 10% | 8.64% | $1,000 |
| 12% | 10.27% | $1,475 |
| 15% | 12.61% | $2,187.50 |
假设 g 为偿还额的 0.5%。超过盈亏平衡那一列,这笔交易就亏钱,理性的机器人不会接,而那恰恰是账本最需要有人接的时候。
| 路径 | Gas | 说明 |
|---|---|---|
| liquidate,手上有稳定币 | 待定 | 无回调,无兑换 |
| liquidate 带回调,一次 AMM 跳转 | 待定 | 通常的路径 |
| liquidate 带回调,路由兑换 | 待定 | 经聚合器多跳 |
| healthFactor,按借款人 | view | 链下免费,批量调用 |
目前没有任何部署,所以什么都没测过。一旦有测试网可以在上面测,这些数字就会公布。
固定奖励让清算变成一场交易排序的竞赛,而不是价格上的较量,所以在竞争激烈的账本上,大部分奖励最后落到区块构建者手里,而不是你手里。我们不打算假装不是这样。
一个最小可用的机器人,MIT 许可:事件监听器、仓位索引、盈利过滤、回调合约和一套模拟测试。它是一个起点,不是竞争优势,而且刻意没有做优化。
账本会被关闭。这一页讲的是什么会导致关闭、关闭过程中你未结清的贷款或你存入的资金会怎么样,以及你有多长时间。
这里面有两条是自动的,其余都是决定。所有这些在任何东西改变之前都会先公告。
| 触发条件 | 是否自动 | 含义 |
|---|---|---|
| 主池没了 | 检测是自动的 | 流动性已经离开,而且没有回来,也不存在可接受的替代交易池。账本无法再被定价,因此也无法运行。见 预言机规范. |
| 某项上架条件被打破 | 部分自动 | 增发或冻结权限重新出现、LP 锁失效、代币合约行为改变。其中任何一条都意味着账本在那一刻之后就不该继续开着。 |
| 次级被清零且没有补足 | 暂停是自动的 | 首损层没了,也没人接上。见 优先级与次级. |
| 持续的坏账 | 否 | 账本已实现的坏账没有赚回来,而且在任何说得过去的利用率下都达不到储备金目标。 |
| 没人在用 | 否 | 长期借款接近于零。没人用的账本只是维护负担和攻击面,没有任何好处。 |
| 法律或制裁 | 否 | 该代币或其发行方受到某种限制,使得在我们运营所在的司法辖区运行这个账本是违法的。 |
账本从来不是被关掉的。它先被弃用,然后慢慢排空。这个顺序是固定的,而且在其中任何一个环节,都不会阻止你偿还并取回你的迷因币。
账本在界面上和链上被标记为弃用。原因同时公布,不会拖到之后。
新增借款和新增抵押品存入停止。出借人存入停止。所有让账本缩小的操作都保持开放。
账本的利率曲线被切换成坡度陡得多的清退曲线,让继续挂着一笔未结清的贷款变贵,这是故意的。这是唯一的推力:没有任何东西会强制平掉一个健康的仓位。
随着借款人偿还,稳定币释放出来,出借人提取。利用率仍然限制提取:一个还有贷款未结清的弃用账本,不是你能立刻退出的账本。
一旦债务归零、出借人也都提取完毕,这个账本就结束了。如果贷款无限期地不结清,账本就一直停在这个状态:它会永远继续接受偿还和清算,因为一个不再接受偿还的合约会把抵押品困住。任何东西都不会被自毁,储备金会一直留在账本里,直到最后一笔贷款结清。
清退期间清算线不变,清算也照常进行。如果账本在排空的时候迷因币下跌,你会像平常一样被清算。上升的利率让这件事更可能发生,而不是更不可能,这就是为什么通知期排在最前面。
降级把一个账本降到更低的分级并收紧它的条款。账本仍然开放。它比退市常见得多,也是最可能影响到一个未结清仓位的事件。
| 降级 | 退市 | |
|---|---|---|
| 账本保持开放 | 是 | 否 |
| 最高 LTV | 降到新分级的水平 | 无关紧要,借款已经关闭 |
| 清算线 | 对每一笔未结清的贷款收紧 | 不变 |
| 可能当场把你清算 | 是 | 否,本身不会 |
| 通知 | 通知期加上慢速类的时间锁,两者均为 待定 | 待定 |
| 可逆 | 是,账本可以再次升级 | 否 |
降级的机制,包括为什么没有既往不咎,写在 治理与参数.
谁能改什么、要花多久,以及在这期间你能做什么。这里没有 DAO,我们也不打算假装有一个。
没有任何参数是靠人手、靠脚本、或者靠谁在控制台里敲一个值来生效的。一项变更要么被提出、排进时间锁、由经过审计的合约执行,要么就不会发生。这一页上的任何内容都不是靠政策或我们自己的克制来保证的:它由代码保证,而这些代码会在任何账本开放之前通过外部审计。在那次审计做完之前,没有任何东西被部署,也没有任何东西可改。
不是代币投票,不是委员会,也不是基金会。持有 $LOAN 不会让你对这一页上的任何参数有发言权。把这一点直说,比一个没人看的治理论坛有用,而且这意味着,挡在一个参数和你的仓位之间的只有时间锁。
规则很简单:一项变更越可能伤到持有未结清仓位的人,它就越慢。任何可能让一笔已有贷款变得可清算的变更,都落在最慢的那一类。类别已经定了;挂在上面的延迟还没有。
| 类别 | 参数 | 时间锁 | 谁可以提案 |
|---|---|---|---|
| 慢速 | 清算线、最高 LTV、分级归属、预言机来源与 TWAP 窗口、清算奖励、平仓比例、次级对优先级的比例上限 | 待定,最长的延迟 | 所有者多签 |
| 标准 | 利率曲线、储备金比例、协议在奖励中的分成、存入费、提取费、开仓费与偿还费、次级冷却期 | 待定,比慢速类短 | 所有者多签 |
| 快速,仅限安全 | 下调借款上限、暂停新增借款、把一个账本加入退市队列 | 无 | 所有者多签或守护者 |
| 永不 | 任何转移用户资金、改变已部署账本逻辑,或者把储备金花在该账本坏账以外用途的事情 | 不可能 | 没有任何角色拥有这种权力 |
快速类里的不对称是刻意的:只有当一项变更能让协议更安全、而且不会让已有仓位更糟时,它才能立刻生效。下调借款上限会挡住新的风险,对一笔未结清的贷款毫无影响。上调则要走标准延迟。
这是最可能直接影响到你的变更,因为它会收紧你已经开着的那笔贷款的清算线。它被当作慢速变更处理,并且多了一个步骤。
如果你的健康度在旧清算线下高于 1、在新清算线下低于 1,那么变更落地的那个区块你就可被清算。没有任何东西会接住你。通知期存在,是为了让你有时间偿还或补充抵押品,而这就是仅有的保护。见 健康度.
| 合约 | 是否可升级 | 由谁 |
|---|---|---|
| 账本(市场)合约 | 否 | 无人。部署后不可变。要改就意味着开一个新账本,并把旧的清退掉。 |
| 抵押品托管合约 | 否 | 无人。 |
| 预言机适配器 | 否,但可以重新指向 | 所有者多签,慢速类。适配器不能被换成逻辑不同的东西,只能指向另一个主池。 |
| 利率模型 | 可按账本更换 | 所有者多签,标准类。这个模型是一个独立的合约,更换它不能追溯改变已经累积的利息。 |
| 费用路由合约 | 是 | 所有者多签,标准级别。它只处理协议收入,从不接触出借人或借款人的本金。 |
| 界面与文档 | 是 | 团队,随时。两者都不持有资金。 |
每一次已执行的参数变更都会在这里留下一行记录:改了什么、从什么改成什么、 什么时候排队、什么时候执行,以及为什么。包括那些让协议显得难看的变更。
| 日期 | 账本 | 参数 | 从 → 到 | 原因 |
|---|---|---|---|---|
| — | — | — | — | 尚未部署,因此没有任何变更。 |
什么会让一个账本暂停,暂停期间什么仍然运转,谁能按下这个按钮, 以及他们用它做不了什么。
暂停只会停掉一个账本里的新增借款。没有别的,也绝不会波及整个协议。 以下是确切的触发条件,除最后一项外全部是自动的:没有人来决定, 也没有人能阻止它发生。
| 条件 | 触发方式 | 自动 | 解除时机 |
|---|---|---|---|
| 交易池过浅 | 主池流动性低于该账本的最低要求,并在一个窗口期内持续,而非某一瞬间 | 是 | 深度在一个完整窗口期内恢复 |
| 价格过期 | 超过以下时长没有新的观测值: staleAfter。参见 预言机规格. |
是 | 有新的观测值落地 |
| 偏离超限 | 在一个窗口期内,TWAP 的变动超过 maxDeviation 的幅度 |
是 | 一个完整窗口期确认了新价格 |
| 达到借款上限 | 未偿债务达到该账本的上限。参见 借款上限与池深度. | 是 | 债务降到上限以下,或通过时间锁上调上限 |
| 次级被清空 | 该账本的次级层归零。参见 优先级与次级. | 是 | 新的次级层获得注资,或该账本进入清退 |
| 管理员暂停 | 由人按下,因为发生了任何规则都没有预料到的情况 | 否 | 只有所有者多签能解除暂停,管理员永远不能 |
上面六种暂停中有五种是账本自己检查的条件。没有人去触发它们, 也没有人能压下它们,包括我们。它们是经过审计的合约的一部分, 而不是一句运营上的承诺。参见 治理与参数.
暂停不是冻结。在上述每一种暂停条件下,所有降低风险的操作都保持开放, 无一例外。
这三个词在别处常被混用。在这里它们的含义确切如下:
| 状态 | 停止什么 | 可逆 | 由谁 |
|---|---|---|---|
| 已暂停 | 仅新增借款 | 是,通常会自行解除 | 自动,或管理员 |
| 已冻结 | 新增借款和新增抵押品存入。账本只接受还款、提款和清算。 | 是,由所有者多签解除 | 所有者多签,快速级别 |
| 已弃用 | 该账本正在清退,不会重新开放。借款上限归零,退市清退流程启动。 | 否 | 所有者多签,慢速级别。参见 退市与清退. |
有一个地址可以不经时间锁直接行动,因为有些故障发生得比时间锁更快。 它被刻意设计成仍然值得保留的、最弱的应急权力,而且它的边界由合约强制执行, 而不是靠制度约束。
管理员地址: 待定,会在任何账本开放之前公布。
迷因是文化。协议是引擎。协议收入回购迷因币。你不需要持有它也能出借或借款。
它会
承载品牌。 它是人们持有和发帖谈论的东西,雪怪是它的面孔。
用协议手续费在公开市场上被买入。
远离借贷账本。 它不是抵押品,所以任何账本都无法清算它。
满足与每一个已上线迷因币相同的标准: 增发与冻结权限已放弃, 合约已验证, 钱包已公布.
手续费以稳定币形式在每个账本内积累:存款、提款、借款和还款上 2.5% 的手续费,借款利息中 20% 的部分,以及清算奖励的 10%。没有上架费,将来也不会有。每一笔手续费都收在 手续费.
账本的储备金先于其他一切得到补足。有坏账的账本不会向回购输送任何资金。
剩下的部分按既定节奏转入回购合约。
回购合约在公开市场上买入该代币。没有私下交易。
上述每一步都会附带交易哈希发布,任何人都可以在链上核对。
绝不动用国库抛售,绝不动用借来的钱,绝不把新增发的代币当成收入。手续费少就意味着回购小,我们会把那个小数字公布出来,而不是粉饰它。
代币买入之后如何处理,是销毁还是持有,目前 待定,会在路由上线之前确定。
它可以归零。回购是一种机制,不是价格底线,也不是回报的承诺。 该代币不在任何借贷账本中,但如果协议遇上糟糕的一天,代币的价格照样会有反应。
所有可能让你在这里亏钱的事情,集中在一处,包括我们无能为力的那些, 以及该怪我们的那些。
借款人可能永久失去抵押的迷因币。出借人可能损失部分或全部存款。 这里没有任何保险,没有任何保证,也不存在总能兜底的后盾。 如果这一页上有任何一条是你无法接受的,那就是不使用本协议的充分理由。
| 风险 | 影响谁 | 我们为此做了什么 | 剩下的部分 |
|---|---|---|---|
| 智能合约漏洞 | 所有人,双方都是 | 任何账本开放之前进行外部审计,账本合约不可升级,上线时采用低上限。 | 一个漏洞可以拿走一个账本里的全部资产,或者所有账本里的全部资产。经过审计的协议被攻破是常事。这是本页上最大的单一风险。 |
| 全新的分层逻辑 | 出借人,次级先受损 | 瀑布结构有单独的审计范围,如果无法安全实现就不会上线。参见 优先级与次级. | DeFi 中先例很少,意味着已知的攻击方式很少,而这和没有攻击方式不是一回事。 |
| 管理密钥与治理 | 所有人 | 按参数级别设置时间锁,一个只能暂停的管理员,以及没有任何角色能转移资金。参见 治理. | 多签是一个受信任方。时间锁限制的是它伤害你的速度,而不是它能否伤害你。一个被攻陷的多签加上一项慢速级别的变更,给你的就只有时间锁那么长的预警,再没有别的。 |
| 依赖组件升级 | 该账本中的所有人 | 利率模型和手续费路由器是仅有的两个可替换部件,而且两者都不持有本金。 | 一个恶意的利率模型可以让借款贵到离谱。但它无法扣押任何东西。 |
| 风险 | 影响谁 | 我们为此做了什么 | 剩下的部分 |
|---|---|---|---|
| TWAP 被操纵 | 主要是出借人 | 按分级设定的长窗口期、最低基数要求、偏离熔断,以及与池深度挂钩的借款上限。参见 预言机规格. | 一个愿意在整个窗口期内把价格按在偏离市场位置的攻击者,仍然可以推动它。在一个很浅的 T3 交易池上,这比听起来要便宜,而此时的防线是借款上限,不是预言机。 |
| 崩盘中的 TWAP 滞后 | 出借人 | 没有办法。这是固有的。 | 在快速砸盘中,TWAP 读数高于真实价格,清算触发得太晚,中间的缺口变成坏账。这是价格难以被操纵所付出的直接代价。 |
| 主池消失或迁移 | 该账本中的所有人 | 基于深度的自动暂停,一套慢速级别的重新指向流程,以及在不存在可接受交易池时的清退。 | 一个账本可能被卡住:无法定价、无法清算,而贷款还开着。 |
| 价格过期 | 双方 | 自动暂停借款和清算。 | 在价格过期时暂停清算,意味着一个确实已经资不抵债的仓位会继续开着。比起按一个我们不信任的价格去扣押资产,我们选择了前者。 |
| 风险 | 影响谁 | 我们为此做了什么 | 剩下的部分 |
|---|---|---|---|
| 在糟糕的时刻被清算 | 借款人 | 最高 LTV 与清算线之间的那段距离,再没有别的。 | 没有警告,没有宽限期,没有申诉,也没有部分保护。一根足以推动 TWAP 的插针就够了。即使价格一小时后回来,迷因币也回不来了。 |
| MEV 与优先权拍卖 | 借款人,间接受影响 | 今天什么都没做。关于反向拍卖的理由——它会把竞争从排序转到价格上——写在 清算. | 固定奖励让清算变成一场排序上的赛跑,所以大部分奖励漏给了区块构建者。无论如何,借款人付的都是全额奖励。 |
| 围绕清算的三明治攻击 | 借款人和出借人 | 协议层面什么都没做。扣押按 TWAP 定价,所以三明治攻击改变不了账本记录的内容。 | 搜索者可以在清算前后推动交易池,让被扣押的迷因币实际卖出的价格更差,这抬高了实际滑点,也让下一次清算更难完成。 |
| 没有人来清算 | 出借人 | 公布盈利模型,让机器人可以被开发出来。参见 清算人指南. | 没有人能被迫接下一笔亏钱的交易,而协议也没有资本自己去接。这才是坏账实际发生的主要方式。 |
| 连环清算 | 该账本中的所有人 | 借款上限按池深度设定,因此账本的全部清算量应当是可被承接的。 | 上限是按某个时点的深度设定的。深度撤离的速度比上限能被下调的速度更快。 |
| 风险 | 影响谁 | 剩下的部分 |
|---|---|---|
| 迷因币归零 | 先是借款人,然后是出借人 | 迷因币归零是家常便饭。这就是这类资产。隔离意味着损失只由那个账本的出借人承担,不意味着没有人承担。 |
| 坏账 | 该账本的出借人,次级先受损 | 先由储备金吸收,然后是次级,再然后是优先级,没有第四层。参见 坏账. |
| 稳定币脱锚 | 每一个出借人,每一个账本 | 你持有的是借出资产。如果它不再值一美元,那就是你的损失,这里没有任何东西能弥补。账本依然是平的,只是计价的代币不值钱了。 |
| 稳定币冻结或黑名单 | 该账本中的所有人 | 中心化发行的稳定币可以冻结一个地址。如果某个账本的地址被冻结,里面的稳定币就动不了:出借人无法提款,借款人无法还款,清算人也无法还款。本协议中没有任何东西能解除冻结,我们能做的任何设计选择都无法消除这一点。 |
| 利率塌陷 | 出借人 | 借款需求枯竭,利用率下降,闲置的稳定币几乎赚不到东西。没有什么出了问题;这个账本只是没人用。 |
| 无法提款 | 出借人 | 在 100% 利用率下,没有空闲资金可供提取,直到有借款人还款或有新的存款进来。次级还额外受次级占比上限和冷却期的限制。 |
| 风险 | 影响谁 | 剩下的部分 |
|---|---|---|
| 链停机 | 该链上的所有人 | 什么都无法结算。停机期间你无法还款、提款或清算,停机时健康的仓位在恢复时可能已经不健康了。然后清算会一次性全部触发,砸进当时仅有的深度里。 |
| 重组 | 任何在链头附近操作的人 | 一笔清算、还款或提款可能被一次深度重组回滚。在具有概率性最终性的链上,依据一个只有一个区块新的健康度去行动,是你自己承担的风险。 |
| 排序器停机 | L2 账本上的所有人 | 与停机情形相同,只是多了一种情况:价格恢复时的水平与停下时相差很远。 |
| 跨链桥故障 | 任何抵押品或稳定币跨过桥的人 | 如果一个账本的迷因币或借出资产是跨链映射的形式,那么这座桥就是协议无法审计也无法控制的依赖。一次跨链桥攻击可以让一个账本持有毫无支撑的代币,而针对它的债务依然是真实的。多链账本继承路径上的每一座桥。 |
| 前端不可用 | 所有人 | 界面不是协议。每一个操作都可以直接对合约发起。失去网站,绝不应该意味着失去对仓位的访问。 |
| RPC 或子图故障 | 清算人受影响最大 | 读取过期索引的机器人会错过清算。直接读取账本,而不要相信托管的基础设施。 |
列在这里,是因为知道什么 不是 风险,也是理解这件事形状的一部分。
简单说一下我们与 Aave、Morpho、Euler 和 Silo 的对比。包括它们更好的地方。
| LOAN MEME | Aave | Morpho / Euler / Silo | |
|---|---|---|---|
| 抵押品 | 只有迷因币 | ETH 和其他主流币 | 策展人列出的任何资产 |
| 市场 | 每个迷因币一个独立账本 | 一个共享池 | 独立的市场 |
| 价格 | 该迷因币主要链上交易池中的平均价格(TWAP) | 专业喂价源 | 由策展人选择 |
| 出借人损失 | 次级承担首损,优先级在其之后才受损 | 所有人共同承担,另有质押后盾 | 该市场中的所有人共同承担 |
| 清算 | 固定 12% 奖励,按账本在 10 到 15% 之间 | 每种资产固定奖励 | Euler:从 0% 起步的拍卖 |
| 谁来定规则 | 团队,在时间锁之后。代币不参与任何投票。 | 一个 DAO 和风险机构 | 策展人,在时间锁之后 |
三样。其余的都是别的协议先做出来的东西的变体。
最后更新:2026 年 9 月 18 日