fix(gateApi): 修复网格交易止损单数量计算逻辑
- 修改多仓追挂止损逻辑,根据配置数量计算实际止损单个数
- 更新空仓追挂止损逻辑,按成交张数除以配置数量确定止损单数量
- 调整日志输出信息,显示成交张数和追加止损单个数
- 修正循环次数计算方式,避免生成过多止损单
| | |
| | | furthestSlId = gridId; |
| | | interval = 2; |
| | | } |
| | | log.info("[Gate] 多仓追挂止损, 当前最远止损gridId:{}, 追加{}张", furthestSlId, filledQty); |
| | | for (int i = 0; i < filledQty; i++) { |
| | | int stopLossCount = filledQty / Integer.parseInt(config.getQuantity()); |
| | | log.info("[Gate] 多仓追挂止损, 当前最远止损gridId:{}, 成交{}张, 追加{}个止损单", furthestSlId, filledQty, stopLossCount); |
| | | for (int i = 0; i < stopLossCount; i++) { |
| | | int newSlId = furthestSlId - i - interval; |
| | | GridElement elem = GridElement.findById(newSlId); |
| | | if (elem == null) { |
| | |
| | | furthestSlId = gridId; |
| | | interval = 2; |
| | | } |
| | | log.info("[Gate] 空仓追挂止损, 当前最远止损gridId:{}, 追加{}张", furthestSlId, filledQty); |
| | | for (int i = 0; i < filledQty; i++) { |
| | | int stopLossCount = filledQty / Integer.parseInt(config.getQuantity()); |
| | | log.info("[Gate] 空仓追挂止损, 当前最远止损gridId:{}, 成交{}张, 追加{}个止损单", furthestSlId, filledQty, stopLossCount); |
| | | for (int i = 0; i < stopLossCount; i++) { |
| | | int newSlId = furthestSlId + i + interval; |
| | | GridElement elem = GridElement.findById(newSlId); |
| | | if (elem == null) { |