| | |
| | | |
| | | # 交易目标票模式 |
| | | class TradeTargetCodeModeManager: |
| | | # 只买辨识度 |
| | | MODE_ONLY_BUY_SPECIAL_CODES = 2 |
| | | # 只买想买单 |
| | | MODE_ONLY_BUY_WANT_CODES = 1 |
| | | # 买所有 |
| | |
| | | self.__trade_buy_mode_cache = self.get_mode() |
| | | |
| | | def set_mode(self, mode): |
| | | if mode != self.MODE_ONLY_BUY_WANT_CODES and mode != self.MODE_BUY_ALL: |
| | | if mode != self.MODE_ONLY_BUY_WANT_CODES and mode != self.MODE_BUY_ALL and mode != self.MODE_ONLY_BUY_SPECIAL_CODES: |
| | | raise Exception("mode参数值错误") |
| | | self.__trade_buy_mode_cache = mode |
| | | RedisUtils.setex(self.__get_redis(), "trade_buy_mode", tool.get_expire(), mode) |
| | |
| | | |
| | | # 开始取消买入 |
| | | def start_cancel_buy(code, force=False): |
| | | """ |
| | | 开始撤单 |
| | | @param code: |
| | | @param force: |
| | | @return: |
| | | """ |
| | | async_log_util.info(logger_trade, "{} trade_manager.start_cancel_buy 开始".format(code)) |
| | | trade_state = __CodesTradeStateManager.get_trade_state_cache(code) |
| | | try: |
| | |
| | | # 删除买撤记录的临时信息 |
| | | kp_client_msg_manager.add_msg(code, "买入成交") |
| | | l2_data_manager.TradePointManager().delete_buy_point(code) |
| | | # 移除交易窗口分配 |
| | | if trade_gui is not None: |
| | | trade_gui.THSBuyWinManagerNew.cancel_distribute_win_for_code(code) |
| | | # 交易成功时间过去3s之后,且当前委托列表里面还有该代码数据就再次执行撤单 |
| | | # 新版下单不处理 |
| | | if not constant.IS_NEW_VERSION_PLACE_ORDER: |