使用CCXT在Binance上进行api交易

1. CCXT的介绍

github官网对于ccxt的介绍是:

A JavaScript / Python / PHP library for cryptocurrency trading and e-commerce with support for many bitcoin/ether/altcoin exchange markets and merchant APIs.

即一个封装了诸多数字货币交易平台的api的开源库。支持python、php、javascrit三种语言,github上可以下载源码。

ccxt结构明确,易于使用,所有api被封装成统一格式的接口,返回数据被封装成统一格式的字典,基本省去了api开发时间。

2. 使用CCXT在Binance下单

  1. 依赖环境
  2. Python 3.5
  3. Okex API V_1 AccessKey AccessSecret
  4. PyCharm
  5. 安装ccxt插件或是下载ccxt源码
  6. 电脑有VPN
1.png
  1. 常用API
import ccxt

# ccxt官方文档:https://github.com/ccxt/ccxt

# ccxt支持的交易所的id
# print(ccxt.exchanges)


if __name__ == '__main__':
    # =====创建币安交易所
    # 方法一
    binance = ccxt.binance()
    binance.apiKey = 'EwqLz2zfgL6Tx0uvYHPOyDdlfJKSqAUApU3vY51Kkt7XRD8poSwtDZTp4KTKCuKN'
    binance.secret = '6fMHzWYGTsOS0Yc9Xcj636DgInBAlJxAegHmsnTPVatpiqsvz8Kzox1wVp66dmso'

    # # 方法二
    # binance = ccxt.binance(
    #     {
    #         'apiKey': 'EwqLz2zfgL6Tx0uvYHPOyDdlfJKSqAUApU3vY51Kkt7XRD8poSwtDZTp4KTKCuKN',
    #         'secret': '6fMHzWYGTsOS0Yc9Xcj636DgInBAlJxAegHmsnTPVatpiqsvz8Kzox1wVp66dmso',
    #     }
    # )


    # =====获取账户资产
    balance = binance.fetch_balance()
    print(balance)
    exit()
    # 返回内容的数据结构:https://github.com/ccxt/ccxt/wiki/Manual#querying-account-balance
    print(balance['info'])  # 交易所原始返回内容
    print(balance['free'])  # 可以使用的资产数量
    print(balance['used'])  # 已经使用的资产数量,例如正在挂单交易的资产。
    print(balance['total'])  # 总资产数量

    print(balance['EOS'])  # EOS这个资产的数量
    print(balance['USDT'])  # USDT这个资产的数量


    # =====下单交易
    # 下单参数
    symbol = 'EOS/ETH'
    pirce = 0.03
    amount = 20

    # 限价单
    order_info = binance.create_limit_buy_order(symbol, amount, pirce)  # 买单
    order_info = binance.create_limit_sell_order(symbol, amount, pirce)  # 卖单

    # 市价单,市价单不需要输入价格
    order_info = binance.create_market_buy_order(symbol=symbol, amount=amount)  # 买单
    order_info = binance.create_market_sell_order(symbol=symbol, amount=amount)  # 卖单

    # 返回内容的数据结构:https://github.com/ccxt/ccxt/wiki/Manual#placing-orders
    print(order_info['id'])
    print(order_info['info'])


    # =====查询订单信息
    # # 根据订单号查询订单信息
    order_info = binance.fetch_order(id='20508061', symbol='EOS/ETH')
    # # 返回内容的数据结构:https://github.com/ccxt/ccxt/wiki/Manual#order-structure
    print(order_info)
    print(order_info['remaining'])
    print(order_info['status'])

    # 根据交易对查询订单信息
    order_info = binance.fetch_orders(symbol='EOS/ETH', limit=10)  # limit参数控制返回最近的几条
    for i in order_info:
        print(i['datetime'], i['status'])

    # 返回尚未成交的订单
    order_info = binance.fetch_open_orders(symbol='EOS/ETH', limit=10)  # limit参数控制返回最近的几条
    for i in order_info:
        print(i['datetime'], i['status'])


    # =====撤单
    order_info = binance.cancel_order(id='20508061', symbol='EOS/ETH')
    print(order_info)
    order_info = binance.fetch_order(id='20508061', symbol='EOS/ETH')
    print(order_info['status'])

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • # Python 资源大全中文版 我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列...
    小迈克阅读 8,175评论 1 3
  • 每个90后的童年里都有过一个神话英雄角色,他的名字叫孙悟空,叫齐天大圣,叫美猴王……儿时,不论是动画片还是暑假经典...
    拉片放映室阅读 4,813评论 0 0
  • 长大, 就是走路时候开始小心,小心地迈步,迈着迈着,看着下一步; 说话时候开始谨慎,说的时候不想,想的时候不说,说...
    止末阅读 1,837评论 2 2
  • 从家里出来,臭臭替佳琪拉起了拉链。 “琪,这样应该就能挡点风了。”臭臭并没有抬头,埋头在替佳琪把衣领立起来。但是佳...
    醉含丹梦生阅读 3,265评论 0 0
  • 缠枝寻月露,牵蔓暑风前。 乡野柴篱外,阡阡逸自闲。 注:平起,新韵(八寒)。
    春三月阅读 7,412评论 66 97

友情链接更多精彩内容