2022-12-05 14:00:21
在捕鲸船社区的一次分享,一步步的分析了一次 DEFI 三明治套利。
百度网盘链接:
https://pan.baidu.com/s/1_T1MdktfGOsi-QIL2MW-sw?pwd=2022 提取码: 2022
2022-05-23 13:06:54
在我看来,闪电贷真是一个迷人的金融创新,打破了传统世界资本垄断带来的机会的不公平;在区块链世界,你可以以极低的利息借出几亿美金,使用很短的时间,让资本本身不会成为认知变现的壁垒。
趁着疫情在家打算整理一个闪电贷的系列文章。从基本概念,到真实的套利案例分析,再到个人对未来的憧憬。
闪电贷系列文章一: 什么是闪电贷?
因为看到 Reddit 这篇文章写得非常通俗易懂,因此直接用 DeepL 辅助翻译过来(稍有调整)
警告。非常长(但也超级有趣,我保证)!
如果我告诉你,你可以在眨眼间匿名借到2亿多美元,而不需要提供任何抵押品,甚至不需要承担任何贷款责任,你会怎样?
这在很多方面听起来都是不可能的,在传统金融中也是一个离谱的概念,但在 DeFi 中却是一个现实。只要稍加努力,到最后你就可以在没有抵押物的情况下借到数百万美元。
当然,也有一些我还没有提到的限制。第一个限制:你需要能够自己编写和部署 Solidity 智能合约(网上有相关的代码编写指南)。最终,预计 Aave 和其他协议将在其用户界面中提供闪电贷款,而不是要求你使用自己的智能合约直接与他们的贷款池互动。
闪电贷款的第二个重要的限制:贷款必须在你拿出贷款后的几秒钟内偿还(连同利息,通常略低于1%)。更具体地说,它必须在以太坊交易结束时偿还。
第三个限制是,在借钱和还钱之间,你对资金所做的一切都必须发生在以公链(以太坊 BSC 等)生态系统内;你不能将这些资产移出所属网络。
这还是说不通的,对吗?如果你不偿还或不能偿还会怎样?在你接受贷款的同一交易内偿还贷款甚至意味着什么?拥有 2 亿美元的 10 秒钟有什么意义呢?为了回答这些问题,我们需要看一看闪电贷款究竟是如何运作的。
我们需要了解的第一件事是以太坊交易。由于智能合约的存在,以太坊交易并不只是简单的资产转移,它们可以包含任何任意的逻辑。此外,这些交易可以在其内部包含更多的交易(而这些交易甚至可以在其内部包含交易)。所以,以太坊交易可以相互嵌套。顶层交易只有在它所包含的每一个交易也成功的情况下才能成功。
这最后一句话是一个非常重要的概念,被称为原子性(来自古希腊语的 “不可分割性”)。对于智能合约平台来说,原子性的属性意味着一个交易必须要么完全成功,要么完全失败;它不能部分地成功。因此,如果顶级交易中的一个子交易失败,那么整个顶级交易就会失败,这意味着它所包含的每一个子交易都会失败,因此除了失败的交易记录外,区块链上实际上什么都不会发生。
只有当一个交易完全成功后,它才会被添加到区块链上,成为一个不可改变的事实。在那一刻之前,在以太坊网络上发生的所有事情都是可逆的。以太坊知道如何在父交易失败的情况下回溯任何任意的交易序列。
例如,假设我做了一个包含三个子交易的交易;一个涉及在 Aave 上借东西,另一个涉及在 SushiSwap 上卖东西,第三个涉及在 Uniswap 上买东西。现在,假设 Aave 交易成功,SushiSwap 交易成功,但 Uniswap 交易失败(例如,由于 gas 不足)。这个失败导致整个顶层交易失败,这将导致 SushiSwap 的卖出和 Aave 的借入逆转。实际上,这些事情实际上从未发生过。被添加到区块链上的只是尝试过的那个失败交易的记录。
然而,如果所有 3 个交易都成功了,那么顶级交易将成功完成,然后它将被添加到区块链上,这意味着所有 3 个子交易都已实际发生,现在不能被逆转了。
这最终让我们回到了闪电贷款。当你借出闪电贷款时,一个以太坊交易开始了。这个顶级交易中的第一个子交易是将你所借的资金实际转移到你的地址。接下来,你可以自由地做任何你喜欢的交易序列,以尝试在你所借的资金上实现盈利。你可以与任何协议、DEXs、AMMs或你喜欢的任何种类的合同互动,以任何方式和任何顺序。唯一的限制是,你不能将资金转移到以太坊网络之外;否则,你将能够简单地拿钱跑路,因为贷款是匿名和无抵押的。
无论你在智能合约中包括什么子交易,闪电贷款的最后一个子交易必须始终是全额偿还贷款及利息。如果你成功地偿还了贷款和利息,那么整个闪存贷款交易将成功完成。贷款人将得到他们的资金和利息,而你可以保留你在借入和归还资金之间设法创造的任何额外利润。这整个交易现在将被添加到区块链上,作为不可改变的历史事实。
然而,如果你不能在顶层交易结束前连本带利地偿还贷款(比如你在闪电贷款开始后的几秒钟内设法损失了一些资金),那么最后的子交易(偿还交易)将失败。由于原子性,这将导致整个闪存贷款交易失败,这意味着每个子交易都将失败,逆转你的智能合约所采取的每一个行动,甚至包括你收到借款的第一个子交易。
换句话说,如果你不能在交易结束时连本带利地偿还你的闪电贷款,那么你甚至在一开始就没有借到资金!这就是闪电贷款。因此,闪电贷款有点像薛定谔的贷款:如果它们实现了盈利,那么它们就是真实的;否则,它们从未存在过。
那么,在闪电贷款交易开始和结束的几秒钟内,人们如何实际使用这些资金来实现盈利?到目前为止,人们唯一真正的用例是套利(利用同一资产的两个市场之间的价格差异,然后在较便宜的市场买入,在较贵的市场卖出,将差价收入囊中)。因此,一个现实的闪电贷款智能合约很可能涉及一个机器人,它正在寻找足够大的套利机会,然后在找到一个机会后,拿出一大笔闪电贷款,用这些资金以巨大的方式执行套利游戏,然后偿还资金并将利润收入囊中。
从某种意义上说,闪电贷款就像双方短暂的、匿名的伙伴关系,双方都为联盟带来了重要的资源。贷款人基本上是在说:”我有大量的钱,并有兴趣使其成倍增长,但我没有耐心或知识来做这件事”。借款人基本上是在说:”我对 DeFi、智能合约、Solidity 和套利有丰富的知识,所以我知道如何快速的赚钱,但我没有足够的本金”。在几秒钟内,这些人匿名联合起来,如果成功了,贷款人带着他们 0.9% 的利息离开,而借款人带着剩余的利润离开。如果不成功,那么闪电贷款首先就不会发生;没有伤害,也没有犯错。
这些当事方有时可以在 10 秒钟的交易后带走数百万美元的利润,而且任何一方都不会为闪电贷款承担任何风险(除了固有的智能合约风险)。如果它不成功,它根本就没有发生过;这就是为什么你不需要信用检查或抵押品或任何东西。贷款人不需要担心贷款违约,而借款人也不需要担心背负债务责任。
那么,如果人们可以匿名借到巨额资金,而且双方都没有风险,为什么闪电贷款不是主流?
嗯,首先,它们是一个相当新的发明。此外,他们只是感觉不对。闪电贷款对任何人来说都不太合适。这感觉就像吃了你的蛋糕,也吃了它。看起来不应该在没有风险的情况下借2亿美元(顺便说一下,闪电贷款的规模在理论上没有限制;我只是一直说2亿美元,因为我相信这是迄今为止最大的一笔贷款。它只受到贷款流动性的限制)。
由于这些原因,闪电贷款在DeFi协议和用户(甚至是极其精明的用户)中的采用是缓慢的,犹豫的。尽管如此,对于那些真正愿意学习如何编写闪存贷款套利合同的人来说,这基本上是坐在地上的免费资金。
加密货币世界在拥抱闪电贷款方面一直非常犹豫的最后一个原因是,它们已经被用于一些高调的 DeFi 漏洞。基本上,一些非常精明的用户已经找到了方法,使用闪电贷款与各种协议的复杂互动串,以做一些事情,如瞬间欺骗价格反馈或短暂地在一个交易所的稳定币脱钩,或其他。闪电贷款使这些剥削者能够大幅增加他们从其伎俩中获得的利润。这些攻击需要对所有涉及的协议有极深的了解,往往涉及 4 或 5 个步骤,都是非常细微和巧妙的。这些漏洞发生后都被立即打上了补丁;毕竟,这些漏洞不是存在于闪存贷款本身,而是存在于漏洞中使用的任何协议。如果有人能用闪存贷款做这些漏洞,那么其他人只要一开始有那么多钱,就可以做完全一样的事情。
(顺便说一下,如果你正在寻找关于闪存贷款的更深入和更有挑战性的读物,我强烈建议你查找已经发生的几个主要闪存贷款攻击。无论你对围绕它们的道德问题持何种立场,它们都是非常有趣、细致和巧妙的)。
因为唯一提到闪电贷款的新闻报道都是关于这两三起大型闪电贷款攻击事件的,大多数人只听说过他们在漏洞方面的情况,因此大多数人把闪电贷款与黑客和攻击联系起来。
我相信有一天它们会被正常化,但肯定不是今天。但有一点是肯定的:它们会持续存在下去。猫已经从盒子里出来了。只要有DeFi协议愿意支持闪存贷款和DeFi用户愿意使用它们,那么它们将永远提供给任何愿意冒险的人。
总之,这篇文章变得非常长,所以我将在此结束。我希望你喜欢阅读,并希望它让你和我一样对闪电贷款的想法感到好奇(和不舒服)!我希望你能在这里找到答案。
编辑:许多评论者提到了一些非常有效的东西,我忘了包括在内。无论交易成功与否,你都必须支付交易的 GAS 费。如果有许多复杂的次级交易,这些 GAS 费可能相当高。因此,从技术上讲,由于 GAS 费的原因,闪电贷款操作可能会赔钱。只是你不需要为贷款本身承担责任,贷款人也不需要承担违约风险。
编辑2:我意识到,我暗示闪电贷款只存在于以太坊上,只是没有提到任何其他区块链。事实上,它们也在BSC上,而且我想我听说它们也来到了其他几个链上。我只是默认谈论以太坊,因为它是我最熟悉的生态系统。
2022-04-07 08:47:03
刚考完新规下的科目一,分享些自己整理的知识点。
18 年报的驾考,22 年踩在有效期最后一天考了科目一。学车真是越早越好。
经验总结:驾考宝典做一遍,错题过 3 遍,模拟考试来 10 场,只要模拟考试多数能过基本问题不大。耗时 3-5 天
附 PDF 文件和 XMind 原始文件(MIT 协议):