一些用于 Python 的加密货币库2025年1月12日 | 阅读 8 分钟 众所周知,毫无疑问,加密货币在过去几年中的受欢迎程度急剧上升,而试图理解区块链的工作原理和比特币可能会令人烦恼和困惑。有区块链、合约、账本,甚至比“大数据”革命更多的术语。 如果我们中的任何人想涉足加密货币世界并且有一些开发经验,那么本教程将是最佳选择,因为我们将介绍一些可用于加密货币的公开可用的库。这是快速启动加密货币体验、参与社区并了解一些技术方面内容的简单方法。 在接下来的教程中,我们将探索一些优秀的 Python 库,它们使我们能够在加密货币世界中执行各种活动。我们将能够获取不同币种的实时价格报价、连接到各种交易所、进行交易,甚至构建我们自己的实时算法交易机器人。让我们了解 Python 编程语言提供的一些最好的加密货币库。 我们将介绍以下 Python 库
我们将简要讨论上述库。 了解 CryptoCompare 库CryptoCompare 是领先的实时加密货币价格报价和信息网站之一。该网站自 2015 年以来一直存在,为用户提供最新的加密货币新闻、详细的币种信息和市场统计数据。CryptoCompare 还评论各种加密货币交易所、钱包和服务,以向买家提供最新的可能信息。 CryptoCompare 还提供大量数据服务和功能齐全的 API。这就是 cryptocompare 库的用武之地。这个 Python 库为 CryptoCompare API 提供了一个方便的包装器。 我们可以使用 pip 安装程序安装 cryptocurrency 库,如下所示 语法 安装完成后,让我们考虑一下该库的以下用法,以获取比特币相对于美元的当前价格 示例 输出 {'BTC': {'USD': 48146.45}} 说明 在上面的代码片段中,我们导入了所需的模块。然后,我们使用了 get_price() 函数来返回比特币相对于美元的当前价格。最后,我们打印了价格供用户查看。 上面的示例仅触及了 CryptoCompare API 功能的表面。我们还可以向交易所提交订单、查看历史价格并呈现市场信息。 您可以访问 CryptoCompare 的官方网站以获取更多实时统计数据和信息。 链接如下 https://www.cryptocompare.com/ 了解 Cryptofeed 库Cryptofeed 库比 cryptocompare 这样的简单 API 包装器更复杂。Cryptofeed 允许程序员直接将市场数据流式传输到应用程序中。我们可以设置自定义函数来处理每个更新,将数据存储在一个支持的后端中,或利用这些数据来构建实时交易应用程序。 该库的复杂性很高,可能需要一些时间才能理解,但它非常强大。为了开始,我们可以使用 pip 安装程序安装 cryptofeed 库,如下所示 语法 存储库中提供了各种实现 Cryptofeed 的示例;但是,我们将看一个获取国家最佳买卖报价 (NBBO) 的简化版本示例 示例 说明 在上面的代码片段中,我们从库中导入了所需的模块。然后,我们定义了一个名为 nbboUpdate() 的函数,其中包含一些参数,如 symbol、bid、bid_size、ask、ask_size、bid_feed 和 ask_feed,并将它们的值一起打印出来。然后,我们定义了 main() 函数,其中我们将变量分配给 FeedHandler 方法。然后,我们使用 add_nbbo() 函数指定交易所和交易对。然后,我们使用 run() 函数执行操作。最后,我们调用了 main() 函数。 如果我们执行上面的程序,处理程序将流式传输 Coinbase 交易所提供的当前 NBBO 信息。输出将打印到控制台,以便能够查看正在发生的情况。交易量很大,所以要准备好大量信息。此代码片段将以循环方式运行,并使用最新数据进行更新,直到我们退出。 Cryptofeed 库是构建高质量加密货币交易应用程序的绝佳资源。 您可以查看详细文档以获取更多有用的示例和更新的交易所信息。 >https://github.com/bmoscon/cryptofeed 了解 Freqtrade 库 这并不特指一个 Python 库;然而,它是一个优秀的 Python 交易应用程序示例。该应用程序完全用 Python 编程语言编写。它使我们能够设置一个自定义交易机器人,包含大量的交易策略,并响应各种命令。Freqtrade 支持多个交易所,并提供与 Telegram 的简单集成。 Freqtrade 的另一个惊人之处在于,交易策略也用 Python 编写。我们不必处理另一种不熟悉的语言或下载大的配置文件来设置简单的策略。 为了开始使用 Freqtrade,请使用以下链接访问官方文档的安装部分 https://www.freqtrade.io/en/latest/installation/ 我们还可以借助 Docker 设置一个正在运行的交易系统。 了解 CCXT 库 CCXT 被认为是一个真正独立的交易库。该库拥有大量功能和一个非常支持性的社区。该库以 JavaScript、PHP 和 Python 的简单易用的模块形式提供。CCXT 类似于 Cryptofeed;但是,它应该更容易上手。我们不必满足于运行循环和持续的数据流。我们可以简单地调用 CCXT 来获取订单、交易所信息等等。 我们可以使用 pip 安装程序安装 CCXT 模块,如下所示 语法 安装完成后,让我们考虑下面的示例,演示从 Kraken 交易所获取最新交易数据的操作。 示例 输出 date: 2021-12-16T10:00:43.897Z | symbol: BTC/USD | price: 48936.7 | amount: 0.00096371 | cost: 47.160787157 | side: buy | type: limit date: 2021-12-16T10:00:47.152Z | symbol: BTC/USD | price: 48936.5 | amount: 0.03011824 | cost: 1473.88125176 | side: buy | type: limit date: 2021-12-16T10:01:06.050Z | symbol: BTC/USD | price: 48963.6 | amount: 0.00012934 | cost: 6.332952024 | side: buy | type: market date: 2021-12-16T10:01:11.162Z | symbol: BTC/USD | price: 48961.1 | amount: 0.02751697 | cost: 1347.261119867 | side: buy | type: market date: 2021-12-16T10:01:24.230Z | symbol: BTC/USD | price: 48971.3 | amount: 0.02043248 | cost: 1000.605107824 | side: sell | type: limit date: 2021-12-16T10:01:25.279Z | symbol: BTC/USD | price: 48971.3 | amount: 0.02043248 | cost: 1000.605107824 | side: sell | type: limit date: 2021-12-16T10:01:26.483Z | symbol: BTC/USD | price: 48971.3 | amount: 0.00634731 | cost: 310.836022203 | side: sell | type: limit date: 2021-12-16T10:01:27.653Z | symbol: BTC/USD | price: 48971.4 | amount: 0.00160946 | cost: 78.817509444 | side: buy | type: limit date: 2021-12-16T10:01:28.176Z | symbol: BTC/USD | price: 48971.4 | amount: 0.00013384 | cost: 6.554332176 | side: buy | type: market date: 2021-12-16T10:01:28.177Z | symbol: BTC/USD | price: 48977.2 | amount: 0.00204177 | cost: 100.000177644 | side: buy | type: market date: 2021-12-16T10:01:28.178Z | symbol: BTC/USD | price: 48978.0 | amount: 0.00082439 | cost: 40.37697342 | side: buy | type: market date: 2021-12-16T10:01:28.434Z | symbol: BTC/USD | price: 48978.4 | amount: 0.0204306 | cost: 1000.65809904 | side: sell | type: limit date: 2021-12-16T10:01:29.471Z | symbol: BTC/USD | price: 48978.4 | amount: 0.020432 | cost: 1000.7266688 | side: sell | type: limit date: 2021-12-16T10:01:30.524Z | symbol: BTC/USD | price: 48978.4 | amount: 0.02043201 | cost: 1000.727158584 | side: sell | type: limit date: 2021-12-16T10:01:31.592Z | symbol: BTC/USD | price: 48978.5 | amount: 0.020432 | cost: 1000.728712 | side: sell | type: limit date: 2021-12-16T10:01:31.788Z | symbol: BTC/USD | price: 48978.6 | amount: 0.003 | cost: 146.9358 | side: buy | type: market date: 2021-12-16T10:01:32.644Z | symbol: BTC/USD | price: 48978.5 | amount: 0.020432 | cost: 1000.728712 | side: sell | type: limit date: 2021-12-16T10:01:33.157Z | symbol: BTC/USD | price: 48978.6 | amount: 0.013 | cost: 636.7218 | side: buy | type: market date: 2021-12-16T10:01:33.752Z | symbol: BTC/USD | price: 48978.5 | amount: 0.00640702 | cost: 313.80622907 | side: sell | type: limit date: 2021-12-16T10:01:36.476Z | symbol: BTC/USD | price: 48984.2 | amount: 0.02042724 | cost: 1000.612009608 | side: sell | type: limit date: 2021-12-16T10:01:36.564Z | symbol: BTC/USD | price: 48985.8 | amount: 0.004 | cost: 195.9432 | side: buy | type: market . . . . date: 2021-12-16T11:03:23.696Z | symbol: BTC/USD | price: 49169.3 | amount: 0.0002 | cost: 9.83386 | side: buy | type: market date: 2021-12-16T11:03:23.697Z | symbol: BTC/USD | price: 49169.4 | amount: 0.0002 | cost: 9.83388 | side: buy | type: market date: 2021-12-16T11:03:23.698Z | symbol: BTC/USD | price: 49169.5 | amount: 0.04488859 | cost: 2207.149526005 | side: buy | type: market date: 2021-12-16T11:03:24.363Z | symbol: BTC/USD | price: 49169.4 | amount: 0.00057311 | cost: 28.179474834 | side: sell | type: limit date: 2021-12-16T11:03:24.364Z | symbol: BTC/USD | price: 49169.2 | amount: 0.0010087 | cost: 49.59697204 | side: sell | type: limit date: 2021-12-16T11:03:33.278Z | symbol: BTC/USD | price: 49169.3 | amount: 0.0002 | cost: 9.83386 | side: buy | type: market date: 2021-12-16T11:03:33.280Z | symbol: BTC/USD | price: 49169.4 | amount: 0.0001 | cost: 4.91694 | side: buy | type: market date: 2021-12-16T11:03:33.281Z | symbol: BTC/USD | price: 49169.4 | amount: 0.0001 | cost: 4.91694 | side: buy | type: market date: 2021-12-16T11:03:33.282Z | symbol: BTC/USD | price: 49169.4 | amount: 0.002006 | cost: 98.6338164 | side: buy | type: market 说明 在上面的代码片段中,我们导入了所需的库,并将一个变量分配给了 kraken() 函数。然后,我们使用 fetch_trade() 提取各种价格、数量、时间戳等详细信息,并通过 for 循环和 print 函数将它们全部打印出来。 一旦我们执行了上面的代码,我们应该会看到一长串交易执行,其中包含有关价格、数量、时间戳等的详细信息。数据作为包含所有交易信息的列表获取,而不是数据流。CCXT 库还提供异步并发模式支持。有兴趣的人可以使用以下链接从官方文档中了解更多关于实现的信息 https://github.com/ccxt/ccxt/wiki/Manual#synchronous-vs-asynchronous-calls CCXT 提供了一个灵活的实用程序,具有跨不同语言、交易所和平台的兼容性。这个经过深思熟虑、支持良好的平台允许程序员构建实用的交易应用程序。 下一个主题使用 Python 构建区块链 |
我们请求您订阅我们的新闻通讯以获取最新更新。