跳转到主要内容

Bitforex异步Python客户端

项目描述

bitforex-aio 1.0.1

公告: bitforex-aio已被新的库cryptoxlib-aio取代。 cryptoxlib-aio提供了与bitforex-aio完全相同的功能,同时提供了访问多个加密交易所和其他(主要是技术性)新功能。您可以使用bitforex-aio,但请注意,不会实现新的功能/错误修复。我们建议迁移到cryptoxlib-aio


bitforex-aio是一个Python库,提供对Bitforex加密交易所的访问。库实现了Bitforex的REST API以及WebSocket。

bitforex-aio设计为一个异步库,利用Python和异步库的现代功能(主要是异步WebSocketaiohttp)。

有关更改,请参阅变更日志

功能

  • 访问完整的Bitforex REST API(账户详情、市场数据、订单管理等)和WebSocket
  • 在一个或多个WebSocket中捆绑的通道并行处理
  • 透明的连接管理(自动心跳等)
  • 简洁的架构,为未来的扩展和定制奠定基础
  • 完全异步设计,旨在实现最佳性能

安装

pip install bitforex-aio

先决条件

由于库的依赖项和使用的Python功能,请确保您使用Python 3.63.7

在开始使用 bitforex-aio 之前,您需要从您的Bitforex账户下载您的Bitforex API密钥和SECRET密钥。

示例

REST API

client = BitforexClient(api_key, sec_key)

# REST api calls
print("REST API")

print("\nExchange info:")
await client.get_exchange_info()

print("\nOrder book:")
await client.get_order_book(pair = Pair('ETH', 'BTC'), depth = "1")

print("\nTicker:")
await client.get_ticker(pair = Pair('ETH', 'BTC'))

print("\nSingle fund:")
await client.get_single_fund(currency = "NOBS")

print("\nFunds:")
await client.get_funds()

print("\nTrades:")
await client.get_trades(pair = Pair('ETH', 'BTC'), size = "1")

print("\nCandelsticks:")
await client.get_candlesticks(pair = Pair('ETH', 'BTC'), interval = enums.CandelstickInterval.I_1W, size = "5")

print("\nCreate order:")
await client.create_order(Pair("ETH", "BTC"), side = enums.OrderSide.SELL, quantity = "1", price = "1")

print("\nCreate multiple orders:")
await client.create_multi_order(Pair("ETH", "BTC"),
                                orders = [("1", "1", enums.OrderSide.SELL), ("2", "1", enums.OrderSide.SELL)])

print("\nCancel order:")
await client.cancel_order(pair = Pair('ETH', 'BTC'), order_id = "10")

print("\nCancel multiple orders:")
await client.cancel_multi_order(pair = Pair('ETH', 'BTC'), order_ids = ["10", "20"])

print("\nCancel all orders:")
await client.cancel_all_orders(pair = Pair('ETH', 'BTC'))

print("\nGet order:")
await client.get_order(pair = Pair('ETH', 'BTC'), order_id = "1")

print("\nGet orders:")
await client.get_orders(pair = Pair('ETH', 'BTC'), order_ids = ["1", "2"])

print("\nFind orders:")
await client.find_order(pair = Pair('ETH', 'BTC'), state = enums.OrderState.PENDING)

WEBSOCKETS

client = BitforexClient(api_key, sec_key)

client.compose_subscriptions([
    OrderBookSubscription(pair = Pair('ETH', 'BTC'), depth = "0", callbacks = [order_book_update]),
    TradeSubscription(pair = Pair('ETH', 'BTC'), size = "20", callbacks = [trade_update]),
])

# Execute all websockets asynchronously
await client.start_subscriptions()

await client.close()

所有示例都可以在GitHub仓库中的 client-example/client.py 文件中找到。

支持

如果您喜欢这个库,并且您觉得您想要支持其进一步的开发、增强和错误修复,那么如果您

  • 提交错误报告、建议、拉取请求等,将非常有帮助,并将受到高度赞赏
  • 传播信息
  • 捐赠任意金额的小费
    • BTC: 15JUgVq3YFoPedEj5wgQgvkZRx5HQoKJC4
    • ETH: 0xf29304b6af5831030ba99aceb290a3a2129b993d
    • ADA: DdzFFzCqrhshyLV3wktXFvConETEr9mCfrMo9V3dYz4pz6yNq9PjJusfnn4kzWKQR91pWecEbKoHodPaJzgBHdV2AKeDSfR4sckrEk79
    • XRP: rhVWrjB9EGDeK4zuJ1x2KXSjjSpsDQSaU6 + 标签 599790141

联系

如果您觉得您想联系,那么请

  • 最好使用Github Issues,或者
  • 发送电子邮件到

所属机构

如果您对自动化交易机器人感兴趣,请查看我们的其他项目 creten

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪一个,请了解更多关于 安装包 的信息。

源代码发行版

bitforex-aio-1.0.2.tar.gz (8.5 kB 查看哈希值)

上传日期 源代码

构建发行版

bitforex_aio-1.0.2-py3-none-any.whl (10.2 kB 查看哈希值)

上传日期 Python 3

由以下组织支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面