Binance API交易指南:自动化您的加密货币交易

阅读:55 分类: 讲师

如何用Binance做API交易

在加密货币交易的世界里,API交易提供了传统手动交易无法比拟的速度、效率和自动化优势。对于希望利用复杂算法、自定义交易策略或简单地自动化日常交易流程的交易者来说,Binance API 是一个强大的工具。本文将引导您了解如何使用 Binance API 进行交易,涵盖从设置环境到执行交易的关键步骤。

1. 理解API与交易类型

Binance API 是一套强大的接口,它允许开发者通过编程方式与 Binance 数字资产交易所进行无缝交互。通过 API,您可以自动化执行各种操作,例如实时获取市场行情数据、创建和管理订单、查询账户余额和交易历史等。要有效地利用 Binance API,理解其提供的不同类型的 API 密钥以及支持的交易类型至关重要。

在使用 Binance API 之前,您需要创建 API 密钥。Binance 提供了三种主要的 API 密钥类型,每种密钥都具有不同的权限级别,旨在满足不同的安全需求:

  • 只读 (Read-Only): 此类密钥权限最低,仅允许您获取市场数据(如价格、交易量等)和账户信息(如余额、历史交易记录等)。您无法使用此密钥进行任何交易操作,如下单、撤单等。适用于数据分析、监控等场景。
  • 交易 (Trade): 交易密钥允许您执行交易操作,包括下单(买入和卖出)、撤单等。但您无法使用此密钥进行提现操作,从而保证您的资金安全。这是开发交易机器人最常用的密钥类型。
  • 提现 (Withdrawal): 提现密钥权限最高,允许您执行提现操作,将数字资产从 Binance 账户转移到其他地址。为了安全起见,强烈建议不要将此密钥用于交易机器人或不信任的应用,并采取额外的安全措施,如启用两步验证(2FA)。

出于安全考虑,强烈建议您遵循最小权限原则,仅为 API 密钥分配执行特定任务所需的最低权限。例如,如果您正在开发一个交易机器人,则只需分配 "交易" 权限即可,无需分配 "提现" 权限,从而降低潜在的安全风险。

Binance API 支持多种交易类型,其中最常见的两种是:

  • 现货交易 (Spot Trading): 这是最基础的交易类型,允许您使用账户中现有的数字资产直接进行交易。例如,您可以使用账户中的 USDT 购买 BTC,或者使用 BTC 卖出换取 USDT。
  • 杠杆交易 (Margin Trading): 杠杆交易允许您从 Binance 借入资金,从而放大您的交易头寸。例如,如果您使用 2 倍杠杆,则您可以用 100 USDT 的本金交易价值 200 USDT 的数字资产。杠杆交易可以放大盈利,但同时也会放大亏损,因此具有较高的风险。

本文的重点将放在现货交易上,深入探讨如何使用 Binance API 进行现货交易。然而,许多概念和技术原则也同样适用于杠杆交易,您可以通过学习现货交易的基础知识,为进一步探索杠杆交易打下坚实的基础。务必在进行任何交易前充分了解相关风险。

2. 创建API密钥

为了实现自动化的交易策略或访问币安平台的各种服务,您需要在币安账户中创建并配置API密钥。API密钥允许您的应用程序(如交易机器人)安全地与币安交易所进行交互,而无需共享您的账户密码。

  1. 登录您的币安账户。 使用您的用户名和密码,通过官方网站或币安App登录您的个人账户。确保您访问的是官方且安全的币安平台,以避免钓鱼攻击。
  2. 访问API管理页面。 登录后,将鼠标悬停在用户图标上(通常位于页面右上角),在下拉菜单中找到并点击“API管理”选项。这将带您进入API密钥的管理页面。
  3. 创建新的API密钥。 在API管理页面,您会看到一个创建API密钥的选项。为您的API密钥指定一个易于识别的标签,例如“MyTradingBot”、“StrategyAlpha”或“PortfolioManager”。清晰的标签有助于您区分不同的API密钥,方便日后管理。
  4. 完成安全验证。 为了验证您的身份并确保API密钥的安全,币安会要求您完成额外的安全验证。这通常包括使用Google验证器生成的验证码、短信验证码或电子邮件验证码。请按照页面提示完成验证流程。
  5. 保存API Key和Secret Key。 密钥创建成功后,系统会生成一个 API Key 和一个 Secret Key 。API Key相当于您的用户名,用于识别您的应用程序。 Secret Key 相当于您的密码,用于验证您的请求。 请务必妥善保管Secret Key,因为它只会在创建时显示一次。 强烈建议将其存储在安全的地方,例如密码管理器或加密的文档中。如果您丢失了Secret Key,将无法恢复,需要重新生成新的API密钥。
  6. 配置API权限。 为了最大限度地降低风险,您需要仔细配置API密钥的权限。找到"编辑API限制"或类似的选项,并根据您的需求进行设置。对于交易机器人,通常需要启用"启用现货&杠杆交易"权限。请勿授予超出您实际需求的权限。
  7. 限制IP访问(强烈推荐)。 限制IP访问是提高API密钥安全性的重要措施。建议您仅允许特定的IP地址访问API。这样,即使API Key和Secret Key泄露,未经授权的IP地址也无法使用您的API密钥。您可以指定单个IP地址,或IP地址范围。如果您不确定您的IP地址,可以使用在线工具查询。配置完成后,请务必保存您的设置。

3. 设置开发环境

为了高效开发和测试 API 交易脚本,建立一个完善的开发环境至关重要。Python 因其简洁的语法和强大的生态系统,在加密货币交易领域被广泛采用。它拥有大量的库,可以简化与交易所 API 的交互,并提供数据分析和回测工具。

  1. 安装 Python: 如果您的计算机上尚未安装 Python,请访问官方网站 python.org 下载并安装最新稳定版本。请务必选择与您的操作系统相匹配的版本,并在安装过程中勾选“Add Python to PATH”选项,以便在命令行中直接使用 Python。安装完成后,您可以在终端或命令提示符中输入 python --version python3 --version 来验证 Python 是否成功安装。建议安装 pip,即 Python 的包管理器,它将简化后续库的安装过程。
  2. 安装必要的库: python-binance 库为与币安 API 进行交互提供了一个便捷的接口。它封装了复杂的 HTTP 请求和响应处理,允许开发者专注于交易逻辑的实现。通过 pip 包管理器,可以轻松安装 python-binance 库。打开终端或命令提示符,并执行以下命令:
    pip install python-binance

    如果您的系统同时安装了 Python 2 和 Python 3,您可能需要使用 pip3 命令来安装 Python 3 版本的库:

    pip3 install python-binance

    为了验证 python-binance 库是否成功安装,可以在 Python 解释器中导入该库:

    python
    import binance
    print(binance.__version__)
    

    如果成功导入且输出了版本号,则表明 python-binance 库已正确安装。

    除了 python-binance ,您可能还需要安装其他库来辅助开发,例如:

    • pandas : 用于数据分析和处理。
    • numpy : 用于科学计算。
    • requests : 用于发送 HTTP 请求 (如果需要自定义 API 调用)。
    • ta-lib : 用于技术指标计算 (如果需要进行技术分析)。

    您可以使用类似的 pip 命令来安装这些库:

    pip install pandas numpy requests ta-lib

4. 编写交易脚本

在搭建好环境并配置好API密钥后,您就可以开始编写您的交易脚本了。交易脚本是自动化交易策略的核心,它负责执行下单、撤单、监控市场等关键操作。脚本的编写语言可以是Python、JavaScript等,选择哪种语言取决于您的熟悉程度和可用库的支持情况。

以下是一个使用Python编写的示例脚本,它利用 python-binance 库从Binance API获取BTC/USDT的当前价格,并根据获取的价格创建一个限价买单。 请注意,这仅仅是一个演示,实际交易策略可能需要更复杂的逻辑和风险管理机制。

你需要安装 python-binance 库。 在命令行中执行: pip install python-binance

以下是示例代码:


from binance.client import Client

# 替换为你的API密钥和秘钥
api_key = "YOUR_API_KEY"
api_secret = "YOUR_API_SECRET"

# 创建Binance客户端实例
client = Client(api_key, api_secret)

# 定义交易对和交易参数
symbol = 'BTCUSDT'
quantity = 0.001  # 交易数量
price_offset = 0.01 # 价格偏移量

try:
    # 获取当前BTC/USDT的价格
    ticker = client.get_ticker(symbol=symbol)
    current_price = float(ticker['lastPrice'])

    # 计算买入价格 (低于当前价格)
    buy_price = current_price - price_offset

    # 创建限价买单
    order = client.order_limit_buy(
        symbol=symbol,
        quantity=quantity,
        price=buy_price
    )

    print(f"已创建限价买单: {order}")

except Exception as e:
    print(f"发生错误: {e}")

from binance.client import Client

替换为您的 API Key 和 Secret Key

在代码中,您需要将占位符替换为您真实的 API Key 和 Secret Key。 API Key 用于标识您的身份,而 Secret Key 则用于对您的请求进行签名,确保安全性。

api_key = 'YOUR_API_KEY'
api_secret = 'YOUR_API_SECRET'

api_key 变量存储您的公共 API 密钥,相当于您的用户名。请妥善保管,不要泄露给他人。

api_secret 变量存储您的私有密钥,相当于您的密码。这是访问您的账户和执行交易的关键,绝对不能泄露。如果怀疑密钥已泄露,请立即更换。

client = Client(api_key, api_secret)
这行代码使用您的 API Key 和 Secret Key 初始化客户端对象。客户端对象将用于与交易所的 API 进行交互,例如获取市场数据、下单等。请确保您使用的 Client 类来自官方或可信赖的第三方库,以避免安全风险。不同的交易所或SDK可能有不同的客户端初始化方法,请参考对应的文档。

获取 BTC/USDT 的当前价格

在加密货币交易中,实时获取资产对(例如 BTC/USDT)的价格信息至关重要。交易所通常提供应用程序编程接口 (API),允许开发者以编程方式访问这些数据。以下是如何使用 API 获取 BTC/USDT 当前价格的示例,其中假设您已经配置好了与交易所的连接,并初始化了一个名为 `client` 的客户端对象。

ticker = client.get_ticker(symbol='BTCUSDT')

上述代码段调用了客户端对象的 get_ticker 方法。该方法接受一个参数 symbol ,指定了要查询的交易对。在这个例子中,我们传入 'BTCUSDT',表示我们想要获取比特币(BTC)兑美元稳定币 USDT 的相关信息。 get_ticker 方法会向交易所的服务器发送请求,并返回一个包含交易对相关数据的字典。这些数据通常包括但不限于最新成交价、最高价、最低价、交易量等。

price = float(ticker['lastPrice'])

接下来,我们需要从返回的 ticker 字典中提取最新成交价。我们使用 ticker['lastPrice'] 来访问 ticker 字典中键为 'lastPrice' 的值。由于交易所 API 返回的数据通常是字符串类型,我们需要将其转换为浮点数类型,以便进行后续的数值计算。 float() 函数用于将字符串转换为浮点数。转换后的价格存储在名为 price 的变量中。

print(f"BTC/USDT 当前价格: {price}")

我们使用 print() 函数将 BTC/USDT 的当前价格输出到控制台。这里使用了 f-字符串(格式化字符串字面量)来方便地将变量 price 的值嵌入到字符串中。输出结果类似于 "BTC/USDT 当前价格: 27000.50",其中 27000.50 是 BTC/USDT 的最新成交价。请注意,实际的价格会根据市场波动而变化。这段代码提供了获取并展示特定交易对当前价格的简单方法,可以方便地集成到自动交易程序、价格监控工具或其他加密货币相关的应用中。务必查阅你所使用交易所API的官方文档,以了解如何正确配置你的客户端,如何处理潜在的错误以及交易所关于API使用的具体限制。

定义交易参数

在加密货币交易中,精确定义交易参数至关重要。这些参数直接影响交易的执行,风险管理以及潜在收益。以下是对常用交易参数的详细解释:

symbol = 'BTCUSDT'

symbol 代表交易对,例如本例中的 'BTCUSDT'。它指定了要交易的两种加密货币。 'BTC' 代表比特币,'USDT' 代表 Tether,一种与美元挂钩的稳定币。 因此,'BTCUSDT' 表示以 USDT 购买或出售比特币的交易对。 选择正确的交易对是交易的第一步,确保交易者在期望的市场中进行操作。不同交易所的symbol命名规则可能存在差异,需要根据具体交易所的API文档进行调整。

quantity = 0.001

quantity 定义了交易的数量。在本例中, quantity = 0.001 表示购买或出售 0.001 个比特币。 交易数量的选择应基于交易者的风险承受能力、账户余额和市场波动性。 小批量交易有助于降低风险,尤其是在高波动性市场中。 请注意,不同的加密货币交易所对最小交易数量有限制,小于该限制的交易可能无法执行。 实际应用中,交易数量的计算通常会考虑交易费用的影响。

buy_price = price - 10

buy_price 指定了购买的理想价格。 在本例中, buy_price = price - 10 表示以低于当前市场价格 10 美元的价格购买比特币。 这种策略被称为限价单,交易只有在市场价格达到或低于指定价格时才会执行。 price 变量代表当前市场价格,需要从交易所的实时数据流中获取。 使用限价单允许交易者控制购买价格,但不能保证交易一定会执行。如果市场价格没有达到设定的 buy_price ,订单将一直挂起,直到被取消。 还需要考虑滑点的影响,在高波动市场中,实际成交价格可能与预期价格存在差异。

创建一个限价买单

在加密货币交易中,限价买单允许您以指定的价格购买一定数量的加密货币。以下代码展示了如何使用Python Binance API创建一个限价买单。该买单只有在市场价格达到或低于您设定的价格时才会执行。

该示例中,我们使用 client.order_limit_buy() 函数来创建一个限价买单。你需要提供以下参数:

  • symbol : 交易对,例如 "BTCUSDT"。 这是您要购买的加密货币及其交易结算货币的组合。
  • quantity : 要购买的加密货币数量。 请注意,此数量应符合交易所的最小交易单位要求。
  • price : 您愿意购买加密货币的最高价格。 只有当市场价格等于或低于此价格时,订单才会成交。

代码示例如下:

try:
    order = client.order_limit_buy(
        symbol=symbol,
        quantity=quantity,
        price=buy_price
    )
    print(f"限价买单已创建: {order}")
except Exception as e:
    print(f"创建订单时发生错误: {e}")

代码解释:

  • try...except 块用于捕获可能发生的异常,例如网络问题、API 密钥错误或无效的参数。
  • client.order_limit_buy() 函数返回一个包含订单信息的字典。 此信息包括订单ID、交易对、订单类型、订单状态等。
  • symbol 变量代表交易对,如 "BTCUSDT"。
  • quantity 变量定义了要购买的加密货币数量。
  • buy_price 变量指定了您愿意购买加密货币的最高价格。
  • 如果订单成功创建,将打印订单信息。
  • 如果创建订单时发生错误,将打印错误信息。

注意事项:

  • 在创建限价买单之前,请确保您已经设置了正确的 API 密钥和权限。
  • 请仔细检查您输入的参数,例如交易对、数量和价格。错误的参数可能导致订单无法执行或意外的损失。
  • 限价买单不保证一定成交。如果市场价格一直高于您设定的价格,订单将不会成交。
  • 请注意,交易所可能会收取交易手续费。
  • 建议使用适当的风险管理策略,例如设置止损单,以限制潜在的损失。

代码解释:

  • from binance.client import Client : 从 python-binance 库中导入 Client 类。该类是与币安API交互的核心,提供了访问各种币安服务所需的方法。您需要先安装此库才能使用。
  • api_key = 'YOUR_API_KEY' api_secret = 'YOUR_API_SECRET' : 将 YOUR_API_KEY YOUR_API_SECRET 替换为你在币安账户生成的实际 API Key 和 Secret Key。 务必妥善保管Secret Key,不要泄露给他人,否则可能导致资产损失。API Key 允许你的代码访问你的币安账户,并执行交易等操作。
  • client = Client(api_key, api_secret) : 创建一个 Binance 客户端实例。该实例使用你的API Key和Secret Key进行身份验证,以便与币安服务器建立连接。通过这个客户端实例,你可以调用各种API方法,例如获取市场数据、下单、查询账户信息等。
  • ticker = client.get_ticker(symbol='BTCUSDT') : 获取 BTC/USDT 交易对的当前价格。 get_ticker 方法返回一个包含各种市场数据的字典,包括最高价、最低价、成交量以及最近成交价。
  • price = float(ticker['lastPrice']) : 从 ticker 字典中提取 lastPrice (最近成交价) 并将其转换为浮点数类型。 这是因为从API获取的数据通常是字符串类型,进行后续计算需要转换为数值类型。
  • order = client.order_limit_buy(...) : 创建一个限价买单。 限价单是指以指定的价格或更低的价格购买一定数量的资产。只有当市场价格达到或低于你指定的价格时,该订单才会被执行。
    • symbol : 指定交易对,例如 BTCUSDT 表示比特币兑USDT。 币安支持多种交易对,你可以根据需要选择合适的交易对。
    • quantity : 指定要购买的数量,单位是交易对中的基础货币(例如BTCUSDT,基础货币是BTC)。 确保账户有足够的USDT余额来支付购买的比特币。
    • price : 指定购买价格。 这是你愿意支付的最高价格,只有当市场价格达到或低于这个价格时,订单才会被执行。 如果价格设置过高,订单可能会立即成交,变成市价单。如果价格设置过低,订单可能永远无法成交。
    • 可选参数: 你还可以设置订单的有效期,例如 timeInForce='GTC' (Good Till Cancelled) 表示订单会一直有效,直到被取消或完全成交。
  • try...except : 使用 try...except 块来捕获和处理可能发生的异常。 例如,网络连接错误、API 密钥无效、账户余额不足等情况都可能导致异常。 通过捕获异常,你可以避免程序崩溃,并向用户显示有用的错误信息。 需要详细记录错误日志,便于排查问题。

5. 运行交易脚本

完成脚本的编写和配置后,下一步是执行它。确保您的 Python 脚本(例如, trade.py )已保存到您的工作目录中。打开您的终端或命令提示符,导航到该目录,并使用以下命令运行脚本:

bash python trade.py

运行脚本后,它将连接到 Binance API,检索 BTC/USDT 的当前市场价格,并根据您设定的参数创建一个限价买单。如果一切顺利,您应该在终端窗口中看到类似以下内容的输出:

  • 当前 BTC/USDT 价格
  • 已创建订单的详细信息,包括订单类型、价格、数量等
  • 交易是否成功执行

为了验证订单是否已成功提交到 Binance,请登录您的 Binance 账户,并导航至 "订单历史" 页面。您应该能够在此处找到您刚刚创建的限价买单。订单状态将显示为 "已提交" 或 "待成交",直到满足指定价格时才会执行。

6. 监控和管理您的交易

一旦您的交易脚本开始运行,持续的监控和有效的管理是至关重要的。这不仅能帮助您及时发现并解决潜在问题,还能优化您的交易策略,提升盈利能力。

  • 检查订单状态: 使用 client.get_order(symbol=symbol, orderId=order['orderId']) 函数,您可以实时查询订单的当前状态。订单状态包括但不限于:NEW (新订单)、PARTIALLY_FILLED (部分成交)、FILLED (完全成交)、CANCELED (已取消)、REJECTED (已拒绝)、EXPIRED (已过期)。通过监控订单状态,您可以及时了解订单的执行情况,并根据需要采取相应措施。例如,如果订单长时间处于 NEW 状态,可能需要检查网络连接或市场深度。
  • 取消订单: 使用 client.cancel_order(symbol=symbol, orderId=order['orderId']) 函数可以取消尚未完全成交的订单。取消订单的时机非常重要,如果市场行情发生逆转,或者发现订单参数设置错误,及时取消订单可以有效避免损失。请注意,取消订单可能会产生少量手续费。您应确保理解交易所的订单取消策略,并谨慎操作。
  • 处理错误: 仔细阅读 API 返回的错误消息至关重要。这些错误消息通常包含有关问题的详细信息,例如无效的API密钥、错误的参数、账户余额不足或市场维护。API错误码和对应的含义通常可以在交易所的API文档中找到。根据错误消息,采取适当的措施解决问题。例如,如果遇到 InsufficientFunds 错误,表示账户余额不足,需要增加资金。处理错误时,务必保持冷静,避免盲目操作导致更大的损失。
  • 日志记录: 在您的交易脚本中添加详细的日志记录功能是必不可少的。日志记录可以帮助您跟踪交易活动,记录订单的创建、修改和取消,以及交易的成交价格和数量。通过分析日志,您可以识别潜在的问题,例如交易执行延迟、订单成交异常或策略逻辑错误。良好的日志记录不仅可以方便您进行调试和优化,还可以作为风险管理的依据,帮助您评估交易策略的有效性。建议记录包括时间戳、订单ID、交易对、交易方向(买入/卖出)、委托价格、委托数量、成交价格、成交数量以及任何相关的错误信息。

7. 更高级的功能

一旦您熟练掌握了基本的 API 交易,您就可以进一步探索并利用更高级的功能,从而优化您的交易策略并更有效地管理风险。

  • 实时市场数据流 (WebSockets): 利用 WebSockets 技术,您可以建立持久连接,实时接收关键的市场数据更新,例如最新成交价格、深度订单簿变化、交易量统计以及其他相关市场活动。这种高速的数据流使您能够对市场变化做出迅速反应,并执行基于最新信息的交易决策,显著提升您的交易策略的效率和响应能力。 相较于传统的REST API的轮询方式,WebSockets 减少了延迟,避免了因频繁请求而造成的资源浪费。
  • 高级交易策略: 除了简单的市价单和限价单之外,API 交易允许您开发并实施各种复杂的交易策略。 这包括设置止损单来限制潜在损失,利用追踪止损单在价格朝有利方向移动时自动调整止损价格,以及采用网格交易策略在特定价格区间内自动进行买卖操作。 还可以实现时间加权平均价格(TWAP)和成交量加权平均价格(VWAP)等算法交易策略,以更优的价格执行大额订单,减少市场冲击。
  • 全面的风险管理: 通过 API 接口,您可以实施更加精细化的风险管理措施。 除了设置每日交易额度和仓位规模限制之外,还可以监控您的投资组合的风险指标,如夏普比率、最大回撤等。 您还可以设置警报,当某些预定义的风险阈值被突破时,自动触发相应的操作,例如平仓或降低仓位。 一些高级 API 还提供对冲工具,帮助您降低市场波动带来的风险。
  • 历史数据回测: 在将新的交易策略投入实盘交易之前,至关重要的是对其进行回测。 利用 API 接口,您可以访问丰富的历史市场数据,并在这些数据上模拟您的交易策略的表现。 通过分析回测结果,您可以评估策略的盈利能力、风险水平以及对不同市场状况的适应性。 您可以不断优化您的策略参数,使其在不同的市场环境下都能获得最佳表现。一些平台还提供专门的回测引擎和可视化工具,帮助您更有效地进行策略评估和优化。

安全注意事项

  • 保护您的 API Key 和 Secret Key: 将您的 API Key 和 Secret Key 视为极其敏感的凭证,如同银行密码一样。切勿将它们明文存储在公共代码仓库(如 GitHub、GitLab)或任何非安全环境中。采用加密方式存储,并定期轮换 API Key 和 Secret Key,以降低泄露风险。考虑使用硬件安全模块(HSM)或密钥管理系统(KMS)来保护您的 API 密钥。永远不要通过不安全的渠道(例如电子邮件或聊天消息)分享您的 API 密钥。
  • 限制 IP 访问: 为了提高安全性,应严格限制允许访问您的 API 密钥的 IP 地址范围。通过在交易所的 API 设置中配置 IP 白名单,只允许来自特定服务器或机器的请求。如果您的应用程序只从少数几个已知 IP 地址发出请求,这将显著减少未经授权访问的风险。定期审查和更新 IP 白名单,以确保其与您的应用程序的实际部署环境保持一致。
  • 启用双重验证 (2FA): 在您的 Binance 账户上启用双重验证 (2FA) 是增强账户安全性的重要步骤。2FA 要求您在登录时提供除了密码之外的第二种验证方式,例如来自身份验证器应用程序 (如 Google Authenticator 或 Authy) 的一次性代码。即使您的密码泄露,攻击者也需要访问您的 2FA 设备才能登录您的账户,从而显著降低了账户被盗用的风险。
  • 使用沙盒环境: Binance 提供了沙盒环境(也称为测试网络或模拟交易环境),允许您在不承担真实资金风险的情况下测试您的交易策略和 API 集成。在将您的应用程序部署到真实环境之前,务必在沙盒环境中进行彻底的测试,以确保其功能正常且不会产生意外的后果。利用沙盒环境可以帮助您识别和修复潜在的错误或漏洞,从而避免在真实交易中造成损失。
  • 监控交易活动: 定期监控您的 Binance 账户活动,包括交易历史、订单记录和 API 使用情况,以检测任何未经授权或可疑的活动。设置警报,以便在发生异常交易或 API 调用时收到通知。关注异常大的交易量、不寻常的交易对或来自未知 IP 地址的 API 请求。如果您发现任何可疑活动,请立即更改您的密码、API 密钥,并联系 Binance 的客户支持。