跳转至内容

乒乓

更新于 v0.28.0

此功能启用乒乓策略,Hummingbot 在该策略中交替下达买入和卖出订单。

ping_pong_enabled

是否在买入和卖出之间交替。

** 提示:**

Would you like to use the ping pong feature and alternate between buy and sell orders after fills?
>>>

工作原理

乒乓策略通过仅在已成交订单的相反侧创建订单来尝试保持买入和卖出的平衡。只要 ping_pong 设置为启用,它将持续在已成交订单的相反侧创建订单。例如:

由于期间 1 的买入订单已成交,机器人停止放置买入订单,仅放置卖出订单(期间 2-4)。只有当卖出订单最终成交(期间 4)时,才会恢复创建买入和卖出订单(期间 5)。

默认情况下,此参数设置为 False。启用后,在任一侧(买入/卖出)发生订单成交事件后,它只会在下次刷新时在相反侧创建订单。

例如,如果您的买入订单成交且卖出订单被取消,则机器人只需创建卖出订单直到成交。

使用 stop 命令停止策略会中断当前的乒乓逻辑。重新启动后,机器人将首先创建买入和卖出订单,前提是您有足够的余额在每一侧下单。

单订单层级的乒乓

以下场景展示了当一侧成交时乒乓如何平衡交易。

  1. 买入订单 b1 和卖出订单 s1 被创建
  2. b1 成交,s1 未成交时被取消
  3. 卖出订单 s2 被创建
  4. s2 成交
  5. 买入订单 b3 和卖出订单 s3 被创建

请注意,买入订单 b2 未被创建,以尝试抵消之前的交易。

多订单层级的乒乓

假设最初我们在每一侧有 2 个订单,买入订单 b1、b2 和卖出订单 s1、s2。

  1. b1 成交,b2、s1、s2 未成交时被取消
  2. 买入订单 b3 和卖出订单 s3、s4 被创建
  3. s3 成交,b3、s4 未成交时被取消
  4. 买入订单 b4 和卖出订单 s5 被创建
  5. s5 成交,b4 未成交时被取消
  6. 买入订单 b5 被创建
  7. b5 成交
  8. 买入订单 b6、b7 和卖出订单 s6、s7 被创建