logo
查找关于我们算法交易平台的常见问题解答
算法相关

1. TWAP/VWAP 系列中有 TWAP、VWAP、Boost TWAP、Boost VWAP,Boost 系列比普通 TWAP/VWAP 有什么不同?

高频信号叠加: Boost 系列算法叠加了高频 Alpha 信号和流动量 Alpha 信号,能动态预测市场走势,并据此调整交易进度及是否采用市价单 (taker)。普通 TWAP/VWAP 策略使用的 Alpha 信号较轻量,交易进度更固定。
支持范围: Boost 系列目前仅支持 Binance 平台的部分合约品种,包括:BTCUSDT、ETHUSDT、SOLUSDT、BNBUSDT、LTCUSDT、AVAXUSDT、XLMUSDT、XRPUSDT、DOGEUSDT、ADAUSDT、BCHUSDT、FILUSDT、1000SATSUSDT、CRVUSDT 等。
选择建议: 若主要交易主流币且希望算法根据市场变化灵活调整下单节奏,以争取更优执行价格,建议选择 Boost 系列;若希望紧贴 TWAP/VWAP 基准执行,并严格控制挂单比例(Maker 率)和交易进度,建议选择普通系列。

2. 核心算法参数如何理解?

makerRateLimit: 最低挂单成交比例。限制算法交易中的最低 Maker(被动成交)占比。但该参数优先级低于 mustComplete 以及 upTolerance/ lowTolerance 。如果订单执行时间较短,或 upTolerance/ lowTolerance 设置较严格,则最终 Maker 成交率可能低于此参数设定值。
povLimit: 最大市场成交量占比,也称"POV(参与率)"。限制算法单在单位时间内的成交量相对于市场总成交量的上限,避免在流动性较差时过度成交。如果 mustComplete 为 true,则无论市场状况如何,算法都会在指定时间内完成全部交易量。
upTolerance / lowTolerance: 超前/落后基准进度的允许偏差,用于控制交易进度。若希望订单执行进度贴近 TWAP/VWAP 基准,可将 upTolerance 和 lowTolerance 设定得较严格(例如 upTolerance=2%,lowTolerance=10%),并将 strictUpBound 设为 true,这样算法会更均匀地拆单执行。若对跟随基准进度要求不高,可使用默认容差参数,让算法有更灵活的进度调整空间。
tailOrderProtection: 尾单保护。尾单指小于交易所最小下单量的剩余订单。当母单总量接近交易所最小下单量时,建议关闭尾单保护(设置为 False)。此时尾单通常会跟随前一笔订单以市价单方式成交,从而确保全部执行完毕,但这样可能降低整体的 Maker 成交比例。如果母单总量较大,尾单占比很小,可以选择开启或关闭,该设置对整体影响不大(交易进度有时显示 99%+,即尾单未执行的情况)。
startTime: 算法开始时间。
  • 不设置开始时间:订单将在提交后立即开始执行。
  • 设置开始时间:请确保 开始时间 + 执行时长 晚于当前时间,否则订单会因过期而无法执行。

3. 下单支持哪些数量单位,如何设置?

平台支持两种数量单位,但只能设置其中一个:
  • totalQuantity: 交易币的数量(例如:BTC/USDT 交易对中,totalQuantity 表示 BTC 的数量)
  • orderNotional: 计价币的金额(例如:BTC/USDT 交易对中,orderNotional 表示 USDT 的金额)

4. 按照orderNotional下单是否在期初确定固定的下单数量?

当使用 orderNotional 参数时,系统会在整个交易执行过程中,根据市场价格动态调整,逐步向目标金额(计价币金额)靠近,而不是根据初始价格确定固定的交易数量。

5. 使用 orderNotional 平仓时是否存在无法完全平仓的情况?

问题场景: 假设当前有 -10U 的 DOGEUSDT 空仓(名义价值),想要平完这个空仓,使用 orderNotional = 10 和 isTargetPosition = False 下单
可能存在的问题: 下单过程中市场价格波动可能导致平不干净
  • 交易所锚定的是币数,而非名义价值
  • 当使用 orderNotional 时,会在整个交易执行过程中,根据市场价格动态调整,逐步向目标金额(计价币金额)靠近,而不是根据初始价格确定固定的交易数量。
  • 如果在下单执行过程中,市场价格上涨(对于平空仓的情况),实际成交的币数可能不足以完全平掉原有的空仓
解决方案:
  • 推荐方案: 使用 isTargetPosition = true 配合 totalQuantity = 0,系统会自动计算需要平仓的币数,确保完全平仓
  • 替代方案: 使用 totalQuantity 直接指定需要平仓的币数(而不是名义价值),这样可以确保平仓的币数准确,不受价格波动影响

6. isTargetPosition 参数(按照目标仓位下单)如何使用?

isTargetPosition: 根据目标仓位进行下单的参数。当启用此功能时,算法会读取您当前账户的仓位,然后计算与目标仓位的差额来下单
当 isTargetPosition = true 时:
  • totalQuantity 必填(表示目标仓位数量)
  • 禁止填写 orderNotional(此模式下只支持按持仓数量目标下单)
isTargetPosition 不传的情况下,默认为 false
side 参数与 isTargetPosition 的组合使用:
  • 如果 isTargetPosition = false:side 代表交易方向
    • 可选值:buy(买入)、sell(卖出)
    • 合约交易中与 reduceOnly 组合,reduceOnly = true 时:
      • buy 代表买入平空
      • sell 代表卖出平多
  • 如果 isTargetPosition = true:side 代表仓位方向
    • 可选值:buy(多头)、sell(空头)

7. 合约仓位模式如何选择?

目前平台暂不支持双向持仓模式,仅支持单向持仓