DeFi流動性挖礦系統開發(原理詳解)| DeFi流動性挖礦系統開發原始碼示例

v_ch3nguang發表於2023-04-06

DeFi Decentralized Finance 去中心化金融的簡稱,也叫開放式金融,指的是搭建在公有鏈上的應用。 DeFi 的目的是創造一個沒有中心化機構的金融服務,讓世界上任何一個人都可以隨時隨地進行金融活動。

 

DeFi 流動性 挖礦 主要發生在以太坊區塊鏈上的產品中,它透過為以太坊上的 DeFi 產品提供流動性來賺取利潤。可以簡單地理解為使用者透過存款代幣獲得被動回報,但如果他們想獲得更高的回報,就需要對其進行管理。不同協議之間的回報 有差異 即便是同一協議不同貨幣市場或代幣池之間的收益也存在很大的差異。

 

流動性挖礦可以獲得什麼收益?

 

流動性挖礦的收益包括治理代幣、交易費等。

如今 DeFi 的大部分高收益是由股權(加密資產)的增長所驅動的。例如,當你在 Compound 上進行挖礦時,你實際上是把錢借給該協議,並獲得免費股權(免費的 COMP 代幣)。因此你可以從貸款資產中獲得基本收益(來自自然的借款需求),另外還賺到了 COMP 代幣升值的「收益」。

 

流動性挖礦的收益取決於很多因素,主要取決於獎勵代幣的價格、流動性本身的權重(影響因子決定)以及佔流動性總量的比例等。

 

舉例來說, Compound 代幣價格的不同直接影響挖礦收益率的大小;同時,隨著不同貨幣市場總存款量和總借款量的增加,挖礦收益也被越來越多的流動性所稀釋; Compound 原來將不同貨幣市場的借貸利率作為其重要的分配依據,而現在已將這一因素去除。這對貨幣市場的資產流向具有很大的引流作用。之前 BAT 的借貸利率最高,導致 Compound BAT 的流動性最高,而在改變規則之後,極大刺激了對穩定幣 DAI 的需求。

 

總的來說,流動性 挖礦系統 本質上是激勵使用者直接為平臺擴大業務量,提供超高回報作為獎勵,而這種獎勵分配過程也是新幣生成和發行的一種機制。流動性挖 礦系統 的主要好處是治理代幣和交易費用。

 

DeFi 流動性挖礦系統原始碼示例:

struct AddLiquidityParams{

  address token0;//token0 的地址

  address token1;//token1 的地址

  uint24 fee;// 交易費率

  address recipient;// 流動性的所屬人地址

  int24 tickLower;// 流動性的價格下限(以 token0 計價),這裡傳入的是 tick index

  int24 tickUpper;// 流動性的價格上線(以 token0 計價),這裡傳入的是 tick index

  uint128 amount;// 流動性 L 的值

  uint256 amount0Max;// 提供的 token0 上限數

  uint256 amount1Max;// 提供的 token1 上限數

  }

  function addLiquidity(AddLiquidityParams memory params)

  internal

  returns(

  uint256 amount0,

  uint256 amount1,

  IUniswapV3Pool pool

  )

  {
  PoolAddress.PoolKey memory poolKey=

  PoolAddress.PoolKey({token0:params.token0,token1:params.token1,fee:params.fee});

  // 這裡不需要訪問 factory 合約,可以透過 token0,token1,fee 三個引數計算出 pool 的合約地址

  pool=IUniswapV3Pool(PoolAddress.computeAddress(factory,poolKey));

  (amount0,amount1)=pool.mint(

  params.recipient,

  params.tickLower,

  params.tickUpper,

  params.amount,

  // 這裡是 pool 合約回撥所使用的引數

  abi.encode(MintCallbackData({poolKey:poolKey,payer:msg.sender}))

  );

  require(amount0<=params.amount0Max);

  require(amount1<=params.amount1Max);

  }

 

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70028290/viewspace-2944106/,如需轉載,請註明出處,否則將追究法律責任。

相關文章