如何在合约中集成 Uniswap v3_SWAP:ecoterra币APp

译文出自:登链翻译计划

译者:翻译小组

校对:Tiny熊

Uniswapv3的新内容及集成

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

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

else{require(daiToken

//dosomethingwiththatDAI...}

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

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

直播|Andrey Belyakov :如何制定DeFi 规则:金色财经 · 直播主办的金点Trend《以太坊之外的DeFi,香吗? 》15:00准时开播!本场嘉宾Opium Protocol 的创始人分享Andrey Belyakov “如何制定DeFi 规则”,请扫码移步收听![2020/9/1]

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

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

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

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

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

央行行长易纲 :将继续研究如何加强央行数字货币的风险管理:4月17日,财新举办主题为“金融科技与人民币可自由使用”的研讨会。中国人民银行行长易纲在会上表示,央行数字货币项目已取得较大进展,当前阶段在部分城市及部分场景进行内部封闭试点测试,同时表示“将继续研究如何加强央行数字货币的风险管理,包括了解你的客户(KYC)等。”

对于金融科技在此次疫情期间发挥的作用,易纲表示肯定,但也强调商业银行依然是主力;科技公司积极参与有助于提升金融服务水平;人民币国际化主要依靠市场驱动,平等竞争,中国会继续推进金融开放和改革。[2020/5/4]

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

constrequiredEth=(awaitmyContract

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

大咖零距离 | 顶尖交易员是如何1个月收益100倍的:4月30日19:00,金色盘面邀请实盘大V加勒比海的梦做客金色财经《大咖零距离》直播间,将分享《顶尖交易员是如何1个月收益100倍的》,敬请关注,欲进群观看直播扫描海报二维码报名即可。[2020/4/30]

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{}}

ExactInput和ExactOutput的区别

环球银行金融电信协会与七家中央证券存管机构签署一项协议备忘录,以研究区块链如何用于交易后流程:环球银行金融电信协会(SWIFT)与七家中央证券存管机构签署了一项协议备忘录,以研究区块链如何用于交易后流程,如代理投票等。这七家机构分别是美国纳斯达克 Nasdaq Market Technology、俄罗斯国家结算存管公司(National Settlement Depository)、瑞士SIX Securities Services,南非Strate,阿布扎比证券交易所,阿根廷的Caja de Valores和智利的Depores de Central Valores。[2018/1/16]

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

以准确的DAI购买

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

用精确的ETH购买

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

如何让比特币的尸体飘过:财新专栏作家王立仁今日发文,尽快让比特币的尸体飘过来的方法核心点就在于影响其交易过程和记账过程,从而破坏对比特币系统的信任。他还论述了7大攻击比特币的方法:花钱硬碰硬的算力攻击(Brute Attack)、巧取通讯环节(SmartAttack)、攻击记账系统、攻击代码、攻击法币与数字货币的通道、路由分割(RoutingSplitting)攻击和直接硬分叉。[2017/12/4]

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

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

水星链

UNI519暴跌中,稳定币表现如何?_ETH:togetherbnb下载电脑

货币市场受到了考验。加密货币的价格暴跌对稳定币也是一个很大的考验,稳定币正日益成为生态系统的一个重要部分。5月19日,一场由清算引起的闪电崩盘使比特币的价格在几个小时内跌至接近3万美元.

[0:15ms0-1:125ms