月亮链 月亮链
Ctrl+D收藏月亮链

BSP:如何使用Aave进行闪电贷_ASH

作者:

时间:1900/1/1 0:00:00

Aave,以前称为 ETHLender,现在是 DeFi 领域的前沿应用。Aave 是该领域中第一个提出闪电贷概念的人。在闪电贷之前,你必须用一个超额抵押的资产来借贷另一个资产。例如,如果我想借一个[DAI](https://en

    /**  This function is called after your contract has received the flash loaned amount     */    function executeOperation(        address _reserve,        uint256 _amount,        uint256 _fee,        bytes calldata _params    )        external        override    {        require(_amount <= getBalanceInternal(address(this), _reserve), "Invalid balance, was the flashLoan successful?");       //        // Your logic goes here.        // !! Ensure that *this contract* has enough of `_reserve` funds to payback the `_fee` !!        //        uint totalDebt = _amount

}总而言之,我们首先要导入执行闪电贷所需的依赖。其中一些依赖关系被称为抽象合约)。一个抽象合约至少有个函数没有实现。你可以把它想象成一个房子的图纸。一个建筑商使用这个图纸来建造房子。然而,在我们的比喻中,图纸是一个抽象合约,你是建造者,而房子是派生合约。

分析 | BTC暴跌该如何操作?合约关注8300压力位:据Huobi数据显示,BTC现报8078美元,日内涨幅1.87%。针对当前走势,金色盘面特邀分析师保罗大帝表示:昨晚大饼再次下探了7700支撑,受到支撑反弹8000上方,白天基本维持了震荡局面。日线布林线呈开口向下扩散,各指标也是空头排列。

?技术上看,1小时看,比特币RSI运行在50附近,KDJ经过刚才的反弹后,底部有金叉趋势。但是可以看到,反弹的上方受到了MA30的压制,MA30成反弹的阻力位。合约15分钟看,这个位置与前高8300位置大约重合,BTC要想走稳向上这个点位要突破,是最基本的要求。

今日操作:上方压力位8200,上方强压力位9300美元,下方支撑位7700美元。合约方面,空单关注8300能否突破,不能突破站稳、空单可跟进。(若趋势反转向上,回踩平仓。)严格带好止盈止损。现货方面,关注下方7700支撑,跌破减仓。?注1:以上合约操作价格为火币季度合约价格,现货为火币现货价格。[2019/9/27]

在我们的案例中,闪电贷合约使用的是一个名为FlashLoanReceiverBaseV1的抽象合约,它提供了必要的实现细节,如闪电贷的偿还。

现在来逐行解读代码:

#1 首先,我们必须定义 solidity 编译器的版本。在这个例子中,它是 0.6.6。

#8 传递了 Aave 的一个借贷池提供者的地址。在这个例子中,我们提供的是 DAI 借贷池的地址。

#13 定义了一个叫做 flashLoan 的函数。参数是想要闪电贷的资产地址。在这种情况下,该资产是 DAI。

#14 由于这里不需要任何闪电贷的数据,所以我们传递一个空字符串。

#15. 定义我们想要借出的 DAI 的数量(以 10^18 的 Wei 为单位)。

#16. 通过 Aave 提供的 ILendingPoolV1 初始化 LendingPool 接口,这样我们就可以调用 flashLoan 函数。#17. 最后,调用 flashLoan 函数。该函数需要 4 个主要参数。首先,传递将接收贷款的地址。在我们的例子中,它是当前合约。其次,我们传递资产的地址。在我们的例子中,它是 Kovan 网络中 DAI 的地址。第三,传递资产的数量,在我们的案例中,它是 1 个 ether 单位(或 10^18 的 wei单位)的数量。第四,传递额外的空数据。

#24-31. 接下来第二个函数 executeOperation。这就是我们利用闪电贷的地方。它在 flashLoan 函数成功执行后被内部调用。它需要 4 个主要参数,分别是:

#33. 检查我们是否收到了适当的贷款金额,否则它将抛出一个错误信息。

动态 | 社科院法学所刊文《对“去中心化”的区块链如何监管》:中国社科院法学所赵磊在《经济参考报》发表题为《对“去中心化”的区块链如何监管》的文章。文章指出,对区块链技术的监管,应该分为两个层面:一是结合区块链技术的具体应用场景,分行业进行监管;另一是针对区块链,制定专门的技术标准,以实现区块链技术的规范、统一。而判断某种商业活动或者社会管理活动是否可以应用区块链,至少应该从以下两方面进行衡量:一方面是区块链技术只能在虚拟空间中应用;另一方面是区块链技术无论在何种场景中应用,必须符合其去中心化、共识机制与分布式记账等技术特征。[2019/1/10]

#34. 在这里,可以根据你自己的使用场景,定制自己的实现逻辑(例如去 DEX 中套利)。

#40. 我们通过使用 SafeMaths 库提供的 add 函数,将费用和贷款金额加在一起。

#41.最后,把总的债务或贷款金额还给贷款人。

首先,打开你的 MetaMask,将你的网络设置为 Kovan测试网络。

使用这个 gist 代码来定义 flashloan 智能合约的依赖关系。点击每个链接并将代码粘贴到你之前创建的相应的 Solidity 文件中:a. ILendingPoolb. IFlashLoanReceiverc. ILendingPoolAddressesProviderd. FlashLoanReceiverBasee. Withdrawable

切换到 Solidity Compiler标签。将编译器设置为 0.6.6 并点击 compile FlashLoan.sol。

你应该看到一些警告,但没有错误信息。

现在,我们已经准备好将合约部署到 Kovan 网络。切换到 Deploy & Run Transctions标签。把部署环境(ENVIRONMENT),从 JavaScript VM 改为 Injected Web3。这应该会打开 MetaMask 询问你的权限。

确保合约选择的是 FlashLoan.sol。在部署按钮旁边的文本字段中提供 LendingPool 的地址。在我们的例子中,它将是0x506B0B2CF20FAA8f38a4E2B524EE43e1f4458Cc5。然后点击 Deploy(部署),它应该会打开 MetaMask。

注意。所有已部署的合约地址列表可在这里找到。在那里,你可以找到 Aave 支持的各种借贷池的地址。虽然每个代币的地址都不同,但程序是相同的。

点击 确认(Confirm)。这样做后,你应该看到 MetaMask 发出的成功通知。之后侧边栏应该有一个 “已部署的合约(Deployed Contracts)”。

韩国政府召开紧急会议 讨论如何遏制加密货币投机:首尔12月13日电 韩国政府周三召集了相关部委的紧急会议,讨论如何在当地投资者日益担忧财务损失的情况下遏制加密货币投机。会议汇集了司法部,财政部,科学部和ICT部,金融服务委员会,韩国通信委员会,公平贸易委员会和国家税务局的高级官员。比特币和以太坊等加密货币近年来迅速普及。韩国是世界上最大的比特币交易所之一,约有100万人拥有最知名的数字货币。[2017/12/13]

在新的 已部署合约标签下,可以复制已部署合约的地址。我们稍后会回到这一步;与此同时,我们需要给闪电贷合约添加一些 DAI。这是因为闪电贷需要合约中的资金才能成功执行。为此,你可以跳转到水龙头链接,获得一些 DAI 代币(请确保连接到右上角有小 K的 Aave v2市场)。点击 Faucet,粘贴你的 MetaMask 钱包地址,然后等待确认。

获得确认后,我们将把 DAI 代币添加到 MetaMask 中。为此,打开你的 MetaMask。点击底部的 Add Token。在 代币合约地址(Token Contract Address)栏输入 0xF795577d9AC8bD7D90Ee22b6C1703490b6512FD。这是 Kovan 的 DAI 的合约地址。点击 下一步后,它应该显示你先前从水龙头(Faucet)得到的 DAI。

接下来,点击 DAI 代币。点击 发送,它应该打开一个类似于下图的窗口:

输入我们的闪电贷的合约地址,之前已经复制了该地址。输入我们要发送的金额。在我们的案例中,发送 10DAI。然后点击 下一步。点击 确认!你现在已经成功地给你的闪电贷合约发送了 10DAI。

回到 Remix,在部署的闪电贷合约下,还有一个 flashloan 函数。这个函数需要一个我们想使用的资产的合约地址。在我们的例子中,它是 Kovan 测试网的 DAI 合约,是 0xF795577d9AC8bD7D90Ee22b6C1703490b6512FD。正确填写该字段后,你现在可以点击 交易(transact)按钮,如下图所示:

点击按钮后,MetaMask 会弹出交易确认。确认交易后,你应该收到一条成功信息。在 Remix 的终端,你应该看到一个 URL。点击后会跳转到 Etherscan。

在 代币转移(Tokens Transferred)下,你应该看到三个不同的转账:

红色的箭头强调了从 LendingPool 转移 1 个 DAI 到我们的合约。橙色的箭头表示将 1 个 DAI 连同费用一起返还给 Landing pool。蓝色的箭头表示产生利息的 DAI。

我们成功地编写了闪电贷的智能合约, 它能够从资金池中借入 DAI,支付闪电贷费用,然后在一次交易中偿还所借金额。不需要没有任何抵押物就借到了钱!

本翻译由 CellETF 赞助支持。

来源:How to Make a Flash Loan using Aave

参考资料

登链翻译计划: https://github.com/lbc-team/Pioneer

翻译小组: https://learnblockchain.cn/people/412

Tiny 熊: https://learnblockchain.cn/people/15

闪电贷: https://aave.com/flash-loans/

闪电贷: https://learnblockchain.cn/tags/%E9%97%AA%E7%94%B5%E8%B4%B7

Aave官网: https://aave.com/

超额抵押: https://www.oxfordreference.com/view/10.1093/oi/authority.20110803100257900

dYdX: https://dydx.exchange/

资产间套利: https://en.wikipedia.org/wiki/Arbitrage

Remix IDE: https://remix.ethereum.org/

以太坊智能合约: https://ethereum.org/en/developers/docs/smart-contracts/

跟我学 Solidity :开发环境: https://learnblockchain.cn/article/1755

MetaMask: https://metamask.io/

Solidity: https://learnblockchain.cn/docs/solidity/

全面掌握Solidity智能合约开发: https://learnblockchain.cn/column/1

抽象合约: https://learnblockchain.cn/docs/solidity/contracts.html#abstract-contract

ILendingPool: https://gist.github.com/akp111/e254b2b5b98aa5a79f3f8dc501dfaedb#file-ilendingpool-sol

IFlashLoanReceiver: https://gist.github.com/akp111/e254b2b5b98aa5a79f3f8dc501dfaedb#file-iflashloanreceiver-sol

ILendingPoolAddressesProvider: https://gist.github.com/akp111/e254b2b5b98aa5a79f3f8dc501dfaedb#file-ilendingpooladdressesprovider-sol

FlashLoanReceiverBase: https://gist.github.com/akp111/e254b2b5b98aa5a79f3f8dc501dfaedb#file-flashloanreceiverbase-sol

Withdrawable: https://gist.github.com/akp111/e254b2b5b98aa5a79f3f8dc501dfaedb#file-withdrawable-sol

这里: https://docs.aave.com/developers/v/1.0/deployed-contracts/deployed-contract-instances

水龙头: https://testnet.aave.com/faucet/DAI

CellETF: https://celletf.io/?utm_souce=learnblockchain

How to Make a Flash Loan using Aave: https://www.quicknode.com/guides/defi/how-to-make-a-flash-loan-using-aave

译文出自:登链翻译计划

译者:翻译小组

校对:Tiny 熊

标签:BSPNBSLOANASHbspt币未来前景nbs币前景Yearn Loans FinanceSheepASheep

币安app官方下载最新版热门资讯
BLA:他摆脱了音乐公司的控制 用NFT实现了财富自由_ROYA

本文来自微信公众号老雅痞(id:laoyapi)。Royal是一个音乐NFT市场,粉丝可以在其中获得他们最喜欢的歌曲的所有权。 DJ Justin Blau又名 3LAU,在一个音乐节上表演.

1900/1/1 0:00:00
NFT:NFT周刊|Kraken推出NFT市场;星巴克、沃尔玛等传统企业探索NFT更多用例_THE

上周NFT领域的明星团队Yuga Labs推出了元宇宙项目Otherside,就NFT在元宇宙中的应用建立了新的范本。NFT市场引发了游戏、Crypto领域等诸多社区的热议.

1900/1/1 0:00:00
DEF:金色DeFi日报 | DEX交易量4亿美元 借贷平台借款总量15亿_DOGDEFI币

1.DeFi总市值:115.29亿美元 金色财经行情播报丨BTC压力位在7400USDT附近:据火币行情显示,截至10:00,昨日BTC下午小幅回调后,晚上10点开始反弹.

1900/1/1 0:00:00
DEF:为什么说DeFi中的借贷目前并不是一个好故事?_Restaurant DeFi

让我们面对现实吧,DeFi现在确实很重要。虽然出乎意料,但确实如此。也许,没有什么比DeFi的总价值锁定数字从一月份的不到7亿美元,飙升至撰写本文时的超过78亿美元的事实更好地说明了这一点.

1900/1/1 0:00:00
NFT:重磅研报(三):区块链、虚拟货币、NFT、元宇宙-到底有何价值?_shaun币哪里能买

2009年,第一个创世区块诞生,自此开启了虚拟货币的元年,随后,区块链技术开始逐渐应用落地,稳定币也悄然诞生.

1900/1/1 0:00:00
EPE:古老的互联网MeMe 鼻祖 Pepe NFT是如何诞生的?_ENS

本文由公众号“老雅痞”laoyapicom授权转载原文来源:decryptPepe the Frog 不仅是最古老的互联网meme之一.

1900/1/1 0:00:00