| | |
| | | from l2 import l2_data_manager, l2_data_log |
| | | |
| | | from log_module.log import * |
| | | from trade.buy_money_count_setting import BuyMoneyUtil |
| | | from trade.huaxin.huaxin_trade_record_manager import TradeOrderIdManager |
| | | from trade.order_statistic import DealAndDelegateWithBuyModeDataManager |
| | | from trade.trade_data_manager import AccountMoneyManager, RadicalBuyDealCodesManager |
| | | from utils import import_util, tool, huaxin_util |
| | | |
| | |
| | | guiTrade = None # trade_gui.THSGuiTrade() if trade_gui is not None else None |
| | | |
| | | latest_trade_delegate_data = [] |
| | | |
| | | # 成交的代码 |
| | | deal_codes = set() |
| | | # 委托代码 |
| | | delegate_codes = set() |
| | | |
| | | |
| | | # 关闭购买入口 |
| | |
| | | |
| | | def get_mode_cache(self): |
| | | return self.__auto_cancel_sell_mode |
| | | |
| | | |
| | | # 代码的交易状态管理 |
| | | class CodesTradeStateManager: |
| | |
| | | async_log_util.info(logger_trade, "{} trade_manager.__buy 开始".format(code)) |
| | | try: |
| | | if constant.API_TRADE_ENABLE: |
| | | count = tool.get_buy_volume(price) |
| | | can_buy, money, msg = BuyMoneyUtil.get_buy_data(tool.get_now_time_str(), mode, DealAndDelegateWithBuyModeDataManager().get_deal_codes_info(mode), DealAndDelegateWithBuyModeDataManager().get_delegates_codes_info(mode)) |
| | | if not can_buy: |
| | | raise Exception(msg) |
| | | count = tool.get_buy_volume_by_money(price, money) |
| | | |
| | | # if mode == OrderBeginPosInfo.MODE_RADICAL: |
| | | # # 激进买入金额为1手 |
| | | # count = 100 |
| | |
| | | # 加入黑名单 |
| | | if not l2_trade_util.is_in_forbidden_trade_codes(code): |
| | | l2_trade_util.forbidden_trade(code, "buy success", force=True) |
| | | if TradePointManager().get_latest_place_order_mode(code) == OrderBeginPosInfo.MODE_RADICAL: |
| | | mode = TradePointManager().get_latest_place_order_mode(code) |
| | | if mode is None: |
| | | mode = OrderBeginPosInfo.MODE_NORMAL |
| | | DealAndDelegateWithBuyModeDataManager().add_deal_code(code, tool.get_now_time_str(), mode) |
| | | if mode == OrderBeginPosInfo.MODE_RADICAL: |
| | | RadicalBuyDealCodesManager().add_deal_code(code) |
| | | # 取s消所有的挂单 |
| | | if constant.API_TRADE_ENABLE: |