如何在合约中集成 Uniswap v3_GATE:TPS

译文出自:登链翻译计划

译者:翻译小组

校对:Tiny熊

Uniswapv3的新内容及集成

如果你还不熟悉Uniswap,它是一个去中心化的交易所,依靠外部流动性提供者将代币添加到流动池配对中,用户可以直接交易这些代币。

由于它在以太坊上运行,可以交易的是以太坊ERC-20代币。每种代币都有自己的智能合约和流动资金池。Uniswap--作为完全的去中心化--对哪些代币可以添加没有限制。如果一个代币对还没有流动池合约存在,任何人都可以Uniswap的工厂创建一个,任何人都可以向池子提供流动性。每笔交易有0

else{require(daiToken

//dosomethingwiththatDAI...}

在你的函数的开头做一个简单的检查就足够了。现在,对于convertEthToExactDai函数,它将看起来像这样的东西。

functionconvertEthToExactDai(uint256daiAmount)externalpayable{require(daiAmount>0,"Mustpassnon0DAIamount");require(msg

匿名巨鲸在市场下跌期间购入488枚BTC后,持币量超越MicroStrategy:1月25日消息,一个匿名比特币巨鲸在加密市场下跌时,在3.6万美元区间分两笔交易购入了488枚 BTC,目前该巨鲸钱包内共持有124,487枚 BTC,比MicroStrategy的比特币持有量多出约100枚 BTC。

通过分析该匿名巨鲸活动发现,该巨鲸在 BTC 市场高点下跌后就一直在持续买入,历史数据显示该巨鲸平均 BTC 购入金额为2.2万美元。(U.today)[2022/1/25 9:12:27]

这里有几件事情需要解读。

SwapRouter:SwapRouter将是一个由Uniswap提供的包装合约,它有几个安全机制和便利功能。你可以使用ISwapRouter(0xE592427A0AEce92De3Edee1F18E0157C05861564)为任何主网或测试网实例化它。接口代码可以在这里找到。

WETH:你可能注意到,我们在这里使用ETH。在Uniswap中,不再有直接的ETH对,所有的ETH必须首先转换为WETH。在我们的案例中,这是由SwapRouter完成的。

exactOutputSingle:该函数可用于使用ETH并接收准确的代币数量。任何剩余的ETH将被退还,但不是自动!我自己没有第一时间意识到这一点,ETH最后在路由器合约中。所以不要忘记在兑换后调用uniswapRouter

数据:FORTH代币持币地址数量已超过7300个:据欧科云链OKLink数据显示,当前AMPL(Ampleforth)治理代币FORTH的持币地址数量已经达到7376个。代币分布方面,当前排名第一的是空投合约的地址,合约中FORTH代币数量为806.72万枚,占供应量的53%。此外,持有至少15万枚FORHT(供应量1%)的地址共有7个,Uniswap V2的FORTH的流通性约合76万美元。[2021/4/22 20:46:33]

但是请注意,我们没有把它声明为视图函数,但是不要在链上调用这个函数。尽管它可以作为一个视图函数来调用的,但它会采用非视图方式来获得计算结果。由于Solidity的特性,所以这里也不可能将它本身声明为一个视图函数,仅能使用场景如Web3的call()功能来读取前端的结果。

现在我们可以在前端调用getEstimatedETHforDAI。为了确保我们发送了足够的ETH,并且交易不会被退回,我们可以将估计的ETH数量增加一点。

constrequiredEth=(awaitmyContract

contractUniswap3{IUniswapRouterpublicconstantuniswapRouter=IUniswapRouter(0xE592427A0AEce92De3Edee1F18E0157C05861564);IQuoterpublicconstantquoter=IQuoter(0xb27308f9F90D607463bb33eA1BeBb41C27CE5AB6);addressprivateconstantmultiDaiKovan=0x4F96Fe3b7A6Cf9725f59d353F723c1bDb64CA6Aa;addressprivateconstantWETH9=0xd0A1E359811322d97991E03f863a0C30C2cF029C;functionconvertExactEthToDai()externalpayable{require(msg

以太坊2.0存款合约地址持币突破5万个ETH:据Tokenview数据显示:以太坊2.0存款合约地址共计收到229个创世验证者存入的1518笔50592个ETH,占比总目标(524288ETH)的9.65%,其中排名前三位分别存入13888、6400、3200个ETH,目前以太坊2.0存款合约上ETH的持有量排名327。[2020/11/9 12:04:39]

functionconvertEthToExactDai(uint256daiAmount)externalpayable{require(daiAmount>0,"Mustpassnon0DAIamount");require(msg

//donotusedon-chain,gasinefficient!functiongetEstimatedETHforDAI(uintdaiAmount)externalpayablereturns(uint256){addresstokenIn=WETH9;addresstokenOut=multiDaiKovan;uint24fee=3000;uint160sqrtPriceLimitX96=0;returnquoter

//importanttoreceiveETHreceive()payableexternal{}}

公告:币新关于‘交易挖矿’和‘持币分红’规则升级公告:币新发布公告称,为了保证X-Mining和X-Bonus普惠更多积极参与的矿工,同时避免投机持仓损害真实持仓矿工的利益,并为了表现出OCX真实的市场价值,现将‘交易挖矿’和‘持币分红’返还规则进行升级,如下:

①交易挖矿每两小时随机快照,每天共计快照12次;

②每天持币分红按照12次快照中最小量计算,发放分红

③交易挖矿手续费返还按照三分原则(分档+分时+分比例)

X网保证交易挖矿和持仓用户次日24小时内利润得到返还。[2018/6/23]

ExactInput和ExactOutput的区别

一旦你执行这些函数并在Etherscan中查看它们,区别就会立即变得很明显。这里我们是用exactOutput进行交易。我们提供1个ETH,希望收到100个DAI作为回报。任何多余的ETH都会退还给我们。

以准确的DAI购买

而下面,我们正在使用exactInput进行交易。我们提供1个ETH,并希望得到多少DAI,而这恰好是196个DAI。

用精确的ETH购买

请注意,如果你困惑为什么价格会如此不同,这是测试网的一个小池子,第一个交易严重影响了池子里的价格。没有多少人在测试网中进行套利交易:)

BTC持币最多地址近两周内转出币价值8.6亿人民币:据blockchain.info数据显示,持币数量最多的账户:3D2oetdNuZUqQHPJmcMDDHYoqkyNVsFk9r,5月18日至今已转出1.8万枚BTC,价值8.64亿元人民币。[2018/6/1]

本翻译由CellNetwork赞助支持。

来源:https://soliditydeveloper.com/uniswap3

参考资料

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

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

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

Uniswap:https://uniswap.exchange/

一篇文章:https://soliditydeveloper.com/uniswap2

v3自2021年5月5日起在主网上运行:https://uniswap.org/blog/launch-uniswap-v3/

文件:https://docs.uniswap.org/

白皮书:https://uniswap.org/whitepaper-v3.pdf

这里:https://github.com/Uniswap/uniswap-v3-periphery/blob/main/contracts/interfaces/ISwapRouter.sol

exactOutputSingle:https://docs.uniswap.org/reference/periphery/interfaces/ISwapRouter#exactoutputsingle

quoteExactOutputSingle:https://docs.uniswap.org/reference/periphery/interfaces/IQuoter#quoteexactoutputsingle

call():https://web3js.readthedocs.io/en/v1.3.4/web3-eth-contract.html#methods-mymethod-call

exactInput:https://docs.uniswap.org/reference/periphery/interfaces/ISwapRouter#exactinput

exactOutput:https://docs.uniswap.org/reference/periphery/interfaces/ISwapRouter#exactoutput

Multi-collaterizedKovanDAI:https://oasis.app/borrow?network=kovan

exactOutputSingle:https://docs.uniswap.org/reference/periphery/interfaces/ISwapRouter#exactoutputsingle

exactInputSingle:https://docs.uniswap.org/reference/periphery/interfaces/ISwapRouter#exactinputsingle

CellNetwork:https://www.cellnetwork.io/?utm_souce=learnblockchain

免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。

本文来源于非小号媒体平台:

登链社区

现已在非小号资讯平台发布105篇作品,

非小号开放平台欢迎币圈作者入驻

入驻指南:

/apply_guide/

本文网址:

/news/10040915.html

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场

上一篇:

对标AGIX、欧易AI板块的黑马——CNTM

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金智博客

[0:0ms0-4:860ms