订单层级¶
这些参数允许您在每一侧设置多个订单层级,并对每组订单的价差和大小进行更细粒度的控制。
order_levels
¶
在订单簿每一侧放置的订单层级数量。
** 提示:**
order_level_amount
¶
在第一层之后,后续订单层级的规模可以增加(如果设置为大于零的值)或减少(如果设置为小于零的值)。
** 提示:**
order_level_spread
¶
增量价差在第一层之后的后续订单层级中增加。
** 提示:**
警告
将order_level_spread
设置为非常低的数字可能会导致多个订单放置在同一价格水平上。例如,对于像 SNM/BTC 这样的资产,如果由于资产价值较低而将订单间隔百分比设置为 0.4(~0.4%),下一个订单的价格将四舍五入到交易所支持的最接近价格,在这种情况下可能导致多个订单被放置在同一价格水平上。
工作原理¶
输入order_levels
的值以指定您要在每一侧(买入和卖出)放置多少个订单。
注意
示例:输入3
将在订单簿的每一侧放置三个买入和三个卖出订单,总共 6 个订单。
用户还可以根据 order_level_amount 中指定的增量或减量,从第一个订单开始增加或减少后续订单的规模。如果您不希望多个订单规模增加,可以将其设置为 0 大于 0(即 0.4)以允许订单规模在第一层后增加 0.4 小于 0(即-2)以启用订单规模在第一层后减少 2。
注意
示例:如果订单起始规模为7000
,订单步长为1000
,则第二订单规模为8000
,第三订单为9000
。
order_level_spread
的逻辑与订单步长相同,但它会从第一个订单开始增加后续订单的价差。
注意
示例:第一个买入和卖出订单的价差为1
(1%),您的订单间隔金额为2
(2%)。第二个订单的价差为3
(3%),第三个订单为5
(5%)。
让我们现在关注订单的一侧:订单簿的"卖出"侧。考虑到上述示例场景,您的活跃订单将显示为:
示例配置¶
- market: BTC-USDT
- bid_spread: 1
- ask_spread: 1
- order_amount: 0.002
- order_levels: 3
- order_level_amount: 0.002
- order_level_spread: 0.5
使用上述参数运行机器人,status
命令显示 BTC-USDT 交易对中的 3 个订单层级:
您可能会注意到,我们输出的实际价差与您为百分比配置的参数并不完全相同。这是因为两件事:
- 量化:Hummingbot 调整订单价格以匹配交易所的最小价格变动规则以及
- 下订单后的市场价格变化。