在 Infura 上建立闪电贷套利机器人#2
发布日期:2021-02-04 11:00:41
浏览:次
*译文出自:登链翻译计划 [1]
*译者:翻译小组 [2]
*校对:Tiny 熊 [3]
在上一篇文章中 [4] 我们介绍了我们机器人背后的三个主要概念:套利、基于合约的交易和乐观转账。
在这篇文章中,我们将介绍如何构建一个程序,以观察并执行有利可图的套利交易。
这是我们做的整体流程:
套利交易流程
1.程序 (Bot
) 正在观察 Uniswap 和 Sushiswap 上 ETH-Dai 配对的价格。
2.当它发现一个有利可图的套利机会时,它就会向我们部署的合约发送一笔交易。
3.在这笔交易中,合约将:
a)使用闪电兑,乐观地从价格较低的资产池中借入资产。
b)立即在较高的资产池出售资产。
c)偿还闪电兑,将差额收入囊中。
让我们一起来实现这些吧 !
我们的程序是在 Node.js 中使用 ethers.js 库 [5] 编写的,并与 Infura 节点相连,套利智能合约是用 Solidity[6] 编写。
Infura
我们的后端部分是用 Node 写的,将使用 Infura 节点来观察 Uniswap 和 Sushiswap 合约上 ETH 和 Dai 的价格。这里会依靠 Infura 节点来获取主网每个新区块产生的价格。如果你没有免费的 Infura 账户,你可以在这里 [7] 注册。
.env 配置
- 这是超级重要的!* 我们还需要存储我们的私钥来签署主网交易。我们把所有的敏感信息都放在 .env 文件中 (查看在 repo 中的例子 [8])。我们还输入了套利合约的地址和 Infura 主网节点的密钥。
PRIVATE_KEY= FLASH_LOANER= INFURA_KEY=
确保 PRIVATE_KEY
与部署 FLASH_LOANER
合约的相同。另外,与 PRIVATE_KEY
相关联的以太坊账户需要有足够的资金来支付 Gas 费用,Gas 费用可能很高。
如果你不确定我们为什么要这样做,请阅读这篇优秀的文章,解释如何避免将你的私钥上传到 Github[9]。正如文章所解释的,我们需要将敏感信息放在这个 .env 文件中,然后我们将其添加到 .gitignore 文件中 [10], 像这样:
.env yarn.lock package-lock.json node_modules
这样,当我们把信息推送到 Github 时,这个文件就不会被提交。这是超级,超级重要的!
Ethers.js
我们使用 Ethers.js 是因为它兼容 Typescript ,Typescript 是项目的原始语言。这对于 Ethereum 开发者来说是一个老问题了,但是关于 ethers.js 和 web3,js 的更多区别,请看这篇文章 [11]。
合约实例
接下来,我们在第 11 行和第 12 行实例化 Uniswap 和 Sushiswap 合约 [12]。
免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻 ChainNews 立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。
- 193861AAX 价格竞猜活动 (8
- 189132万字回顾NFT市场发展
- 175233全览60个永续合约协议
- 162314Gate.io 双周报2021年
- 146055Gate.io 双周报2021年
- 113546Oleksandr Usyk 限量
- 110027星球日报 | BALD近乎
- 105608ETH周报 | 以太坊创世
- 97909法币出售流程(APP版
- 942010一周融资速递 | 15家
- 932511一文梳理模块化Layer2
- 872312Gate.io 联合 APENFT
- 829813AOFEX第22期新项目上
- 791014Gate.io 联合 APENFT
- 762915闪电网络被骂“难用”
- 733316币赢研究院——Liquid
- 720817Gate.io 今日智能量化
- 716318Gate.io OpenPunks 全
- 707219Gate.io 今日智能量化
- 707220Gate.io 今日智能量化
- 706821Gate.io 今日智能量化
- 706722Gate.io 今日智能量化
- 705623Gate.io 今日智能量化
- 704024Gate.io 今日智能量化
- 692925ATA、MASK上线DeFi矿
- 669426Gate.io 今日智能量化
- 648627Gate.io 创世OpenPunk
- 648228Gate.io 今日智能量化
- 639429ETH 限时折扣第二期,
- 638030Gate.io 今日智能量化