Lista Docs
中文
中文
  • 引言
    • 概览
    • 抵押债务头寸 - lisUSD
      • 抵押
        • 经典抵押选项
        • Lista 创新区
        • 贷款清算
      • lisUSD
        • 稳定池 - 价格稳定模块 (PSM)
        • lisUSD 储蓄率 (LSR)
        • D3M - 直接存款模块
        • 算法市场操作 (AMO)
          • 当前与预期借款利率
        • lisUSD 的流动性
      • 技术指南
    • 流动性质押 - slisBNB
      • 关于 slisBNB
      • 奖励和费用
      • 技术指南
    • Lista 借贷
      • 金库
        • 如何创建金库
      • 市场
      • 借款人与供应商
      • 利率模型 (IRM)
      • 费用
      • 清算
      • 预言机
      • 闪电贷
      • 用户流程
    • Binance Launchpool: clisBNB
      • 用 slisBNB 铸造 clisBNB
    • BNB 验证器: Lista DAO
    • 路线图
    • 常见问题解答
  • 治理
    • LISTA
      • LISTA 分配
    • veLISTA
      • veLISTA 概述
      • Lista DAO: 解锁 veLISTA 功能
      • veLISTA 锁定机制
      • 治理
        • 治理提案模板
      • 协议费用
      • veLISTA 发行
        • LP 池
      • veLISTA 投票
      • veLISTA 贿赂市场
      • 自动复利
      • 永久锁定 LISTA (LIP-016)
      • 收入 / 成本
      • 分析
  • 用户指南
    • 抵押债务头寸
      • 提供抵押
      • 借用 lisUSD
      • 偿还 lisUSD
      • 提取抵押
      • 将 clisBNB 委托给您的 Binance web3 MPC 钱包
    • 流动性质押 - slisBNB
      • 如何兑换 slisBNB
      • 铸造 slisBNB
      • 从 slisBNB 兑换 BNB
      • 将 slisBNB 桥接到以太坊
    • 使用 Binance 钱包
      • 将 BNB 流动性质押为 slisBNB
      • 获取 lisUSD
      • 在 APX Finance 上交易
    • LISTA / veLISTA
      • 锁定 LISTA
      • 延长 LISTA 锁定
      • 自动锁定
      • 解锁 LISTA
      • 领取奖励
      • 在 Lista DAO 上质押外部 LP 代币
      • Gauge 投票
  • 安全
    • 审计报告
    • 漏洞赏金 (Immunefi)
  • 开发者专区
    • 概览
    • LISTA 治理
      • 智能合约
    • 抵押债务头寸
      • 机制
      • 闪电贷
      • 多预言机
      • 智能合约
    • 流动性质押(slisBNB)
      • 机制
      • 跨链桥
      • 智能合约
    • clisBNB
      • 智能合约
  • Lista 借贷
    • 智能合约
  • 合作伙伴关系
    • 品牌套件
    • 我们的频道
  • 法律免责声明
    • 法律免责声明
Powered by GitBook
On this page
  • 创建金库 - 指南
  • 步骤 1:定义金库参数
  • 步骤 2:部署金库
  • 步骤 3:配置金库
  • 步骤 4:部署定时锁
  • 步骤 5:验证和激活
  1. 引言
  2. Lista 借贷
  3. 金库

如何创建金库

Lista Lending 允许在 BNB Chain 上无需许可地创建借贷金库,使策展人能够部署自定义流动性池以优化收益并管理风险。Lista 金库接受单一贷款资产(例如 lisUSD)并将存款分配到多个 Lista 市场。本指南将指导您完成部署和配置金库的过程,使您能够在 Lista DAO 的生态系统中策划借贷机会。

金库是可升级的智能合约,提供灵活性以适应市场需求,同时保持非托管安全性。策展人可以设置分配策略、费用和风险参数,使 Lista Lending 成为量身定制的 DeFi 解决方案的强大工具。

先决条件

在创建 Lista 金库之前,请确保您具备以下条件:

  • BNB Chain 钱包:配置了 BNB Chain 的钱包(例如 MetaMask),并有足够的 BNB 以支付燃气费。

  • 开发环境:安装了 Node.js 的 Solidity 开发环境(例如 Hardhat, Foundry)。

  • 贷款资产:将用作金库贷款资产的 ERC-20 代币(例如 lisUSD, BNB)。

  • 市场知识:熟悉 Lista Lending 市场(贷款/抵押品对)以有效分配流动性。

  • 选择 Oracle:Chainlink(主要)、Binance Oracle(比较)、Redstone(备份)用于价格提要。

创建金库 - 指南

步骤 1:定义金库参数

要部署金库,请指定以下参数:

  1. 贷款资产:用户将存入和借出的单一资产(例如 lisUSD)。

  2. 初始市场:最初分配流动性的 Lista 市场列表(例如 pt-clisBNB/lisUSD)。

  3. LLTV 选项:固定清算贷款价值比率为 80%

  4. Oracle:Chainlink(主要)、Binance Oracle(比较)、Redstone(备份)用于市场的价格数据。

  5. 费用结构:

    • 协议费用:由 Lista DAO 设置(借款利息的 0-25%)。

    • 金库费用:可选的策展人费用,最高可达金库利润的 50%。

  6. 定时锁:可选的参数更改延迟(例如 24 小时)。

  7. 角色:

    • 所有者:您,部署者,监督金库策略。

    • 策展人:可选角色,用于设置上限和其他重要参数(最初可以是所有者)。

    • 守护者:可选角色,用于风险监督(例如暂停操作)。

    • 分配器:分配金库市场的角色


步骤 2:部署金库

步骤 2.1:准备参数

部署前,您需要准备以下参数:

  • manager:管理者地址(必须是定时锁合约),这将与所有者角色相同

  • asset:资产地址

  • name:金库的名称,主要用于显示和识别目的

  • symbol:金库的缩写或股票代码。

  • 这个符号是表示金库的简短方式,通常用于界面和列表中。

  • curator:策展人地址(必须是定时锁合约)

  • allocator:分配器地址(不需要是定时锁合约)

所有这些参数需要值(在您的参考图像中标记为“TODO”)。

步骤 2.2:克隆存储库

导航到 Moolah 存储库的特定分支:

git clone https://github.com/lista-dao/moolah.git

cd moolah

git checkout feature/deployScripts

步骤 2.3 填写参数

步骤 2.4:执行部署脚本

运行以下命令将金库合约部署到 BSC 网络:

forge script script/deploy_moolahVault.sol --rpc-url bsc --broadcast --verify -vvv

此命令将:

  • 执行部署脚本

  • 连接到 BSC 网络

  • 广播部署合约的交易

  • 在区块链浏览器上验证合约

  • 提供详细日志的详细输出(-vvv)

确保您的钱包中有足够的资金来支付燃气费,并且您的环境已正确配置为 Foundry。


步骤 3:配置金库

以下是您可以用来配置金库的方法。

3.1 设置费用

角色:MANAGER 方法:setFee 参数:

  • newFee (uint256): 新的费用值,精度为 1e18。

3.2 设置费用接收者

角色:MANAGER 方法:setFeeRecipient 参数:

  • newFeeRecipient (address): 将接收收取费用的地址。

3.3 设置 Skim 接收者

角色:MANAGER 方法:setSkimRecipient 参数:

  • newSkimRecipient (address): 将接收错误转移代币的地址。

3.4 设置市场供应上限

角色:CURATOR 方法:setCap 参数:

  • loanToken (address): 市场的贷款代币。

  • collateralToken (address): 市场的抵押代币。

  • oracle (address): 市场的价格预言机。

  • irm (address): 利率模型。

  • lltv (uint256): 贷款价值比阈值。

  • newSupplyCap (uint256): 指定市场的最大存款上限。\

注意:这些参数应与创建市场时使用的配置相匹配。

3.5 设置存款队列

角色:ALLOCATOR 方法:setSupplyQueue 参数:

  • newSupplyQueue (bytes32[]): 定义存款顺序的 marketIds 数组。存款将按指定顺序路由到市场。

3.6 更新取款队列

角色:ALLOCATOR 方法:updateWithdrawQueue 参数:

  • indexes (uint256[]): 重新排序现有取款队列的索引数组。\

注意:索引指的是当前取款队列中的位置。

3.7 设置市场移除

角色:CURATOR 方法:setMarketRemoval 参数:

  • loanToken (address)

  • collateralToken (address)

  • oracle (address)

  • irm (address)

  • lltv (uint256)

注意:这标志着市场的移除。只有在金库在其中的位置为零且调用了 updateWithdrawQueue 函数后,市场才会被移除。

3.8 角色管理

3.8.1 授予角色

角色:ADMIN 或 MANAGER 方法:grantRole 参数:

  • role (bytes32): 角色标识符。

  • account (address): 要分配角色的地址。

3.8.2 撤销角色

角色:ADMIN 或 MANAGER 方法:revokeRole 参数:

  • role (bytes32): 角色标识符。

  • account (address): 要移除角色的地址。


步骤 4:部署定时锁

4.1:准备参数

首先,您需要准备三个关键的地址参数:

  • 提议者地址:将创建交易的地址

  • 执行者地址:将执行交易的地址

  • 取消者地址:将取消交易的地址

在开始部署之前,请确保您已决定这三个地址。您应该在表格中填写您想要使用的实际地址。

4.2:部署定时锁合约

4.3:填写参数

运行以下命令部署定时锁合约:

forge script script/deploy_timeLock.sol --rpc-url bsc -vvv --broadcast --verify

此命令将:

  • 执行定时锁合约的部署脚本

  • 连接到 BSC 网络

  • 提供详细输出(-vvv)

  • 广播交易到网络

  • 在 BSC Scan 上验证合约

确保您的部署钱包中有足够的资金来支付燃气费,并且您已正确配置了环境变量以用于网络和验证服务的身份验证。

步骤 5:验证和激活

  1. 在 BscScan 上验证

    • 将您的金库合约代码提交给 BscScan 以确保透明度(使用已部署的地址)。

  2. 测试存款

    • 存入少量的贷款资产(例如 10 lisUSD)以确保金库按预期工作。

    • 通过 Lista Lending 界面检查分配和 APY。

  3. 正式上线

    • 向社区(例如 Lista DAO Discord)宣布您的金库以吸引存款人。

部署后管理

  • 监控性能:通过 Lista Lending 仪表板跟踪 APY 和市场条件。

  • 重新平衡流动性:根据需要使用分配器角色调整分配。

  • 如有必要进行升级:利用可升级设计修改参数或添加功能(需要所有者权限)。

  • 处理坏账:根据金库设置手动结算或分配未实现的坏账。

Previous金库Next市场

Last updated 27 days ago

导航到位于 的存储库并切换到 feature/deployScripts 分支。

https://github.com/lista-dao/moolah