ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

python-binance 快速上手:Binance 现货与合约交易 API 的 Python 自动化实现指南

python-binance 快速上手:Binance 现货与合约交易 API 的 Python 自动化实现指南 金融科技【免费下载链接】python-binanceBinance Exchange API python implementation for automated trading项目地址https://gitcode.com/gh_mirrors/py/python-binance点击查看免费下载本文以开源仓库 README.rst 为骨架系统讲解 python-binance v1.0.37 这一非官方 Binance REST API v3 封装库的安装、客户端初始化、同步/异步调用、行情与 K 线获取、下单/撤单、WebSocket 流、深度缓存Depth Cache、代理与自定义请求参数、Orjson 加速以及 LLM/Agent 辅助资源等核心能力。读完本文你将能够在 Binance 现货、USDT 本位合约、币本位合约、Vanilla 期权与投资组合保证金Portfolio Margin等场景中完成从行情查询到自动交易的全链路编程。项目概览与能力清单python-binance 是面向 Binance 现货交易 API v3 的非官方 Python 封装定位是自动化交易automated trading而不是购买加密货币的入口。其公共入口定义在 binance/init.py通过一行导入即可获得全部核心能力from binance import Client, AsyncClient, BinanceSocketManager, ThreadedWebsocketManager from binance import DepthCacheManager, ThreadedDepthCacheManager, FuturesDepthCacheManager根据 README 与源码该库的能力清单包括通用、行情数据与账户端点全覆盖General、Market Data、Account 三类端点均有对应方法Asyncio 实现AsyncClient提供与同步Client完全对齐的异步版本Demo 与 Testnet 支持通过demoTrue使用演示环境Spot、Futures、Vanilla Options 测试网通过testnetTrue启用Vanilla Options 测试网已标记为 deprecated多种签名方式HMAC、RSA 与 EDDSAEd25519密钥自动处理Verbose 模式verboseTrue可逐条打印请求与响应便于排查问题时间戳与 recvWindow 自动生成无需手工构造timestamp签名时自动补齐响应异常处理统一的BinanceAPIException等异常体系可定制 HTTP 请求头如client.get_account(headers{...})WebSocket 处理支持重连ReconnectingWebsocket与多路复用multiplexed连接WebSocket API 下单ws_create_order等走 WS-API 通道延迟更低Symbol Depth Cache本地维护订单簿深度缓存历史 K 线抓取get_historical_klines及生成器版本提现与充值地址withdraw、get_deposit_addressMargin / Futures / Portfolio Margin / Vanilla Options四类衍生品与保证金交易代理支持REST 与 WSOrjson 加速可选安装后自动启用多 TLD 支持.us、.jp等地区域名Gift Card API 支持。版本与升级注意事项README 强调两点请确保 python-binance 版本不低于v1.0.20更早版本不再推荐部分端点已废弃从 v1.0.0 起有两处破坏性变更钱包相关端点由wapi 迁移到 sapi对应 Binance 官方文档 Wallet EndpointsWebSocket 流与 Depth Cache Manager 改为异步上下文管理器Asynchronous Context Managers使用方式见下文同步/异步示例及 docs/websockets.rst、docs/depth_cache.rst。安装与客户端初始化安装pip install python-binance依赖说明以仓库 requirements.txt 为准核心依赖包括requests、aiohttp、dateparser、pycryptodomeRSA/EDDSA 签名、orjson可选、websockets等测试依赖见 test-requirements.txt。同步客户端from binance.client import Client client Client(api_key, api_secret)异步客户端import asyncio from binance import AsyncClient async def main(): client await AsyncClient.create(api_key, api_secret) # ... 调用接口 ... await client.close_connection() if __name__ __main__: asyncio.run(main())异步客户端基于 aiohttpAsyncClient.create()为官方推荐的构造入口见 binance/async_client.py普通Client中每个方法在AsyncClient中都有对应实现差异仅在于需要await。使用 Spot / Futures / Vanilla Options 测试网Binance 提供 Spottestnet.binance.vision、Futurestestnet.binancefuture.com与 Vanilla Options 测试网。启用方式是把testnetTrue传给客户端client Client(api_key, api_secret, testnetTrue) # 异步版本 client await AsyncClient.create(api_key, api_secret, testnetTrue)testnet参数同样会传递给 BinanceSocketManager 创建的 WebSocket 流。从源码 binance/base_client.py 可见测试网地址集合现货https://testnet.binance.vision/apiU 本位合约https://testnet.binancefuture.com/fapi币本位合约https://testnet.binancefuture.com/dapiVanilla 期权https://testnet.binanceops.{tld}/eapiWS-APIwss://ws-api.testnet.binance.vision/ws-api/v3Demo 环境通过demoTrue可接入 Binance 演示环境如https://demo-api.binance.com/api适合在不产生真实仓位的前提下联调。不同地区 TLD若使用美国、日本等地区域名.us、.jp需显式传tldclient Client(api_key, api_secret, tldus) client await AsyncClient.create(api_key, api_secret, tldus)tld同样作用于 WebSocket 流。源码中 URL 模板为https://api{base_endpoint}.binance.{tld}/apiREST 与 WS 地址均按 tld 动态格式化binance/base_client.py。此外_require_tld机制会校验当前客户端 tld 与端点要求是否一致不一致时抛出BinanceRegionException见 binance/exceptions.py。发起 API 调用所有方法均支持通过关键字参数透传 Binance API 文档中的任意参数这些参数会原样发送到对应端点每个方法返回 Binance API JSON 响应的字典且每个方法的 docstring 都注明了其实现的端点。两个关键自动行为源码见 binance/base_client.py 的_get_request_kwargstimestamp 自动生成签名请求会自动附加timestamp time.time() * 1000 timestamp_offsetrecvWindow 默认发送默认REQUEST_RECVWINDOW 1000010 秒用于时间安全timing security可通过参数覆盖。签名方式HMAC / RSA / EDDSAREADME 提到Simple handling of authentication include RSA and EDDSA keys。源码_generate_signaturebinance/base_client.py按优先级选择签名函数默认使用HMAC-SHA256_hmac_signature传入private_key且密钥文本长度 120 字符时判定为RSApkcs1_15 SHA256长度 ≤ 120 时按Ed25519EDDSA处理eddsa.new(..., rfc8032)。私钥可通过private_key路径或内容字符串与private_key_pass传入见 binance/client.py 与 binance/async_client.py 的构造函数。Quick Start一个完整的同步示例以下代码来自 README 的 Quick Start 段落覆盖市场深度、测试下单、行情、提现、充值地址、历史 K 线、条件单、WS 下单、线程版 Socket Manager 与 Depth Cache Managerfrom binance import Client, ThreadedWebsocketManager, ThreadedDepthCacheManager client Client(api_key, api_secret) # 获取市场深度 depth client.get_order_book(symbolBNBBTC) # 测试市价买单真实下单请用 create_order order client.create_test_order( symbolBNBBTC, sideClient.SIDE_BUY, typeClient.ORDER_TYPE_MARKET, quantity100) # 获取所有交易对价格 prices client.get_all_tickers() # 提现 100 ETH提现前置条件见文档 from binance.exceptions import BinanceAPIException try: result client.withdraw( assetETH, addresseth_address, amount100) except BinanceAPIException as e: print(e) else: print(Success) # 获取提现记录 / ETH 提现记录 withdraws client.get_withdraw_history() eth_withdraws client.get_withdraw_history(coinETH) # 获取 BTC 充值地址 address client.get_deposit_address(coinBTC) # 历史 K 线任意时间范围 # 最近一天到现在的 1 分钟 K 线 klines client.get_historical_klines(BNBBTC, Client.KLINE_INTERVAL_1MINUTE, 1 day ago UTC) # 2017 年 12 月的 30 分钟 K 线 klines client.get_historical_klines(ETHBTC, Client.KLINE_INTERVAL_30MINUTE, 1 Dec, 2017, 1 Jan, 2018) # 上线以来的周 K 线 klines client.get_historical_klines(NEOBTC, Client.KLINE_INTERVAL_1WEEK, 1 Jan, 2017) # 专用方法创建条件单algo order algo_order client.futures_create_algo_order( symbolLTCUSDT, sideBUY, typeSTOP_MARKET, quantity0.1, triggerPrice120) # 撤条件单 / 查询未成交条件单异步调用示例 # cancel2 await client.futures_cancel_algo_order(orderIdorder2[orderId], symbolLTCUSDT) # open_orders await client.futures_get_open_algo_orders(symbolLTCUSDT) # 通过 WebSocket 下单低延迟通道 order_ws client.ws_create_order(symbolLTCUSDT, sideBUY, typeMARKET, quantity0.1) # 自定义请求头获取账户 account client.get_account(headers{MyCustomKey: MyCustomValue}) # 线程版 Socket 管理器 twm ThreadedWebsocketManager() twm.start() # 线程版深度缓存管理器 dcm ThreadedDepthCacheManager() dcm.start() def handle_socket_message(msg): print(fmessage type: {msg[e]}) print(msg) def handle_dcm_message(depth_cache): print(fsymbol {depth_cache.symbol}) print(top 5 bids) print(depth_cache.get_bids()[:5]) print(top 5 asks) print(depth_cache.get_asks()[:5]) print(last update time {}.format(depth_cache.update_time)) twm.start_kline_socket(callbackhandle_socket_message, symbolBNBBTC) dcm.start_depth_cache(callbackhandle_dcm_message, symbolETHBTC) # 期权深度缓存替换为当前有效的期权代码 options_symbol BTC-241227-41000-C dcm.start_options_depth_cache(callbackhandle_dcm_message, symboloptions_symbol) # 将线程管理器 join 回主线程 twm.join() dcm.join()提现的假设与参数说明源码withdrawbinance/client.py注释了提现前置条件API Key 必须开启提现权限目标地址必须先在网站完成绑定并通过邮件验证。参数包括coin必填、withdrawOrderId可选客户端提现单号、network、address、addressTagXRP、XMR 等代币的二级地址标识等。get_withdraw_history支持status状态过滤0 邮件已发送 / 1 已取消 / 2 等待审批 / 3 被拒绝 / 4 处理中 / 5 失败 / 6 已完成、offset默认 0、limit、startTime默认当前时间往前 90 天、endTime默认当前时间。历史 K 线背后的实现get_historical_klinesbinance/client.py内部借助 binance/helpers.py 的date_to_milliseconds将人类可读时间字符串如1 day ago UTC、1 Dec, 2017解析为毫秒时间戳。注意使用相对时间偏移字符串时必须附带UTC后缀如now UTC、11 hours ago UTC解析失败会抛出UnknownDateFormat库还提供interval_to_milliseconds将1m、1h、1w等间隔字符串换算为毫秒get_historical_klines_generator提供生成器版本配合limit参数逐批拉取、适合大数据量场景如回测数据准备通过klines_type参数binance/enums.py 的HistoricalKlinesType可抓取现货、U 本位合约、币本位合约、标记价格/指数价格 K 线等多种历史数据。仓库还提供了 examples/save_historical_data.py 展示如何将历史数据落盘。Async 示例异步上下文管理器与生成器README 的 Async 示例展示完整的事件循环用法核心点是用async with管理 Socket 与 Depth Cache离开作用域即自动关闭连接import asyncio import json from binance import AsyncClient, DepthCacheManager, BinanceSocketManager async def main(): client await AsyncClient.create() print(json.dumps(await client.get_exchange_info(), indent2)) print(json.dumps(await client.get_symbol_ticker(symbolBTCUSDT), indent2)) bsm BinanceSocketManager(client) # 收到 5 条消息后自动退出并关闭连接 async with bsm.trade_socket(ETHBTC) as ts: for _ in range(5): res await ts.recv() print(frecv {res}) # 历史 K 线生成器版本逐条产出 async for kline in await client.get_historical_klines_generator( BNBBTC, AsyncClient.KLINE_INTERVAL_1MINUTE, 1 day ago UTC): print(kline) # 更多历史 K 线示例 klines await client.get_historical_klines(ETHBTC, Client.KLINE_INTERVAL_30MINUTE, 1 Dec, 2017, 1 Jan, 2018) klines await client.get_historical_klines(NEOBTC, Client.KLINE_INTERVAL_1WEEK, 1 Jan, 2017) # 通过 WebSocket 下单 order_ws await client.ws_create_order(symbolLTCUSDT, sideBUY, typeMARKET, quantity0.1) # 异步深度缓存收到 5 条更新后退出 async with DepthCacheManager(client, symbolETHBTC) as dcm_socket: for _ in range(5): depth_cache await dcm_socket.recv() print(fsymbol {depth_cache.symbol} updated:{depth_cache.update_time}) print(Top 5 asks:, depth_cache.get_asks()[:5]) print(Top 5 bids:, depth_cache.get_bids()[:5]) # Vanilla 期权深度缓存用法相同替换为当前有效期权代码 options_symbol BTC-241227-41000-C async with OptionsDepthCacheManager(client, symboloptions_symbol) as dcm_socket: for _ in range(5): depth_cache await dcm_socket.recv() print(fsymbol {depth_cache.symbol} updated:{depth_cache.update_time}) print(Top 5 asks:, depth_cache.get_asks()[:5]) print(Top 5 bids:, depth_cache.get_bids()[:5]) await client.close_connection() if __name__ __main__: asyncio.run(main())异步客户端中 WebSocket 流的底层封装位于 binance/ws/reconnecting_websocket.py自动重连、指数退避与 binance/ws/keepalive_websocket.py用户数据流 listenKey 保活Socket 工厂方法定义在 binance/ws/streams.py。WebSocket 流全景BinanceSocketManager提供了极为丰富的流方法见 binance/ws/streams.py 的BinanceSocketManager类包括行情流trade_socket、aggtrade_socket、kline_socket、depth_socket、book_ticker_socket、symbol_ticker_socket、ticker_socket、miniticker_socket多路复用multiplex_socket(streams)将多个流合并为一条连接用户数据流user_socket需要先获取 listenKey合约流futures_user_socket、coin_futures_user_socket、futures_depth_socket、symbol_mark_price_socket、all_mark_price_socket、futures_ticker_socket等期权流options_depth_socket、options_ticker_socket、options_kline_socket等保证金流margin_socket、isolated_margin_socket、portfolio_margin_socket。线程版ThreadedWebsocketManager提供start_*前缀的对应方法如start_kline_socket、start_trade_socket、start_user_socket它们以回调方式消费消息配合twm.start()/twm.join()使用适合在非 asyncio 程序中接入。WebSocket API低延迟下单README 强调CRUD over websockets, create/fetch/edit through websockets for minimum latency最低延迟下的增删改查。这一能力由ws_前缀方法族提供见 binance/client.py 与 binance/async_client.py例如ws_create_order、ws_cancel_order、ws_get_order、ws_get_account、ws_futures_create_order等。以ws_create_order为例binance/client.py它会自动生成newClientOrderId前缀x-TKT5PX2F uuid22并走_ws_api_request_sync→WebsocketAPI.request通道。WebSocket API 底层在 binance/ws/websocket_api.py通过请求 id 与响应队列匹配异步应答。合约侧还有ws_futures_create_order、ws_futures_edit_order、ws_futures_cancel_order等方法。条件单Algo Order与合约下单README 的 Quick Start 中演示了合约条件单三类操作# 创建条件单 algo_order client.futures_create_algo_order(symbolLTCUSDT, sideBUY, typeSTOP_MARKET, quantity0.1, triggerPrice120) # 使用 create_order 创建条件单会自动路由到 algoOrder # order2 await client.futures_create_order(symbolLTCUSDT, sideBUY, typeSTOP_MARKET, quantity0.1, triggerPrice120) # 撤销条件单 # cancel2 await client.futures_cancel_algo_order(orderIdorder2[orderId], symbolLTCUSDT) # 查询未成交条件单 # open_orders await client.futures_get_open_algo_orders(symbolLTCUSDT)根据源码futures_create_algo_orderbinance/client.py的参数说明algoType必填目前仅支持CONDITIONALside为 BUY 或 SELLpositionSide在单向持仓模式为BOTH、双向持仓模式为LONG/SHORTtype支持STOP_MARKET/TAKE_PROFIT_MARKET/STOP/TAKE_PROFIT/TRAILING_STOP_MARKETtimeInForce默认GTC。普通合约下单则使用futures_create_order配合futures_limit_order、futures_market_order、futures_market_buy_order等便捷方法。仓库 examples/futures_algo_order_examples.py 与 examples/create_order.py 提供了可直接运行的参考。请求设置超时、自定义参数与代理python-binance 同步客户端基于requests库你可以在创建客户端时传入全局requests_params也可以在单次调用时通过requests_params覆盖# 全局设置关闭证书校验 20 秒超时 client Client(api-key, api-secret, {verify: False, timeout: 20}) # 单次调用覆盖此次 get_all_orders 为 verifyFalse, timeout5 client.get_all_orders(symbolBNBBTC, requests_params{timeout: 5})底层实现位于_get_request_kwargsbinance/base_client.py默认写入timeout REQUEST_TIMEOUT10 秒再合并全局requests_params最后合并请求级requests_params覆盖。异步客户端对应session_params基于 aiohttp见 binance/async_client.py。代理设置REST 代理复用上述 Requests Settings 方式proxies { http: http://10.10.1.10:3128, https: http://10.10.1.10:1080 } # 全局代理 client Client(api-key, api-secret, {proxies: proxies}) # 或单次调用代理 client.get_all_orders(symbolBNBBTC, requests_params{proxies: proxies})也可以使用环境变量让代理作用于所有请求# Linux / macOS export HTTP_PROXYhttp://10.10.1.10:3128 export HTTPS_PROXYhttp://10.10.1.10:1080 # Windows set HTTP_PROXYhttp://10.10.1.10:3128 set HTTPS_PROXYhttp://10.10.1.10:1080WebSocket 代理要求 Python 3.8。异步客户端通过https_proxy参数传入代理源码 binance/base_client.py 还会从requests_params[proxies]中提取代理用于 WebSocket API 连接。速率限制与响应头Binance 官方速率限制README 中列举的当前限制具体以get_exchange_info()返回值中的最新限制为准1200 weights / 分钟10 个订单 / 秒100,000 个订单 / 24 小时部分调用权重更高尤其是返回全量 symbol 信息的调用。每次响应中 Binance 会返回X-MBX-USED-WEIGHT-(intervalNum)(intervalLetter)与X-MBX-ORDER-COUNT-(intervalNum)头python-binance 将最近一次响应保存在client.response可直接读取from binance import Client client Client(api_key, api_secret) res client.get_exchange_info() print(client.response.headers)异步版本相同res await client.get_exchange_info(); print(client.response.headers)。日志、Verbose 模式与调试基础日志python-binance 使用标准logging模块import logging logging.basicConfig(levellogging.DEBUG)进阶日志带时间戳与级别import logging logging.basicConfig( levellogging.DEBUG, format%(asctime)s - %(name)s - %(levelname)s - %(message)s, )Verbose 模式快速调试创建客户端时传verboseTrueREST 请求/响应即会以 DEBUG 级别输出源码 binance/base_client.py 在 verbose 时自动将 logger 设为 DEBUGfrom binance.client import Client import logging logging.basicConfig(levellogging.DEBUG) client Client(api_key, api_secret, verboseTrue) server_time client.get_server_time()异步客户端同样支持client await AsyncClient.create(api_key, api_secret, verboseTrue)。Verbose 模式下每条请求会记录HTTP 方法与 URL、请求头与请求体、响应状态码、响应头与响应体响应体截断至 1000 字符。示意输出2025-11-30 22:01:26,957 - binance.base_client - DEBUG - Request: GET https://api.binance.com/api/v3/time RequestHeaders: {Accept: application/json, Content-Type: application/json} RequestBody: None Response: 200 ResponseHeaders: {Content-Type: application/json;charsetUTF-8, ...} ResponseBody: {serverTime:1764536487218}生产环境推荐logging 模块精细化控制相比全局 verbose更推荐用 logging 模块单独控制binance包日志级别便于与现有日志体系集成import logging from binance.client import Client logging.basicConfig( levellogging.INFO, format%(asctime)s - %(name)s - %(levelname)s - %(message)s ) # 仅针对 binance.base_client 开启 DEBUG logging.getLogger(binance.base_client).setLevel(logging.DEBUG) client Client(api_key, api_secret)WebSocket 的 Verbose 与日志WebSocket 连接同样支持 verboseBinanceSocketManager(client, verboseTrue)与精细化 logger# 仅记录 WebSocket API 消息 logging.getLogger(binance.ws.websocket_api).setLevel(logging.DEBUG) # 记录重连事件 logging.getLogger(binance.ws.reconnecting_websocket).setLevel(logging.DEBUG) # 记录流事件 logging.getLogger(binance.ws.streams).setLevel(logging.DEBUG)WebSocket 的 DEBUG 日志涵盖原始接收消息、连接状态变化、重连尝试、订阅事件、错误消息。线程版管理器对应ThreadedApiManager(api_key..., api_secret..., verboseTrue)见 binance/ws/threaded_stream.py。注意生产环境建议关闭 verbose 以降低开销与日志量改用 logging 模块按需开启。异常处理体系python-binance 在 binance/exceptions.py 定义了一套完整的异常体系BinanceAPIExceptionBinance 返回错误时抛出包含code错误码与message错误消息__str__输出APIError(code...): ...BinanceRequestException请求层错误网络、HTTP 层BinanceOrderException下单错误基类派生出BinanceOrderMinAmountException、BinanceOrderMinPriceException、BinanceOrderMinTotalException、BinanceOrderUnknownSymbolException、BinanceOrderInactiveSymbolExceptionBinanceWebsocketUnableToConnect/BinanceWebsocketQueueOverflow/BinanceWebsocketClosedWebSocket 连接失败、消息队列溢出默认上限 100见 binance/ws/reconnecting_websocket.py 的max_queue_size、连接关闭BinanceRegionException区域限定端点与客户端 tld 不匹配UnknownDateFormat历史 K 线日期字符串解析失败NotImplementedException未实现能力占位。README 的 Quick Start 已示范捕获BinanceAPIException的写法测试网 tests/test_error_propagation.py 与 tests/test_region_exception.py 覆盖了这些异常的上抛路径。常量与枚举速查常用常量同时定义在 binance/base_client.py 与 binance/enums.py通过from binance.enums import *从包根导出见 binance/init.pyK 线间隔Client.KLINE_INTERVAL_*/AsyncClient.KLINE_INTERVAL_*1s、1m、3m、5m、15m、30m、1h、2h、4h、6h、8h、12h、1d、3d、1w、1M。交易方向Client.SIDE_BUY BUY、Client.SIDE_SELL SELL。现货订单类型LIMIT、MARKET、STOP_LOSS、STOP_LOSS_LIMIT、TAKE_PROFIT、TAKE_PROFIT_LIMIT、LIMIT_MAKER。合约订单类型FUTURE_ORDER_TYPE_*包含LIMIT、MARKET、STOP、STOP_MARKET、TAKE_PROFIT、TAKE_PROFIT_MARKET、LIMIT_MAKER、TRAILING_STOP_MARKET。TimeInForceGTC一直有效、IOC立即成交或取消、FOK全部成交或取消、GTX仅挂单、GTD截止日期、RPI零售价改善。订单状态NEW、PARTIALLY_FILLED、FILLED、CANCELED、PENDING_CANCEL、REJECTED、EXPIRED合约侧另有ACCEPTED、TRIGGERING、TRIGGERED、FINISHED。订单响应类型ACK、RESULT、FULL。WebSocket 深度档位WEBSOCKET_DEPTH_5 / 10 / 20。Orjson 加速python-binance 支持 orjson 作为 JSON 解析引擎——它比标准库 json 快得多对 WebSocket 场景尤其重要交易所会推送较大消息需要尽快解析与分发。orjson默认不启用因为它并非所有 Python 解释器都支持。若想启用只需安装pip install orjsonpython-binance 会自动检测到安装并启用。底层 JSON 加载/转储在 binance/ws/reconnecting_websocket.py 的json_loads/json_dumps中按可用性切换。LLM 与 AI Agent 支持资源README 专设LLM AI Agent Support一节仓库为此提供了面向 AI 编码助手Claude Code、Cursor、Copilot 等的资产llms.txt面向 LLM 的精炼库概览遵循 llmstxt.org 标准llms-full.txt完整 API 参考涵盖 797 个方法及其签名与参数.agents/skills/python-binance/Agent Skill兼容任意 Agent Skills 工具generate_llms_txt.py库更新后重新生成上述 LLM 文件的脚本。安装 Agent Skill支持 Claude Code、Cursor、Copilot、Gemini CLI、Goose、Roo Code 等 30 种 Agent# 安装到当前项目 npx -y skills add sammchardy/python-binance # 全局安装所有项目可用 npx -y skills add sammchardy/python-binance --global这使 AI 助手在编写交易代码时可以直接引用库的真实签名与参数显著减少幻觉与错误调用。许可证与风险声明python-binance 采用 MIT 许可证允许任何开发者在其之上构建商业与开源软件但按 README 声明库按as is提供无任何担保使用风险自负use it at your own risk with no warranties, as is。这符合加密货币交易自动化的通用实践——务必先在测试网与 demo 环境充分验证策略后再接入真实资金。参考资源项目主文档docs/index.rst、docs/overview.rst同步客户端源码binance/client.py异步客户端源码binance/async_client.py基础客户端签名、URI、请求组装binance/base_client.pyWebSocket 流工厂binance/ws/streams.py深度缓存实现binance/ws/depthcache.pyWebSocket API 底层binance/ws/websocket_api.py工具函数日期/间隔换算、数量取整binance/helpers.py常量与枚举binance/enums.py可运行示例examples/测试用例tests/覆盖客户端、WS、深度缓存、历史 K 线等赞分享金融科技【免费下载链接】python-binanceBinance Exchange API python implementation for automated trading项目地址https://gitcode.com/gh_mirrors/py/python-binance点击查看免费下载相关推荐qwen-code Session Idle Reaper桥接层空闲会话自动回收机制深度解析qwen code Session Idle Reaper桥接层空闲会话自动回收机制深度解析 导读 qwen code 的 daemon 常以长时间运行的 w金融科技Python-Binance库Binance平台API集成开发指南1. 库架构与核心组件 Python Binance作为Binance平台API的Python实现提供了完整的RESTful和WebSocket接口封装。该库金融科技Python-Binance库交易平台API集成开发指南Python Binance库交易平台API集成开发指南 1. 库架构与核心组件 Python Binance作为交易平台API的Python实现提供了完整金融科技上一篇react-native-snap-carousel无障碍动画减少运动偏好支持下一篇Caire日志系统调试图像处理过程的实用工具创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表