• 统一的数字货币交易所接口


    本文介绍统一的数字货币交易所接口。

    一、介绍

    btcquant是一个统一的数字货币交易所接口库,目前支持binance,huobi,okex,bitfinex,zb,bittrex,gateio等国内外主流的交易所。

    二、安装

    btcquant目前支持python3。

    使用pip命令安装如下。

    pip install btcquant

    安装返回如下

    E:itcoinquant8>pip install btcquant
    Collecting btcquant
      Downloading https://files.pythonhosted.org/packages/3f/ba/61cd9a3bf010bd828138b101af97e04db98c84bf13fffa626b333338b1de/btcquant-1.0.0-py2.py3-none-any.whl
    Requirement already satisfied: numpy in d:python36libsite-packages (from btcquant) (1.14.0)
    Installing collected packages: btcquant
    Successfully installed btcquant-1.0.0
    
    E:itcoinquant8>

    三、使用

    1、引入库

    from btcquant import EXCHANGES

    2、创建交易所对象

    交易所目前支持 有的

    • binance
    • huobi
    • okex
    • bitfinex
    • zb
    • bittrex
    • gateio

    注意:有的交易所需要自学上网才能使用,当前有zb、bittrex可以直接使用。

    创建交易所对象如下

    client = EXCHANGES("zb")

    3、获取币币交易对

    markets = client.markets()

    返回部分示例如下(所有的都列出来就太长了,精简一下)

    [
        {
            "symbol":"btc_usdt",
            "quote":"USDT"
        },
        {
            "symbol":"ltc_usdt",
            "quote":"USDT"
        },
        {
            "symbol":"eth_usdt",
            "quote":"USDT"
        },
        {
            "symbol":"etc_usdt",
            "quote":"USDT"
        },
        {
            "symbol":"eth_btc",
            "quote":"BTC"
        }
    ]

     4、获取行情

    传入交易对,返回当前币对的买一、卖一及最新成交价

    交易对格式统一为 交易币种在前,计价币种在后,中间用下划线格开,字母全部大写

    symbol = "BTC_USDT"
    ticker = client.ticker(symbol)

    返回数据如下

    {
        "bid":3695.4996,
        "ask":3695.9053,
        "last":3695.4996
    }

    5、获取深度

    传入交易对,返回交易对的深度

    depth = client.depth(symbol)

    返回如下(数据有精简):

    {
        "asks":[
            [
                3697.4242,
                0.547
            ],
            [
                3697.388,
                0.001
            ],
            [
                3697.1243,
                0.27048049
            ],
            [
                3696.6658,
                0.03167168
            ]
        ],
        "bids":[
            [
                3695.4997,
                0.03311724
            ],
            [
                3695.3995,
                0.00137
            ],
            [
                3695.3993,
                0.081
            ],
            [
                3695.2113,
                0.081
            ]
        ]
    }

    6、获取K线

    传入交易对及时间周期,返回K线数据并打印

    时间周期支持如下:

    • 1min
    • 3min
    • 5min
    • 10min
    • 15min
    • 30min
    • 1hour
    • 2hour
    • 3hour
    • 4hour
    • 6hour
    • 8hour
    • 12hour
    • 1day
    • 3day
    • 1week
    • 2week
    • 1month

    注:如果交易所本身不支持该周期,则无法获取该周期的数据。基本上所有的交易所都支持1hour和1day。

    调用方式如下

    kline = client.kline(symbol, interval = '1hour')

    返回数据如下

    (
        array([1.5501060e+09, 1.5501096e+09, 1.5501132e+09, 1.5501168e+09]), 
        array([3619.92, 3617.76, 3613.65, 3612.32]), 
        array([3623.66, 3622.39, 3614.22, 3620.89]), 
        array([3614.64, 3607.98, 3601.26, 3612.32]), 
        array([3617.91, 3614.91, 3612.33, 3620.59]), 
        array([167.2525, 278.5334, 295.7641, 199.5341])
    )

    上述数据依次数stamp, open, high, low, close, volume的数据。

    同时支持格式化输出打印,默认返回120条记录

    2019-02-13 11:00:00 开:3637.3929 高:3643.9904 低:3633.1014 收:3641.9604 量: 888.6055
    2019-02-13 12:00:00 开:3641.9711 高:3644.9274 低:3631.9939 收:3639.2368 量:1014.8132
    - - - - - -                                                                 
    2019-02-18 08:00:00 开:3667.8997 高:3709.2059 低:3657.2737 收:3701.0000 量:2675.3753
    2019-02-18 09:00:00 开:3701.0000 高:3782.4734 低:3668.9484 收:3693.3995 量:4431.8632
    2019-02-18 10:00:00 开:3693.1074 高:3695.1995 低:3689.0791 收:3695.1995 量: 121.3112

    四、下载

    下载本文中各接口的使用源码,请搜索关注公众号 比特量化,在聊天窗口中回复 1297

    下载btcquant该python库的源码,请搜索关注公众号 比特量化,在聊天窗口中回复 1298

  • 相关阅读:
    scp 指定端口(转)
    openshift 入门 部署 openshift-origin-server-v3.7.0
    kubernetes 网络模型
    故障排除--kubernetes 运维操作步骤 -- kubedns -- busybox -- nslookup 问题
    Service 服务发现的两种方式-通过案例来理解+服务外部访问类型+selector-label
    nmap 扫描端口 + iftop 实时监控流量
    Intellij IDEA 2016.3.4 注册激活--转
    laravel服务提供者类说明
    使用PHP实现命令模式(转)
    异步回收fork出的子进程(僵尸进程)
  • 原文地址:https://www.cnblogs.com/bitquant/p/btcquant.html
Copyright © 2020-2023  润新知