1. 代币流动池:,代币流动池简单来讲,就是锁定在智能合约中所有的代币以及资金的总称,流动是资金转为代币,或代币转为资金的意思。,Konomi 的代币流动池将分为两个部分,分别表示不同的代币。在Konomi Swap V1 版本中预计将会仅支持 DOT 与ERC20 代币的交换,在V2 版本中我们预计将加入 ERC20 与ERC20 之间的兑换,下面我们以 DOT – ERC20 交易举例。,如下图,Konomi 将会把所有做市商的 DOT 放在流动池左边,将ERC20 集合放在流动池右边。如果用户希望购买 ERC20 代币,Konomi 将会把右边的 ERC20 代币转给用户,同时将用户支付的 DOT 添加在流动池左边,然后重新计算流动池中价格。,
,2. 流动性提供者,Konomi 代币流动池需要依赖外部资金向合约中提供流动性,向Konomi 流动池中提供流动性的用户被称为流动性伙伴,当流动性伙伴向 Konomi 中注入流动性的时候,Konomi 会铸造出一个流动性代币(LP),铸出 LP 代币数量是与用户注入的资金所占流动池中的资金比例相关。为了鼓励用于向 Konomi 的流动池中提供更多的流动性,Konomi 会从每笔交易总额中抽取交易手续费,并将手续费全额交给那些将注资金到 Konomi 资金池提供流动性的流动性伙伴。,3. Swap 模型简介,3.1 基本公式,假设目前在 Konomi 中存在一个 DOT – BNB 交易流动池,用户在使用 DOT 兑换 BNB 时需要一个方法来确定交易价格。,
,假设乘积 k 是一个固定不变的量,当用户使用 x 资产从流动池中兑换 y 资产时,流动池中 x 资产的数量会增加,y 资产的数量会减少。由于 k 是恒定的,所以当 x 增长 ∆ 时,需要将 y 减少 ∆ 才能保持等式的恒定。,在不考虑手续费的情况下,则满足:,
,在考虑手续费的情况下,则满足:,
,其中 γ 为手续费,3.2 交易价格计算,不含手续费情况:,
,由上述 3.1 公式可知:,
,下面函数图像刻画了向流动放入 ΔX 兑换出 ΔY 的情形:,
,从上图可以看出向流动池中注入的 ΔX 越多,可以从流动池中取出的 ΔY 也会越多,但是 ΔY 只会不断地逼近流动池中现有的代币数量,并不会超过,也就是说你永远无法一次性买断流动池中所有的,可以看出,恒等乘积公式可以提供无限的流动性。,3.3 交易滑点,交易滑点指的是在买卖货币时,实际支付价格与期望交易价格的差。,
,
,3.4 流动池币价,当从流动池中购买 Δy 代币后一定会引起当前流动池中的价格波动:,
,根据以上公式,可以看出币价与 α 呈现出二次函数关系,Konomi 在波卡生态 oracle 不成熟之前,将依靠套利者来进行价格的平衡,举例来讲,当Konomi 中的价格高于外部市场时,套利者从外部市场低价买入,高价卖给 Konomi;当Konomi 中的价格低于外部市场时,套利者从 Konomi 低价买入,高价卖给外部市场。,3.5 流动池收益,流动池的收益主要来源于交易手续费,Konomi 将会针对每一笔交易收取手续费(手续费的多少取决于当前社区参与热度),同时将手续费的收益全额返回给流动性提供者,流动性提供者可以凭借自己手中的 LP 代币向 Konomi 要求支付收益。