TER:如何在合约中集成 Uniswap v3

译文出自:登链翻译计划

译者:翻译小组

校对:Tiny熊

Uniswapv3的新内容及集成

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

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

else{require(daiToken

//dosomethingwiththatDAI...}

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

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

神鱼:准备写耕田日记介绍如何5天挖回500万U:F2Pool联合创始人神鱼在微博表示,准备写个耕田日记,如何5天挖回500万U。 ????神鱼补充说,没仔细算,本金大概500万U。[2020/9/2]

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

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

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

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

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

直播|KIKI >教你如何选择比特算力:金色财经 · 直播主办的《 币圈 “后浪” 仙女直播周》第10期,本期由58COIN TOP天团组成,20:00正在直播中,本期“后浪”仙女58TOP女团甜美担当 KIKI在直播间分享“教你如何选择比特算力”,请扫码移步收听。[2020/7/31]

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

constrequiredEth=(awaitmyContract

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

美国货币监理署新署长:期望进一步了解银行与加密货币机构如何相互作用:美国货币监理署(OCC)新署长Brian Brooks表示,OCC正寻求与银行和加密货币机构的行业领袖进行更多的对话,期望了解如何进一步促进双方相互作用。他表示加密货币机构需要银行服务,他们需要跨银行通道进行交易的。他期望进一步了解有关加密货币对银行的需求以及银行对加密货币的需求,因为他们确实想在这方面有所作为。OCC是美国财政部的主要银行监管机构,Brooks于3月份离开Coinbase,加入OCC并担任首席法律官。(Cointelegraph)[2020/6/5]

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

声音 | 新加坡金管局高管:金管局正在研究如何通过监管应对加密货币带来的风险:据Finance Magnates消息,新加坡金融管理局(MAS)高管Damien Pang在本周四举行的年度金融科技联合大会上表示,许多监管机构和行业人士呼吁以自上而下的方式对加密货币行业进行监管。金管局正在研究加密货币带来的风险,以及如何通过监管来予以应对。 Pang称:“我们绝对需要监管加密货币,这是为了正确应对风险。例如使用加密货币为恐怖主义融资等,这是我们需要解决的问题。因此,问题不在于加密货币是否应该受到监管,而是关于(区块链)技术所带来的风险,以及我们如何在不对整个加密货币行业一网打尽的情况下,试图减轻这些风险。”[2019/6/27]

//importanttoreceiveETHreceive()payableexternal{}}

ExactInput和ExactOutput的区别

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

以准确的DAI购买

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

动态 | Kyle Samani发推质疑Block.one如何在两年时间花掉 8 亿美元:著名区块链投资机构 Multicoin 创始合伙人 Kyle Samani 发推质疑 EOS 背后的开发公司 Block.one 如何在两年时间中烧掉 8 亿美元。Kyle Samani 发表推文称,如果 Block.one 通过 ICO 融资了 40 亿美元,现在的资产负债表上有 32 亿美元的资产,那么这家有 200 名员工的公司如何在两年时间里花掉了 8 亿美元现金?Kyle Samani 还称,Block.one 进行了 1.8 亿美元风险投资,但这不是支出,即便把这些投资的账面资产都减记为 0 ,时间也不够用。而 Staked.us 的联合创始人 Jonathan Marcus 则表示,Block.one 花费的那 8 亿美元中,最少有 5.3 亿美元用于股权回购,因为 Block.one 过去两年共进行了两次股权回购,一次花费了 3 亿美元,最近又回购了 2.3 亿美元的股权。[2019/6/3]

用精确的ETH购买

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

本翻译由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

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

金星链

欧易交易所EOS:LOEx国际站即将上线DPN

尊敬的LOEx用户:LOEx国际站即将上线DPN,敬请期待。币种介绍代币简称:DPN代币全称:DolphinCoins发行总量:1,000,000,000,000现流通量:1,000,000,0.

中币交易所RAD:站在十字路口的中国比特币矿工

?时间是2021年5月25日,王力穿着厚厚的医务防护服,在国际航班候机楼内,全副武装等待起飞。毕竟海外疫情尚未稳定,诺大的国际候机楼此时显得空荡荡,没人会在这个时间出国,除非必要情况,比如王力的.

[0:31ms0-1:120ms