当前位置: 首页 > article >正文

1.5 Binance_interface API 币本位合约行情

Binance_interface API 币本位合约行情

  • Github地址
  • PyTed量化交易研究院

1. API 币本位合约行情接口总览

方法解释Path
get_ping测试服务器连通性 PING/dapi/v1/ping
get_time获取服务器时间/dapi/v1/time
get_exchangeInfo获取交易规则和交易对/dapi/v1/exchangeInfo
get_depth深度信息/dapi/v1/depth
get_trades近期成交/dapi/v1/trades
get_historicalTrades查询历史成交 (MARKET_DATA)/dapi/v1/historicalTrades
get_aggTrades近期成交(归集)/dapi/v1/aggTrades
get_premiumIndex最新现货指数价格和Mark Price/dapi/v1/premiumIndex
get_fundingRate查询永续合约资金费率历史/dapi/v1/fundingRate
get_fundingInfo查询资金费率信息/dapi/v1/fundingInfo
get_klinesK线数据/dapi/v1/klines
get_continuousKlines连续合约K线数据/dapi/v1/continuousKlines
get_indexPriceKlines价格指数K线数据/dapi/v1/indexPriceKlines
get_markPriceKlines标记价格K线数据/dapi/v1/markPriceKlines
get_premiumIndexKlines溢价指数K线数据/dapi/v1/premiumIndexKlines
get_ticker_24hr24hr价格变动情况/dapi/v1/ticker/24hr
get_ticker_price最新价格/dapi/v1/ticker/price
get_ticker_bookTicker当前最优挂单/dapi/v1/ticker/bookTicker
get_constituents查询指数价格成分/dapi/v1/constituents
get_openInterest获取未平仓合约数/dapi/v1/openInterest
get_delivery_price季度合约历史结算价/futures/data/delivery-price
get_openInterestHist合约持仓量/futures/data/openInterestHist
get_topLongShortAccountRatio大户账户数多空比/futures/data/topLongShortAccountRatio
get_topLongShortPositionRatio大户持仓量多空比/futures/data/topLongShortPositionRatio
get_globalLongShortAccountRatio多空持仓人数比/futures/data/globalLongShortAccountRatio
get_takerBuySellVol合约主动买卖量/futures/data/takerBuySellVol
get_basis基差/futures/data/basis

2. 模型实例化

import datetime
from binance_interface.api import CM
from binance_interface.app.utils import eprint
# 转发:需搭建转发服务器,可参考:https://github.com/pyted/binance_resender
proxy_host = None
cm = CM(
    proxy_host=proxy_host
)
market = cm.market

3. U本位合约实时行情

3.1 当前最优挂单 get_ticker_bookTicker

# 现货全部产品
bookTicker_result = market.get_ticker_bookTicker()
eprint(bookTicker_result, data_length=5)

输出:

>>> {'code': 200,
>>>  'data': [{'symbol': 'BTCUSD_PERP',
>>>            'pair': 'BTCUSD',
>>>            'bidPrice': '40148.0',
>>>            'bidQty': '620',
>>>            'askPrice': '40148.1',
>>>            '...': '......'},
>>>           {'symbol': 'ETHUSD_PERP',
>>>            'pair': 'ETHUSD',
>>>            'bidPrice': '2221.81',
>>>            'bidQty': '21727',
>>>            'askPrice': '2221.82',
>>>            '...': '......'},
>>>           {'symbol': 'LINKUSD_PERP',
>>>            'pair': 'LINKUSD',
>>>            'bidPrice': '13.817',
>>>            'bidQty': '35',
>>>            'askPrice': '13.819',
>>>            '...': '......'},
>>>           {'symbol': 'BNBUSD_PERP',
>>>            'pair': 'BNBUSD',
>>>            'bidPrice': '293.900',
>>>            'bidQty': '18',
>>>            'askPrice': '293.910',
>>>            '...': '......'},
>>>           {'symbol': 'TRXUSD_PERP',
>>>            'pair': 'TRXUSD',
>>>            'bidPrice': '0.11355',
>>>            'bidQty': '773',
>>>            'askPrice': '0.11356',
>>>            '...': '......'},
>>>           '......'],
>>>  'msg': ''}
# 现货单个交易对
bookTicker_result = market.get_ticker_bookTicker(symbol='BTCUSD_PERP')
eprint(bookTicker_result)

输出:

>>> {'code': 200,
>>>  'data': [{'symbol': 'BTCUSD_PERP',
>>>            'pair': 'BTCUSD',
>>>            'bidPrice': '40148.0',
>>>            'bidQty': '624',
>>>            'askPrice': '40148.1',
>>>            '...': '......'}],
>>>  'msg': ''}

3.2 最新价格 get_ticker_price

# 现货全部产品
price_result = market.get_ticker_price()
eprint(price_result, data_length=5)

输出:

>>> {'code': 200,
>>>  'data': [{'symbol': 'ETHUSD_240329', 'ps': 'ETHUSD', 'price': '2258.71', 'time': 1706245526966},
>>>           {'symbol': 'BCHUSD_PERP', 'ps': 'BCHUSD', 'price': '235.76', 'time': 1706245508581},
>>>           {'symbol': 'GMTUSD_PERP', 'ps': 'GMTUSD', 'price': '0.25760', 'time': 1706245403885},
>>>           {'symbol': 'LTCUSD_240329', 'ps': 'LTCUSD', 'price': '67.13', 'time': 1706244859254},
>>>           {'symbol': 'RUNEUSD_PERP', 'ps': 'RUNEUSD', 'price': '4.1050', 'time': 1706245387936},
>>>           '......'],
>>>  'msg': ''}
# 现货单个产品
price_result = market.get_ticker_price(symbol='BTCUSD_PERP')
eprint(price_result)

输出:

>>> {'code': 200, 'data': [{'symbol': 'BTCUSD_PERP', 'ps': 'BTCUSD', 'price': '40148.1', 'time': 1706245538962}], 'msg': ''}

3.3 24hr价格变动情况 get_ticker_24hr

# 现货全部产品
hr24_result = market.get_ticker_24hr()
eprint(hr24_result, data_length=5)

输出:

>>> {'code': 200,
>>>  'data': [{'symbol': 'UNIUSD_PERP',
>>>            'pair': 'UNIUSD',
>>>            'priceChange': '-0.002',
>>>            'priceChangePercent': '-0.035',
>>>            'weightedAvgPrice': '5.75000879',
>>>            '...': '......'},
>>>           {'symbol': 'THETAUSD_PERP',
>>>            'pair': 'THETAUSD',
>>>            'priceChange': '-0.009',
>>>            'priceChangePercent': '-0.939',
>>>            'weightedAvgPrice': '0.94889503',
>>>            '...': '......'},
>>>           {'symbol': 'SOLUSD_PERP',
>>>            'pair': 'SOLUSD',
>>>            'priceChange': '0.582',
>>>            'priceChangePercent': '0.668',
>>>            'weightedAvgPrice': '87.18539016',
>>>            '...': '......'},
>>>           {'symbol': 'AAVEUSD_PERP',
>>>            'pair': 'AAVEUSD',
>>>            'priceChange': '0.470',
>>>            'priceChangePercent': '0.533',
>>>            'weightedAvgPrice': '88.24177045',
>>>            '...': '......'},
>>>           {'symbol': 'GMTUSD_PERP',
>>>            'pair': 'GMTUSD',
>>>            'priceChange': '0.00240',
>>>            'priceChangePercent': '0.940',
>>>            'weightedAvgPrice': '0.25543639',
>>>            '...': '......'},
>>>           '......'],
>>>  'msg': ''}
# 现货单个产品
hr24_result = market.get_ticker_24hr(symbol='BTCUSD_PERP')
eprint(hr24_result)

输出:

>>> {'code': 200,
>>>  'data': [{'symbol': 'BTCUSD_PERP',
>>>            'pair': 'BTCUSD',
>>>            'priceChange': '279.5',
>>>            'priceChangePercent': '0.701',
>>>            'weightedAvgPrice': '39927.54529431',
>>>            '...': '......'}],
>>>  'msg': ''}

4. 历史K线 get_klines

# 测试时间
startDatetime = '2023-01-01 00:00:00'
endDatetime = '2023-01-01 00:05:00'
startTime = int(datetime.datetime.strptime(startDatetime, '%Y-%m-%d %H:%M:%S').timestamp() * 1000)
endTime = int(datetime.datetime.strptime(endDatetime, '%Y-%m-%d %H:%M:%S').timestamp() * 1000)

print(startDatetime, startTime)
print(endDatetime, endTime)

输出:

>>> 2023-01-01 00:00:00 1672502400000
>>> 2023-01-01 00:05:00 1672502700000
# 仅给定终止时间
kline_result = market.get_klines(symbol='BTCUSD_PERP', interval='1m', endTime=endTime, limit=2)
eprint(kline_result)

输出:

>>> {'code': 200,
>>>  'data': [[1672502640000, '16580.3', '16580.3', '16580.3', '16580.3', '......'],
>>>           [1672502700000, '16580.3', '16580.3', '16580.3', '16580.3', '......']],
>>>  'msg': ''}
# 仅给定起始和终止时间
kline_result = market.get_klines(
    symbol='BTCUSD_PERP',
    interval='1m',
    startTime=startTime,  # 包括startTime
    endTime=endTime,  # 包括endTime
)
eprint(kline_result)

输出:

>>> {'code': 200,
>>>  'data': [[1672502400000, '16578.1', '16580.3', '16578.0', '16580.3', '......'],
>>>           [1672502460000, '16580.3', '16580.3', '16580.3', '16580.3', '......'],
>>>           [1672502520000, '16580.4', '16580.4', '16580.4', '16580.4', '......'],
>>>           [1672502580000, '16580.3', '16580.3', '16580.3', '16580.3', '......'],
>>>           [1672502640000, '16580.3', '16580.3', '16580.3', '16580.3', '......'],
>>>           [1672502700000, '16580.3', '16580.3', '16580.3', '16580.3', '......']],
>>>  'msg': ''}

5. 深度信息 get_depth

depth_result = market.get_depth(symbol='BTCUSD_PERP', limit=5)
eprint(depth_result)

输出:

>>> {'code': 200,
>>>  'data': {'lastUpdateId': 844374293002,
>>>           'E': 1706245546602,
>>>           'T': 1706245546590,
>>>           'symbol': 'BTCUSD_PERP',
>>>           'pair': 'BTCUSD',
>>>           'bids': [['40148.0', '655'], ['40147.9', '1'], ['40147.8', '228'], ['40146.8', '1'], ['40146.7', '1']],
>>>           'asks': [['40148.1', '14131'], ['40148.2', '17'], ['40148.3', '4'], ['40148.5', '234'], ['40148.6', '54']]},
>>>  'msg': ''}

6. 成交查询

6.1 近期成交列表 get_trades

trades_result = market.get_trades(symbol='BTCUSD_PERP', limit=5)
eprint(trades_result)

输出:

>>> {'code': 200,
>>>  'data': [{'id': 720241178,
>>>            'price': '40148.0',
>>>            'qty': '26',
>>>            'baseQty': '0.06476039',
>>>            'time': 1706245546325,
>>>            '...': '......'},
>>>           {'id': 720241179,
>>>            'price': '40148.0',
>>>            'qty': '116',
>>>            'baseQty': '0.28893096',
>>>            'time': 1706245546763,
>>>            '...': '......'},
>>>           {'id': 720241180,
>>>            'price': '40148.0',
>>>            'qty': '5',
>>>            'baseQty': '0.01245392',
>>>            'time': 1706245546763,
>>>            '...': '......'},
>>>           {'id': 720241181,
>>>            'price': '40148.1',
>>>            'qty': '1',
>>>            'baseQty': '0.00249078',
>>>            'time': 1706245546963,
>>>            '...': '......'},
>>>           {'id': 720241182,
>>>            'price': '40148.1',
>>>            'qty': '11',
>>>            'baseQty': '0.02739856',
>>>            'time': 1706245546964,
>>>            '...': '......'}],
>>>  'msg': ''}

6.2 查询历史成交 get_historicalTrades

historicalTrades_result = market.get_historicalTrades(symbol='BTCUSD_PERP', limit=5)  # 这个接口需要key
eprint(historicalTrades_result)

输出:

>>> {'code': 200,
>>>  'data': [{'id': 720241182,
>>>            'price': '40148.1',
>>>            'qty': '11',
>>>            'baseQty': '0.02739856',
>>>            'time': 1706245546964,
>>>            '...': '......'},
>>>           {'id': 720241183,
>>>            'price': '40148.0',
>>>            'qty': '1',
>>>            'baseQty': '0.00249078',
>>>            'time': 1706245548286,
>>>            '...': '......'},
>>>           {'id': 720241184,
>>>            'price': '40148.0',
>>>            'qty': '1',
>>>            'baseQty': '0.00249078',
>>>            'time': 1706245548286,
>>>            '...': '......'},
>>>           {'id': 720241185,
>>>            'price': '40148.1',
>>>            'qty': '1',
>>>            'baseQty': '0.00249078',
>>>            'time': 1706245548962,
>>>            '...': '......'},
>>>           {'id': 720241186,
>>>            'price': '40148.1',
>>>            'qty': '11',
>>>            'baseQty': '0.02739856',
>>>            'time': 1706245548962,
>>>            '...': '......'}],
>>>  'msg': ''}

6.3 近期成交(归集) get_aggTrades

aggTrades_result = market.get_aggTrades(symbol='BTCUSD_PERP', limit=5)
eprint(aggTrades_result)

输出:

>>> {'code': 200,
>>>  'data': [{'a': 293255475, 'p': '40148.0', 'q': '44', 'f': 720241176, 'l': 720241178, '...': '......'},
>>>           {'a': 293255476, 'p': '40148.0', 'q': '121', 'f': 720241179, 'l': 720241180, '...': '......'},
>>>           {'a': 293255477, 'p': '40148.1', 'q': '12', 'f': 720241181, 'l': 720241182, '...': '......'},
>>>           {'a': 293255478, 'p': '40148.0', 'q': '2', 'f': 720241183, 'l': 720241184, '...': '......'},
>>>           {'a': 293255479, 'p': '40148.1', 'q': '12', 'f': 720241185, 'l': 720241186, '...': '......'}],
>>>  'msg': ''}

7. 交易规范信息 get_exchangeInfo

exchangeInfo_result = market.get_exchangeInfo()
eprint(exchangeInfo_result)

输出:

>>> {'code': 200,
>>>  'data': {'timezone': 'UTC',
>>>           'serverTime': 1706241611122,
>>>           'rateLimits': [{'rateLimitType': 'REQUEST_WEIGHT', 'interval': 'MINUTE', 'intervalNum': 1, 'limit': 2400},
>>>                          {'rateLimitType': 'ORDERS', 'interval': 'MINUTE', 'intervalNum': 1, 'limit': 1200}],
>>>           'exchangeFilters': [],
>>>           'symbols': [{'symbol': 'BTCUSD_PERP',
>>>                        'pair': 'BTCUSD',
>>>                        'contractType': 'PERPETUAL',
>>>                        'deliveryDate': 4133404800000,
>>>                        'onboardDate': 1597042800000,
>>>                        '...': '......'},
>>>                       {'symbol': 'BTCUSD_240329',
>>>                        'pair': 'BTCUSD',
>>>                        'contractType': 'CURRENT_QUARTER',
>>>                        'deliveryDate': 1711699200000,
>>>                        'onboardDate': 1695974400000,
>>>                        '...': '......'},
>>>                       {'symbol': 'BTCUSD_240628',
>>>                        'pair': 'BTCUSD',
>>>                        'contractType': 'NEXT_QUARTER',
>>>                        'deliveryDate': 1719561600000,
>>>                        'onboardDate': 1703836800000,
>>>                        '...': '......'},
>>>                       {'symbol': 'ETHUSD_PERP',
>>>                        'pair': 'ETHUSD',
>>>                        'contractType': 'PERPETUAL',
>>>                        'deliveryDate': 4133404800000,
>>>                        'onboardDate': 1597734000000,
>>>                        '...': '......'},
>>>                       {'symbol': 'ETHUSD_240329',
>>>                        'pair': 'ETHUSD',
>>>                        'contractType': 'CURRENT_QUARTER',
>>>                        'deliveryDate': 1711699200000,
>>>                        'onboardDate': 1695974400000,
>>>                        '...': '......'},
>>>                       '......']},
>>>  'msg': ''}

http://www.kler.cn/a/234146.html

相关文章:

  • sqlsever 分布式存储查询
  • 写给初学者的React Native 全栈开发实战班
  • 【汇编语言】包含多个段的程序(二)—— 将数据、代码、栈放入不同的段
  • 高级java每日一道面试题-2024年11月06日-JVM篇-什么是 Class 文件? Class 文件主要的信息结构有哪些?
  • 2个word内容合并
  • 前端面试笔试(二)
  • Java基础知识总结(持续更新中)
  • 第一篇【传奇开心果微博文系列】Python微项目技术点案例示例:pillow库实现毛笔字春联
  • 华为数通方向HCIP-DataCom H12-821题库(单选题:461-480)
  • 【RabbitMQ(二)】:Exchange 详解 | Message Convert 消息转换器
  • (注解配置AOP)学习Spring的第十七天
  • 每日五道java面试题之java基础篇(五)
  • 43.1k star, 免费开源的 markdown 编辑器
  • grafana+prometheus+hiveserver2(jmx_exporter+metrics)
  • [AIGC] Spring Gateway:一个简单 yet powerful API 网关
  • 每日五道java面试题之java基础篇(二)
  • Go内存优化与垃圾收集
  • 安全之护网(HVV)、红蓝对抗
  • 蓝桥杯官网练习题(Excel地址)
  • 【Chrono Engine学习总结】3-地型terrain
  • Linux基础-配置网络
  • 数据分析基础之《pandas(7)—高级处理2》
  • hook函数——useRef
  • 无人机应用场景和发展趋势,无人机技术的未来发展趋势分析
  • ubuntu22.04安装部署03: 设置root密码
  • 机器学习简介