| | |
| | | canceled_buyno_map = local_today_canceled_buyno_map.get(code) |
| | | |
| | | # 如果撤单比例设置为100%就不需要计算下单位后面的订单 |
| | | need_compute_after = abs(thresh_hold_rate - 1.00) > 0.0001 |
| | | need_compute_after = False if thresh_hold_rate - 1.00 >= -0.0001 else True |
| | | |
| | | dealing_info = HuaXinBuyOrderManager.get_dealing_order_info(code) |
| | | canceled_watch_indexes = set() |
| | | for wi in watch_indexes: |
| | | cancel_data = L2DataComputeUtil.is_canceled(code, wi, total_data, canceled_buyno_map, |
| | | dealing_info[0] if dealing_info else None, |
| | |
| | | 10 - after_place_order_index_by_dict[str(wi)]) // 10 |
| | | else: |
| | | canceled_num += total_data[wi]["val"]["num"] |
| | | canceled_watch_indexes.add(wi) |
| | | canceled_indexes.append(cancel_data["index"]) |
| | | # if wi == watch_indexes_list[-1] and left_count == 0: |
| | | # # 离下单位置最近的一个撤单,必须触发撤单 |
| | |
| | | thresh_hold_rate = min(0.49, thresh_hold_rate) |
| | | l2_log.l_cancel_debug(code, |
| | | f"L后计算范围:{start_index}-{end_index},已撤单比例:{rate}/{thresh_hold_rate}, 下单位之后的索引:{after_place_order_index_dict}, 最大单-({max_num},{max_num_count}), 人为设置-{cancel_rate_info}, 真实下单位-{real_place_order_info}, 大卖单成交:{total_sell_nums}手") |
| | | l2_log.l_cancel_debug(code, f"L后已撤手数:{canceled_num}/{total_num} 撤单索引:{canceled_watch_indexes}") |
| | | if rate >= thresh_hold_rate: |
| | | canceled_indexes.sort() |
| | | l2_log.l_cancel_debug(code, f"L后撤单,撤单位置:{canceled_indexes[-1]}") |