合约规则

概览

  • Backpack 所有子账户均为全仓模式,保证金在子账户内独立计算。

  • 所有产品(现货、合约、现货杠杆、借贷)共用同一个账户。

  • 当前所有合约市场均以USDC计价和结算。

  • 出借资产可作为保证金,用于开仓和维持合约仓位,利率依据借贷市场的实时利用率曲线动态调整。

  • 未实现盈亏同样计入权益,并持续产生利息;如有需要,您也可以选择持续结算盈亏。

  • 强平时,系统会优先通过订单簿进行平仓;当触发自动关闭保证金阈值时,仓位将由后备流动性提供者(BLP)接手。

保证金与抵押品

项目

描述

公式

保证金价值

折扣后的抵押资产名义价值

Token数量×标记价格×抵押权重\text{Token数量} \times \text{标记价格} \times \text{抵押权重}

账户总保证金

所有抵押资产的折扣后总价值

(保证金价值) 所有抵押资产\sum \text{(保证金价值)} \text{ 所有抵押资产}

未实现盈亏

持仓未实现盈亏

仓位数量×(标记价格平均开仓价格)\text{仓位数量} \times (\text{标记价格} - \text{平均开仓价格})

净风险敞口数量

当前开仓和增加风险的挂单数量

仓位数量+增加风险的挂单数量\text{仓位数量} + \text{增加风险的挂单数量}

净风险敞口名义价值

当前开仓和增加风险的挂单名义价值

净风险敞口数量×标记价格\text{净风险敞口数量} \times \text{标记价格}

总风险敞口名义价值

所有合约和现货杠杆仓位的风险敞口名义总和

(净敞口名义金额)涵盖所有期货和现货保证金头寸\sum \text{(净敞口名义金额)} \text{涵盖所有期货和现货保证金头寸}

基础初始保证金率

基础初始保证金率,不考虑仓位规模

max(1平台最大杠杆,1用户自定义最大杠杆)\max\left(\dfrac{1}{\text{平台最大杠杆}}, \dfrac{1}{\text{用户自定义最大杠杆}}\right)

仓位初始保证金率 (IMF)

按仓位规模调整的初始保证金率

max(基础初始保证金率,初始保证金系数×仓位名义价值)\max \left(\text{基础初始保证金率}, \text{初始保证金系数} \times \sqrt{\text{仓位名义价值}}\right)

仓位维持保证金率 (MMF)

按仓位规模调整的维持保证金率

max(基础维持保证金率,维持保证金系数×仓位名义价值)\max \left(\text{基础维持保证金率}, \text{维持保证金系数} \times \sqrt{\text{仓位名义价值}}\right)

账户初始保证金率

开新仓所需的最低保证金率

max(1最大杠杆,(仓位名义价值×仓位初始保证金率)总风险敞口名义价值)\max\left(\dfrac{1}{\text{最大杠杆}}, \dfrac{\sum \text{(仓位名义价值} \times \text{仓位初始保证金率)}}{\text{总风险敞口名义价值}}\right)

账户维持保证金率

避免强平所需的最低保证金率

(仓位名义价值×仓位维持保证金率)总风险敞口名义价值\dfrac{\sum \text{(仓位名义价值} \times \text{仓位维持保证金率)}}{\text{总风险敞口名义价值}}

净权益

账户总净权益

总保证金价值+总未实现盈亏+未结算余额总借款负债\text{总保证金价值} + \text{总未实现盈亏} + \text{未结算余额} - \text{总借款负债}

已占用权益

维持所有仓位和挂单所需的权益

初始保证金率×所有仓位和挂单的总风险敞口名义价值\text{初始保证金率} \times \text{所有仓位和挂单的} \text{总风险敞口名义价值}

可用权益

可用于开新仓的权益

净权益已占用权益\text{净权益} - \text{已占用权益}

账户保证金率(MF)

当前仓位与账户权益的杠杆比率

净权益总风险敞口名义价值\dfrac{\text{净权益}}{\text{总风险敞口名义价值}}

自动关闭保证金率

触发后备流动性提供者强平的保证金率

max(账户MMFACMF分母,账户MMFACMF 偏移量)\max \left(\dfrac{\text{账户MMF}}{\text{ACMF分母}}, \text{账户MMF} - \text{ACMF 偏移量}\right)

标记价格与指数价格

Backpack 使用以下逻辑计算标记价格,优先顺序如下:

  1. 指数价格 + “中间价与指数价格差”的5分钟移动平均;中间价为最优买价和最优卖价的均值;

  2. 直接使用指数价格;

  3. 最优买价、最优卖价和最新成交价的中位数;

  4. Backpack 的最优买价和最优卖价均价;

  5. Backpack 的最新成交价。

当必要数据缺失或数据失效时,系统会切换到备选逻辑。

关于指数价格,我们从从多个交易所获取市场价格。

  • 取{最优买价,最优卖价,最新成交价}的中位数作为该交易所价格;

  • 计算所有交易所价格的中位数;

    • 设置价格上下限:高于中位数30bps的价格按上限计,低于中位数30bps的价格按下限计;

  • 每个交易所都有对应的权重,最终按加权平均计算指数价格。


资金费率

  • 系统每秒记录当前资金费率并形成时间序列:

    • 资金费率 = 溢价 / 指数价格

    • 溢价 = 标记价格 - 指数价格

  • 每个资金费率周期结束时,计算该周期内资金费率的平均值.

  • 并根据市场配置的上限和下限进行调整(超出上限按上限计算,低于下限按下限计算)。

  • 其结果就是平均资金费率。

  • 资金费用计算方式:平均资金费率 × 每个仓位净数量 × 当前标记价格


价格区间限制

限价单价格区间

  • 适用于限价单。

  • 我们计算 {最优买价, 最优卖价, 最新成交价} 的中位数,这称为活跃价格(Active Price)。

  • 然后,我们设定最大倍率(Max Multiplier)和最小倍率(Min Multiplier)两个可配置参数。

  • 如果限价订单的价格高于 活跃价格 * 最大倍率,则该订单将被拒绝。反之,如果限价订单的价格低于 活跃价格 * 最小倍率,则该订单也将被拒绝。

价格冲击区间

  • 适用于做市订单。

  • 设定参数最大冲击倍率(Max Impact Multiplier)和最小冲击倍率(Min Impact Multiplier)。

  • 对于买单:订单只能成交到最优卖价 * 最大冲击倍率的价格水平。如果订单在该价格水平未被完全成交,则订单将到期,部分成交。对于卖单:逻辑相同,适用于最优买价 * 最小冲击倍率。

均值标记价格区间

  • 计算5 分钟滑动均值(Moving Mean Average)的标记价格(Mark Price),称为均值标记价格(Mean Mark Price)。

  • 设定最大倍率(Max Multiplier)和最小倍率(Min Multiplier)两个参数。

  • 当提交做市订单(Maker Order)时:订单最多只能成交到 均值标记价格 * 最大倍率 的价格水平。如果订单未完全成交,则会到期,部分成交。反之,对于最小倍率,逻辑相同。此机制与价格冲击区间类似。

均值溢价区间

  • 计算5 分钟滑动均值的溢价(Premium),称为均值溢价。

  • 设定容差百分比(Tolerance Percentage)参数。

  • 若容差百分比为 1%,且均值溢价为 3%,则:订单最多只能成交到**当前溢价达到 4%**的价格水平。如果订单未完全成交,则会到期,部分成交。

  • 若容差百分比为 1%,且均值溢价为 -3%,则:订单最多只能成交到当前溢价达到 -4%的价格水平。如果订单未完全成交,则会到期,部分成交。

Last updated