跳转到主要内容

Documentation Index

Fetch the complete documentation index at: https://docs.blockradar.co/llms.txt

Use this file to discover all available pages before exploring further.

简而言之
Blockradar 的 Liquidity Pool 允许已审核通过的 Liquidity Provider(LP)为资产对定义和管理汇率。汇率为内部 swap 引擎提供支持——当用户发起 swap 时,系统会自动从活跃的 LP 中选择最佳可用汇率,验证流动性,并执行交易。
Blockradar Liquidity Pool 汇率

前置条件

在使用 Liquidity Pool API 之前,请确保您已具备:
1

成为 Liquidity Provider

Liquidity Pool 仅向已审核通过的 Liquidity Provider 开放。要开始使用,请填写 LP 申请表,Blockradar 团队将审核您的申请并为您完成接入。
2

API 密钥

完成接入后,请从 Blockradar Dashboard 生成 API 密钥。前往 Developers 创建一个。
3

为您的 wallet 充值

请确保您的 treasury wallet 拥有足够的资产余额(用于您计划提供流动性的资产),以及用于支付网络手续费的原生代币。

工作原理

作为 Liquidity Provider,您可以为资产对(例如 BNB → USDC)定义汇率。当 Blockradar 平台上的用户发起 swap 时,系统会:
  1. 查找匹配的汇率——从所有活跃 LP 中针对所请求的资产对查找。
  2. 对候选项进行排序——按最佳汇率、LP 优先级和创建时间进行排序。
  3. 验证流动性——检查所选 LP 的 treasury wallet 是否有足够余额完成该 swap。
  4. 执行 swap——使用所选 LP 的汇率和 treasury 进行交易。

Rate Management

为任何受支持的资产对创建、更新、停用和重新启用汇率。

Amount Bands

为每个汇率定义最小和最大交易金额,以控制风险敞口并细分定价层级。

Version History

每次汇率变更都会创建一个新版本。完整历史记录会被保留,便于审计和分析。

Automatic Selection

系统会根据汇率、优先级和可用流动性,为每笔 swap 自动选择最佳的 LP。

Rate Lifecycle

汇率遵循清晰的生命周期,并具有完整的版本跟踪:

1. 创建汇率

为资产对定义新的汇率。该汇率以 active 状态从版本 1 开始。
curl --request POST \
  --url https://api.blockradar.co/v1/rates \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
    "fromAsset": "BNB",
    "toAsset": "USDC",
    "rate": "605.50",
    "minAmount": "0.01",
    "maxAmount": "100"
  }'

请求参数

参数类型是否必填说明
fromAssetstring要从中转出的资产符号(例如 BNB
toAssetstring转入的资产符号(例如 USDC
ratestring汇率。以字符串形式提供,避免浮点精度问题
minAmountstring此汇率的最小交易金额(含)
maxAmountstring最大交易金额(不含)。省略表示无上限

创建响应

{
  "message": "Rate created successfully",
  "statusCode": 201,
  "data": {
    "id": "d69078ef-2467-40f4-bb00-63394efe32c0",
    "fromAsset": "BNB",
    "toAsset": "USDC",
    "rate": "605.50",
    "minAmount": "0.01",
    "maxAmount": "100",
    "isActive": true,
    "status": "active",
    "version": 1,
    "network": "testnet",
    "createdAt": "2026-02-19T07:50:17.042Z"
  }
}

2. 更新汇率

修改现有活跃汇率的汇率值或金额限制。这将创建一个新版本——之前的版本会被自动标记为 superseded
curl --request PATCH \
  --url https://api.blockradar.co/v1/rates/{id} \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
    "rate": "610.00",
    "minAmount": "0.005"
  }'
仅提供您希望更改的字段——支持部分更新。

3. 停用汇率

临时下线一个汇率。该汇率将变为 deactivated 状态,不会再被选中用于 swap。
curl --request PATCH \
  --url https://api.blockradar.co/v1/rates/{id}/deactivate \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
    "reason": "Pausing for maintenance"
  }'

4. 重新启用汇率

将已停用的汇率重新上线。这将创建一个状态为 active新版本
curl --request PATCH \
  --url https://api.blockradar.co/v1/rates/{id}/reactivate \
  --header 'x-api-key: <api-key>'

Pricing Tools

在为新层级报价或对现有层级重新定价之前,请使用 Pricing Tools 检查您自己的覆盖范围,并与同业务板块的其他 Liquidity Provider 进行对比。

查询某资产对的活跃汇率

GET /rates/check-pair 会返回您在当前环境中为某资产对配置的所有活跃汇率,包括每个汇率的金额区间。可用于在开设新层级之前确认您是否已在为该资产对报价。
curl --request GET \
  --url 'https://api.blockradar.co/v1/rates/check-pair?fromAsset=USDT&toAsset=cNGN' \
  --header 'x-api-key: <api-key>'
Response
{
  "message": "Pair check completed",
  "statusCode": 200,
  "data": {
    "fromAsset": "USDT",
    "toAsset": "cNGN",
    "hasActiveRates": true,
    "activeRateCount": 2,
    "rates": [
      {
        "id": "d69078ef-2467-40f4-bb00-63394efe32c0",
        "rate": "1545.00",
        "minAmount": "10",
        "maxAmount": "1000",
        "version": 1,
        "createdAt": "2026-04-12T09:14:22.501Z"
      },
      {
        "id": "5b6683f0-6e92-4eaf-ae8d-5f2ddd76b376",
        "rate": "1547.50",
        "minAmount": "1000",
        "maxAmount": null,
        "version": 3,
        "createdAt": "2026-04-12T09:18:41.022Z"
      }
    ]
  }
}

与其他 LP 进行对标

GET /rates/market-benchmark 会返回您所在业务板块中其他 Liquidity Provider 针对某资产对的最佳竞争汇率。您自身的汇率会被排除,以便您看到自己实际在与之竞争的报价。每个资产对的结果会被缓存 60 秒。 传入 amount 可将基准限制为金额区间覆盖该交易规模的汇率,或传入 pairs(用逗号分隔的 from:to 条目,最多 20 个),即可在一次调用中获取一组基准。
curl --request GET \
  --url 'https://api.blockradar.co/v1/rates/market-benchmark?fromAsset=USDT&toAsset=cNGN' \
  --header 'x-api-key: <api-key>'
Single pair response
{
  "message": "Market benchmark retrieved",
  "statusCode": 200,
  "data": {
    "fromAsset": "USDT",
    "toAsset": "cNGN",
    "bestRate": "1547.50"
  }
}
Batch response
{
  "message": "Market benchmark retrieved",
  "statusCode": 200,
  "data": [
    { "fromAsset": "USDT", "toAsset": "cNGN", "bestRate": "1547.50" },
    { "fromAsset": "cNGN", "toAsset": "USDT", "bestRate": "0.000647" }
  ]
}
当没有其他 LP 为该资产对(或所提供的金额区间)设置活跃汇率时,bestRatenull

查看 Treasury 余额

GET /rates/treasury-balances 会返回出现在您活跃汇率中每种资产的聚合 treasury 余额,并按区块链分类。可用于监控您所报价资产对的流动性覆盖情况。 响应会排除链上余额为零的资产,并对同一资产/wallet 对被多个汇率引用时的条目进行去重。
curl --request GET \
  --url https://api.blockradar.co/v1/rates/treasury-balances \
  --header 'x-api-key: <api-key>'
Response
{
  "message": "Treasury balances retrieved successfully",
  "statusCode": 200,
  "data": [
    {
      "asset": "USDT",
      "totalBalance": "5000.00",
      "totalConvertedBalance": "5000.00",
      "chains": [
        {
          "blockchain": "ethereum",
          "balance": "3000.00",
          "convertedBalance": "3000.00",
          "walletAddress": "0xA1b2C3d4E5f6789012345678901234567890aBcD"
        },
        {
          "blockchain": "polygon",
          "balance": "2000.00",
          "convertedBalance": "2000.00",
          "walletAddress": "0xA1b2C3d4E5f6789012345678901234567890aBcD"
        }
      ]
    }
  ]
}

汇率版本控制

每次汇率被更新或重新启用时,都会创建一个新版本。先前的版本会被标记为 superseded。这提供了完整的审计轨迹。
字段说明
version顺序版本号,从 1 开始
rootRateId指向原始汇率——同一链路中的所有版本共享此 ID
previousRateId指向紧接的上一版本

版本链示例

v1 (active)  →  v2 (active, v1 superseded)  →  v3 (deactivated)  →  v4 (active, v3 superseded)

查看汇率历史

获取某汇率的完整版本历史:
curl --request GET \
  --url https://api.blockradar.co/v1/rates/{id}/history \
  --header 'x-api-key: <api-key>'

历史响应

{
  "message": "Rate history retrieved successfully",
  "statusCode": 200,
  "data": [
    {
      "id": "d69078ef-2467-40f4-bb00-63394efe32c0",
      "fromAsset": "BNB",
      "toAsset": "USDC",
      "network": "testnet",
      "rate": "605.50",
      "minAmount": "0.01",
      "maxAmount": null,
      "isActive": false,
      "status": "deactivated",
      "version": 1,
      "previousRateId": null,
      "rootRateId": null,
      "createdBy": "86964e42-79dc-4267-a2ca-3612c4b095a8",
      "deactivatedBy": "86964e42-79dc-4267-a2ca-3612c4b095a8",
      "deactivatedAt": "2026-02-25T18:13:48.113Z",
      "deactivationReason": "re",
      "createdAt": "2026-02-19T07:50:17.042Z",
      "updatedAt": "2026-02-25T18:13:48.101Z"
    }
  ],
  "meta": {
    "totalItems": 1,
    "itemCount": 1,
    "itemsPerPage": 10,
    "totalPages": 1,
    "currentPage": 1
  }
}

汇率状态

状态说明
active当前在线,可被选中用于 swap
superseded已被更新或重新启用产生的更新版本所替代
deactivated已被手动下线——可重新启用
superseded 是终态——这些记录属于历史记录,无法再被修改。

Amount Bands

每个汇率覆盖一个由 minAmountmaxAmount 定义的交易金额区间:
  • minAmount——下限(含)。低于此金额的交易不会使用该汇率。
  • maxAmount——上限(不含)。设置为 null(即省略)表示无上限。

同一资产对的多个汇率

您可以为同一资产对创建具有不同金额区间的多个汇率,以提供分层定价:
汇率区间使用场景
605.000.01 – 10 BNB小额交易
606.5010 – 100 BNB中等金额交易
608.00100+ BNB大额交易
同一资产对的金额区间不得重叠。如果新汇率的区间与同一资产对的另一个活跃汇率发生重叠,系统将拒绝该汇率。

流动性验证

在使用您的汇率执行 swap 之前,系统会验证您的 treasury wallet 是否拥有:
  1. 足够的目标资产代币余额,以覆盖 swap 输出(amount x rate)。
  2. 足够的原生代币余额(ETH、BNB 等),以支付转账的网络手续费。
如果您的 wallet 余额不足,系统会跳过您的汇率,转而使用下一个可用的 LP。当您的流动性较低时,您将通过电子邮件收到提醒。
请保持 treasury wallet 资金充足,以避免错过 swap 机会。当余额低于阈值时,系统会通知您。

最佳实践

Rate Management

  • 关注市场行情,定期更新汇率以保持竞争力
  • 使用 Amount Bands 为不同交易规模提供分层定价
  • 在维护期间或高波动时段停用汇率,而不是直接删除
  • 查看 Version History 以跟踪汇率随时间的变化

流动性

  • 在 treasury wallet 中为目标资产和原生代币都保留充足余额
  • 设置监控,以便接收余额过低的警报
  • 主动为 wallet 充值,避免出现服务中断

API 参考

Endpoint说明
Create Rate为资产对创建新的汇率
Get Rate通过 ID 获取单个汇率
Update Rate更新现有汇率(会创建新版本)
Deactivate Rate下线一个汇率
Reactivate Rate将已停用的汇率重新上线
Get Rate History查看某汇率的完整版本历史
Check Pair列出您针对特定资产对的活跃汇率
Get Market Benchmark某资产对(或一批资产对)的最佳竞争汇率,不含您自己的报价
Get Treasury Balances按资产和区块链聚合的 treasury 余额

支持

Liquidity Pool 面向机构和专业的流动性提供者设计。申请成为 LP,然后在 testnet 上测试您的汇率配置,再正式上线。