# 虚拟买成功
|
import logging
|
|
from code_attribute.gpcode_manager import MustBuyCodesManager
|
from l2 import l2_data_manager
|
from l2.cancel_buy_strategy import HourCancelBigNumComputer, SecondCancelBigNumComputer, \
|
LCancelBigNumComputer, DCancelBigNumComputer, FastCancelBigNumComputer, GCancelBigNumComputer
|
from l2.l2_data_manager import OrderBeginPosInfo
|
from l2.l2_data_util import local_today_datas, local_today_num_operate_map
|
from l2.l2_sell_manager import L2MarketSellManager
|
from log_module.log import logger_l2_error
|
from trade.trade_data_manager import PlaceOrderCountManager
|
from trade.trade_queue_manager import THSBuy1VolumnManager
|
|
__thsBuy1VolumnManager = THSBuy1VolumnManager()
|
|
|
def virtual_buy_success(code):
|
# 已经不需要了,暂时注释掉
|
# 增加下单计算
|
# trade_data_manager.PlaceOrderCountManager().place_order(code)
|
# 删除之前的板上卖信息
|
# L2LimitUpSellStatisticUtil().delete(code)
|
pass
|
|
|
# 虚拟撤成功
|
def virtual_cancel_success(code, buy_single_index, buy_exec_index, total_datas):
|
l2_data_manager.TradePointManager().delete_buy_point(code)
|
SecondCancelBigNumComputer().cancel_success(code)
|
DCancelBigNumComputer().cancel_success(code)
|
LCancelBigNumComputer().cancel_success(code)
|
GCancelBigNumComputer().cancel_success(code)
|
# dask.compute(f1, f2, f5, f6, f7, f8)
|
|
|
# 真实买成功
|
def real_buy_success(code, tradePointManager):
|
def clear_max_buy1_volume(code):
|
# 下单成功,需要删除最大买1
|
__thsBuy1VolumnManager.clear_max_buy1_volume(code)
|
|
def h_cancel(code, buy_single_index, buy_exec_index):
|
try:
|
HourCancelBigNumComputer().place_order_success(code, buy_single_index, buy_exec_index,
|
local_today_datas.get(code))
|
except Exception as e:
|
logging.exception(e)
|
logger_l2_error.exception(e)
|
|
def l_cancel(code):
|
try:
|
LCancelBigNumComputer().place_order_success(code)
|
except Exception as e:
|
logging.exception(e)
|
logger_l2_error.exception(e)
|
|
def s_cancel(code):
|
try:
|
SecondCancelBigNumComputer().place_order_success(code)
|
except Exception as e:
|
logging.exception(e)
|
logger_l2_error.exception(e)
|
|
def f_cancel(code):
|
try:
|
FastCancelBigNumComputer().place_order_success(code)
|
except Exception as e:
|
logging.exception(e)
|
logger_l2_error.exception(e)
|
|
def g_cancel(code):
|
try:
|
GCancelBigNumComputer().place_order_success(code)
|
except Exception as e:
|
logging.exception(e)
|
logger_l2_error.exception(e)
|
|
order_begin_pos = tradePointManager.get_buy_compute_start_data_cache(
|
code)
|
|
clear_max_buy1_volume(code)
|
s_cancel(code)
|
# H撤暂时不生效
|
h_cancel(code, order_begin_pos.buy_single_index, order_begin_pos.buy_exec_index)
|
l_cancel(code)
|
g_cancel(code)
|
if order_begin_pos.mode == OrderBeginPosInfo.MODE_FAST:
|
f_cancel(code)
|
# 记录卖盘统计时间被用
|
L2MarketSellManager().set_sell_time_used(code, order_begin_pos.sell_info[0])
|
FastCancelBigNumComputer().set_trade_progress(code, order_begin_pos.buy_exec_index)
|
# 下单成功
|
PlaceOrderCountManager().place_order(code)
|
# 下单成功之后移除红名单
|
MustBuyCodesManager().remove_code(code)
|
|
|
# 真实撤成功
|
def real_cancel_success(code, buy_single_index, buy_exec_index, total_datas):
|
# 取消买入标识
|
l2_data_manager.TradePointManager().delete_buy_point(code)
|
SecondCancelBigNumComputer().cancel_success(code)
|
DCancelBigNumComputer().cancel_success(code)
|
LCancelBigNumComputer().cancel_success(code)
|
FastCancelBigNumComputer().cancel_success(code)
|
GCancelBigNumComputer().cancel_success(code)
|
|
|
if __name__ == "__main__":
|
pass
|