用基于 Python 的开发框架 Brownie 部署以太坊智能合约
在本文中,我们将使用Python部署智能合约。这篇文章可能是您走向智能合约和区块链开发的桥梁! 介绍 我希望可以在任何开发场景都尽量用Python。在区块链开发中,常用的是以太坊虚拟机智能合约语言Solidity,它具有许多不错的功能,并且仍然可以使用 Python 进行部署。刚开始使用Solidity时,我使用了Remix(https://remix.ethereum.org/),这是一个强大的Web IDE,可让您进行智能合约可视化。Remix很棒,我现在仍然使用它,但是在单个IDE之外可以实现很多其他功能。后来我开始学习Truffle(https://www.trufflesuite.com/)和HardHat(https://hardhat.org/guides/mainnet-forking.html),它们是用于部署智能合约的Node.js框架。 这些是到目前为止我所见过的主要框架,这些框架都不错,但是我更喜欢Python。所以当我发现Brownie 和web3.py:一个用于部署智能合约的Python框架和一个用于区块链开发的开源协议之后非常兴奋。我们将在本文中同时...
用基于 Python 的开发框架 Brownie 部署以太坊智能合约
在本文中,我们将使用Python部署智能合约。这篇文章可能是您走向智能合约和区块链开发的桥梁! 介绍 我希望可以在任何开发场景都尽量用Python。在区块链开发中,常用的是以太坊虚拟机智能合约语言Solidity,它具有许多不错的功能,并且仍然可以使用 Python 进行部署。刚开始使用Solidity时,我使用了Remix(https://remix.ethereum.org/),这是一个强大的Web IDE,可让您进行智能合约可视化。Remix很棒,我现在仍然使用它,但是在单个IDE之外可以实现很多其他功能。后来我开始学习Truffle(https://www.trufflesuite.com/)和HardHat(https://hardhat.org/guides/mainnet-forking.html),它们是用于部署智能合约的Node.js框架。 这些是到目前为止我所见过的主要框架,这些框架都不错,但是我更喜欢Python。所以当我发现Brownie 和web3.py:一个用于部署智能合约的Python框架和一个用于区块链开发的开源协议之后非常兴奋。我们将在本文中同时...
用 Python 开发 DeFi 去中心化借贷应用(下)
传统的金融科技世界充满了使用户能够制作复杂算法交易模型和系统的工具。而去中心化金融 (DeFi) 也同样为用户和开发人员提供了相同的工具,围绕底层金融协议和工具具有更高的透明度和灵活性,从而催生了 DeFi 量化交易和应用开发。DeFi 开发人员和 DeFi quants 甚至可以利用这些工具的衍生品,并将它们组合成新的服务,以建立在传统金融科技世界中没有的创新金融头寸。DeFi 开发人员的基本工具之一是能够以非托管方式借出和借入加密货币资产。阅读本文前请先查看:\ 用 Python 开发 DeFi 去中心化借贷应用(上) 用 Python 开发 DeFi 去中心化借贷应用(中) 获取可借资产价值 现在,当我们借款时,我们会被告知我们拥有的以 ETH 表示的资产数量。然而,也许我们想借用一个不同的代币,比如 DAI。如果我们要以 ETH 为抵押借入 DAI,我们首先要得到 ETH -> DAI 的兑换率。 Chainlink 是 DeFi 和智能合约生态系统中获取数据和执行外部计算的标准,也是 Aave 用来获取费率的标准!他们有一个价格 Oracle 部分,描述了如何通过他们的...
用 Python 开发 DeFi 去中心化借贷应用(下)
传统的金融科技世界充满了使用户能够制作复杂算法交易模型和系统的工具。而去中心化金融 (DeFi) 也同样为用户和开发人员提供了相同的工具,围绕底层金融协议和工具具有更高的透明度和灵活性,从而催生了 DeFi 量化交易和应用开发。DeFi 开发人员和 DeFi quants 甚至可以利用这些工具的衍生品,并将它们组合成新的服务,以建立在传统金融科技世界中没有的创新金融头寸。DeFi 开发人员的基本工具之一是能够以非托管方式借出和借入加密货币资产。阅读本文前请先查看:\ 用 Python 开发 DeFi 去中心化借贷应用(上) 用 Python 开发 DeFi 去中心化借贷应用(中) 获取可借资产价值 现在,当我们借款时,我们会被告知我们拥有的以 ETH 表示的资产数量。然而,也许我们想借用一个不同的代币,比如 DAI。如果我们要以 ETH 为抵押借入 DAI,我们首先要得到 ETH -> DAI 的兑换率。 Chainlink 是 DeFi 和智能合约生态系统中获取数据和执行外部计算的标准,也是 Aave 用来获取费率的标准!他们有一个价格 Oracle 部分,描述了如何通过他们的...
用 Python 开发 DeFi 去中心化借贷应用(中)
传统的金融科技世界充满了使用户能够制作复杂算法交易模型和系统的工具。而去中心化金融 (DeFi) 也同样为用户和开发人员提供了相同的工具,围绕底层金融协议和工具具有更高的透明度和灵活性,从而催生了 DeFi 量化交易和应用开发。DeFi 开发人员和 DeFi quants 甚至可以利用这些工具的衍生品,并将它们组合成新的服务,以建立在传统金融科技世界中没有的创新金融头寸。DeFi 开发人员的基本工具之一是能够以非托管方式借出和借入加密货币资产。阅读本文前请先查看: 《用 Python 开发 DeFi 去中心化借贷应用(上)》 存入抵押品 接下来,我们运行 aave_borrow.py 脚本,它做了 4 件事: •将抵押品存入 Aave 贷款池•获得了我们的抵押品和另一种资产之间的对话率•使用该抵押品借入不同的资产(贷款)•还清了贷款 我们看一下main函数的开头:def main(): account = get_account() erc20_address = config["networks"][network.show_active()]["weth_token"] if...
用 Python 开发 DeFi 去中心化借贷应用(中)
传统的金融科技世界充满了使用户能够制作复杂算法交易模型和系统的工具。而去中心化金融 (DeFi) 也同样为用户和开发人员提供了相同的工具,围绕底层金融协议和工具具有更高的透明度和灵活性,从而催生了 DeFi 量化交易和应用开发。DeFi 开发人员和 DeFi quants 甚至可以利用这些工具的衍生品,并将它们组合成新的服务,以建立在传统金融科技世界中没有的创新金融头寸。DeFi 开发人员的基本工具之一是能够以非托管方式借出和借入加密货币资产。阅读本文前请先查看: 《用 Python 开发 DeFi 去中心化借贷应用(上)》 存入抵押品 接下来,我们运行 aave_borrow.py 脚本,它做了 4 件事: •将抵押品存入 Aave 贷款池•获得了我们的抵押品和另一种资产之间的对话率•使用该抵押品借入不同的资产(贷款)•还清了贷款 我们看一下main函数的开头:def main(): account = get_account() erc20_address = config["networks"][network.show_active()]["weth_token"] if...
用 Python 开发 DeFi 去中心化应用(下)
在本教程中,我们将介绍如何使用 Python 开发 DeFi 项目。去中心化金融 (DeFi) 是区块链和智能合约世界最重要的进步之一,通常被称为“新金融科技”。 读取您的智能合约 现在我们已经部署了一个智能合约,我们可以从刚刚部署的合约中读取 ETH 的价格。我们将使用我们拥有的另一个脚本:brownie run scripts/price_feed_scripts/read_price_feed.py --network kovan 我们将得到如下输出:Brownie v1.12.2- Python development framework forEthereum ChainlinkProjectis the active project. Running'scripts/price_feed_scripts/read_price_feed.py::main'... Reading data from0x5A…. 122322000000 其中 122322000000 是 ETH 的当前美元价格!Solidity 不理解小数,我们知道 Chainlink Price Fe...
用 Python 开发 DeFi 去中心化应用(下)
在本教程中,我们将介绍如何使用 Python 开发 DeFi 项目。去中心化金融 (DeFi) 是区块链和智能合约世界最重要的进步之一,通常被称为“新金融科技”。 读取您的智能合约 现在我们已经部署了一个智能合约,我们可以从刚刚部署的合约中读取 ETH 的价格。我们将使用我们拥有的另一个脚本:brownie run scripts/price_feed_scripts/read_price_feed.py --network kovan 我们将得到如下输出:Brownie v1.12.2- Python development framework forEthereum ChainlinkProjectis the active project. Running'scripts/price_feed_scripts/read_price_feed.py::main'... Reading data from0x5A…. 122322000000 其中 122322000000 是 ETH 的当前美元价格!Solidity 不理解小数,我们知道 Chainlink Price Fe...
用 Python 开发 DeFi 去中心化应用(上)
在本教程中,我们将介绍如何使用 Python 开发 DeFi 项目。去中心化金融 (DeFi) 是区块链和智能合约世界最重要的进步之一,通常被称为“新金融科技”。目前,智能合约开发由 JavaScript 主导,部分原因可能是 JavaScript 是地球上最常用的语言,并且与 Node.js 配合构建全栈应用程序更容易。然而,量化分析师、股票交易员和对冲基金的金融科技世界并非如此。大多数金融科技公司出于各种原因使用 Python:更高效的开发体验强大的人工智能和机器学习捆绑的金融科技包综合分析工具生产环境中的可靠性如此多的数据科学家、学者和金融科技机构使用 Python 是有原因的。DeFi 领域的一些项目,如yearn.finance,分享了这种观点,并使用 Python 和 Solidity 构建了他们的整个 DeFi 平台。正是由于像 web3.py 和 Brownie 这样的库和框架,我们才能看到这些项目变得生动起来。Brownie 是一个类似于 Truffle 的框架(它们都非常“sweet”),它维护您的部署、脚本、测试,并允许您制作端到端的后台。 Web3.py和...
用 Python 开发 DeFi 去中心化应用(上)
在本教程中,我们将介绍如何使用 Python 开发 DeFi 项目。去中心化金融 (DeFi) 是区块链和智能合约世界最重要的进步之一,通常被称为“新金融科技”。目前,智能合约开发由 JavaScript 主导,部分原因可能是 JavaScript 是地球上最常用的语言,并且与 Node.js 配合构建全栈应用程序更容易。然而,量化分析师、股票交易员和对冲基金的金融科技世界并非如此。大多数金融科技公司出于各种原因使用 Python:更高效的开发体验强大的人工智能和机器学习捆绑的金融科技包综合分析工具生产环境中的可靠性如此多的数据科学家、学者和金融科技机构使用 Python 是有原因的。DeFi 领域的一些项目,如yearn.finance,分享了这种观点,并使用 Python 和 Solidity 构建了他们的整个 DeFi 平台。正是由于像 web3.py 和 Brownie 这样的库和框架,我们才能看到这些项目变得生动起来。Brownie 是一个类似于 Truffle 的框架(它们都非常“sweet”),它维护您的部署、脚本、测试,并允许您制作端到端的后台。 Web3.py和...