合约占用保证金包含两部分,仓位占用的保证金和挂单占用的保证金。
其中,由于止盈止损挂单(包含限价止损、市价止损和追踪止损订单)不占用保证金,下单和触发时计算下单保证金,所以挂单占用保证金部分仅指限价挂单。
合约占用保证金(包含持仓和挂单)将通过以下公式计算:
合约的占用保证金= max(绝对值(仓位名义价值+ 买单挂单价值), 绝对值(仓位名义价值- 卖单挂单价值)) / 杠杆
合约的占用保证金= 多方向占用保证金+ 空方向占用保证金
= max(绝对值(多方向仓位名义价值+ 多方向买单挂单价值), 绝对值(多方向仓位名义价值- 多方向卖单挂单价值)) / 杠杆+ max(绝对值(空方向仓位名义价值+ 空方向买单挂单价值), 绝对值(空方向仓位名义价值- 空方向卖单挂单价值)) / 杠杆
多方向和空方向指positionSide字段为LONG或者SHORT的仓位和挂单
以上计算中,
仓位名义价值:
U本位合约,仓位名义价值 = 仓位大小(币单位) * 标记价格
币本位合约,仓位名义价值 = 仓位大小(张单位) * 合约面值/ 标记价格
挂单价值:
U本位合约,挂单名义价值 = 挂单数量(币单位) * 限价价格
币本位合约,挂单名义价值 = 挂单数量(张单位) * 合约面值/ 限价价格
PS.仓位如果为买/做多方向,仓位大小为正数;卖/做空方向,仓位大小为负数。
举例说明:
让我们来计算如上仓位的保证金要求:
保证金要求 = max(abs(10,000 USDT + 1,900 USDT), abs(10,000 USDT - 2,200)) / 2
= 5,950 美元
当新提交订单被判定为开仓订单时,系统将会进行保证金检查,被判定为减仓的委托不会进行保证金检查。
如果满足以下条件,新订单即被判断为开仓订单,需进行下单保证金检查:
1)对于买单:
举例说明:
假设您有数量1 BTCUSDT 的空仓和一个0.8 BTCUSDT 的做多挂单;
您现在还想下0.5 BTCUSDT 的限价多单;
0.5 BTCUSDT > (1 - 0.8) BTCUSDT, 您的新订单会被认为是开仓订单。
2)对于卖单:
举例说明:
假设您有一个1.4 BTCUSDT的多仓,和一个0.8 BTCUSDT的做空限价挂单;
您现在还想下一个0.5 BTCUSDT的限价空单;
0.5 BTCUSDT < (1.4 - 0.8) BTCUSDT, 您的新订单不会被认为是开仓订单。
需要注意的是“只减仓(Reduce Only)”订单如果满足以上条件也需要进行下单保证金检查,所以提交新只减仓订单也有被系统拒绝的情况。
只减仓Reduce Only(以下缩写为RO)订单大致规则如下:
开仓订单需满足以下条件才可下单成功:
1)开仓成本 ≤ 可用余额
其中开仓成本包含初始保证金,和开仓亏损,具体计算请参考这篇文章。
2)下单后合约整体名义价值 ≤ 当前杠杆允许的最大名义价值,即为当前杠杆需被支持,且在最大名义价值的范围内
各合约支持的杠杆倍数,和名义价值详细请查看这篇文章。