dapp智能合约借贷理财开发规则丨dapp智能合约借贷理财系统开发技术详细及案例

简介:  数字经济是以数据资源为关键要素,以数字科技为支撑的经济形态。数字产业化和产业数字化是数字经济中的重点内容,数字产业化主要是推动数字科技形成规模化产业,产业数字化主要是利用数字科技支撑和推动传统产业转型升级。在这个过程中可以基于区块链等数字科技推动信息技术服务加速数字产业化,依托元宇宙的新场景拉动信息消费促进产业数字化

  数字经济是以数据资源为关键要素,以数字科技为支撑的经济形态。数字产业化和产业数字化是数字经济中的重点内容,数字产业化主要是推动数字科技形成规模化产业,产业数字化主要是利用数字科技支撑和推动传统产业转型升级。在这个过程中可以基于区块链等数字科技推动信息技术服务加速数字产业化,依托元宇宙的新场景拉动信息消费促进产业数字化。

  面向对象的风格,Token类,实例化对象后可以调用其中的成员方法,以下是主要的几个方法:

  1.price()

  def price(self,amount=int(1e18),swap_token_address=ETH_ADDRESS):

  swap_token_address=Web3.toChecksumAddress(swap_token_address)

  return self.router.functions.getAmountsOut(amount,[self.address,swap_token_address]).call()[-1]

  传入的参数分别是想要交易的数量与想要获得的代币地址(默认是eth地址)。

  可以理解为返回指定数量的代币价值。

  2.received_amount_by_swap()

  def received_amount_by_swap(self,input_token_amount=int(1e18),input_token_address=ETH_ADDRESS):

  input_token_address=Web3.toChecksumAddress(input_token_address)

  return self.router.functions.getAmountsOut(input_token_amount,[input_token_address,self.address]).call()[-1]

  可以理解为用指定数量的其他代币换取该代币,返回能换得该代币的数量。

  3.buy()

  def buy(self,consumed_token_amount,consumed_token_address=ETH_ADDRESS,slippage=0.01,timeout=900,speed=1):

  gas_price=int(self.web3.eth.gasPrice*speed)

  consumed_token_address=Web3.toChecksumAddress(consumed_token_address)

  received_amount=self.received_amount_by_swap(consumed_token_amount,consumed_token_address)

  min_out=int(received_amount*(1-slippage))

  if consumed_token_address==self.ETH_ADDRESS:

  func=self.router.functions.swapExactETHForTokens(min_out,[consumed_token_address,self.address],

  self.wallet_address,int(time.time()+timeout))

  params=self.create_transaction_params(value=consumed_token_amount,gas_price=gas_price)

  else:

  if not self.is_approved(consumed_token_address,consumed_token_amount):

  self.approve(consumed_token_address,gas_price=gas_price,timeout=timeout)

  func=self.router.functions.swapExactTokensForTokens(consumed_token_amount,min_out,

  [consumed_token_address,self.address],

  self.wallet_address,int(time.time()+timeout))

  params=self.create_transaction_params(gas_price=gas_price)

  return self.send_transaction(func,params)

  一共有5个参数:

  consumed_token_address:设置所支付的代币的erc20合约地址。

  consumed_token_amount:设置所支付的代币数量。

  slippage:设置所能容忍的滑点,默认为百分之一。

  timeout:设置该笔交易的超时时间。

  speed:设置该笔交易的区块确认速度,通过平均的gas_price乘以speed设置该笔交易的gas_price,所以speed的值越大,gas_price也越大,使得该笔交易的确认速度也越快。

相关文章
|
18天前
|
人工智能 区块链
dapp质押代币分红模式系统开发|指南需求|技术原理
Web3.0提出以来,就是一个包罗万象的术语,用于任何与下一代互联网相关的事情,即“去中心化的数字基础设施”。
|
18天前
|
供应链 安全 区块链
去中心化钱包代币质押项目系统开发|技术方案
对于区块链技术,普遍的认知都是它拥有极高的安全性。
|
18天前
|
存储 区块链 数据库
DAPP质押代币模式系统开发技术方案
相比之下,集中式计算则是将大部分计算功能从本地或者远程进行集中计算
|
存储 机器学习/深度学习 人工智能
关于NFT质押借贷平台开发系统DApp搭建技术
  数据智能指的是以数据作为生产资料,通过数据处理、机器学习、人机交互等技术,从大量数据中提炼、发掘关键信息,从而为人们的决策提供数据智能支持,减少或消除不确定性。
关于NFT质押借贷平台开发系统DApp搭建技术
|
JavaScript 前端开发 测试技术
区块链泰山众筹互助商城dapp系统开发合约定制(代币分红模式)技术分析
区块链泰山众筹互助商城dapp系统开发合约定制(代币分红模式)技术分析
|
区块链
defi拆分理财dapp系统开发|双币质押理财dapp平台开发逻辑|智能合约定制方案
defi拆分理财dapp系统开发|双币质押理财dapp平台开发逻辑|智能合约定制方案
|
存储 区块链 数据安全/隐私保护
BSC币安链流动性质押分红dapp系统开发智能合约定制案例详情
BSC币安链流动性质押分红dapp系统开发智能合约定制案例详情
|
JavaScript 前端开发 区块链
NFT质押借贷理财dapp系统开发|智能合约挖矿系统开发详情
NFT质押借贷理财dapp系统开发|智能合约挖矿系统开发详情
|
安全 区块链
NFT代币质押分红dapp系统开发案例功能定制分析
NFT代币质押分红dapp系统开发案例功能定制分析
|
存储 区块链
NFT盲盒质押借贷理财dapp系统开发智能合约部署详情
NFT盲盒质押借贷理财dapp系统开发智能合约部署详情