| | |
| | | |
| | | guiTrade = THSGuiTrade() |
| | | |
| | | latest_trade_delegate_data = [] |
| | | |
| | | |
| | | # 获取交易状态 |
| | | def get_trade_state(code): |
| | |
| | | _time = data["time"] |
| | | if _time == "00:00:00": |
| | | continue |
| | | # 买入成功 |
| | | if code is not None and int(data["type"]) == 0: |
| | | l2_trade_util.forbidden_trade(code) |
| | | state = get_trade_state(code) |
| | |
| | | l2_data_manager.TradePointManager.delete_buy_point(code) |
| | | # 移除交易窗口分配 |
| | | THSBuyWinManagerNew.cancel_distribute_win_for_code(code) |
| | | # TODO 完全成交后移除L2 |
| | | # 交易成功时间过去3s之后,且当前委托列表里面还有该代码数据就再次执行撤单 |
| | | if tool.trade_time_sub(tool.get_now_time_str(), _time) > 3: |
| | | # 获取到当前是否委托 |
| | | for dd in latest_trade_delegate_data: |
| | | if dd["code"] == code: |
| | | logger_trade.info("{}交易成功触发,重复下单撤单".format(code)) |
| | | start_cancel_buy(code, True) |
| | | |
| | | |
| | | # 处理委托成功数据 |
| | | def process_trade_delegate_data(datas): |
| | | if datas is None: |
| | | return None |
| | | latest_trade_delegate_data.clear() |
| | | latest_trade_delegate_data.extend(datas) |
| | | codes = [] |
| | | for data in datas: |
| | | |
| | | code = data["code"] |
| | | if code is not None: |
| | | codes.append(code) |