| | |
| | | from unittest import mock |
| | | |
| | | from code_attribute import big_money_num_manager, gpcode_manager |
| | | from logs_ import log |
| | | from db.redis_manager import RedisUtils |
| | | from log_module import log, log_export |
| | | from utils import tool |
| | | from db import redis_manager |
| | | from l2 import l2_log, l2_data_manager, transaction_progress |
| | |
| | | redis_l2 = redis_manager.RedisManager(1).getRedis() |
| | | keys = ["buy1_volumn_latest_info-{}", "m_big_money_begin-{}", "m_big_money_process_index-{}"] |
| | | for k in keys: |
| | | redis_l2.delete(k.format(code)) |
| | | l2.l2_data_manager.TradePointManager.delete_buy_point(code) |
| | | RedisUtils.delete(redis_l2, k.format(code), auto_free=False) |
| | | RedisUtils.realse(redis_l2) |
| | | l2.l2_data_manager.TradePointManager().delete_buy_point(code) |
| | | big_money_num_manager.reset(code) |
| | | redis_trade = redis_manager.RedisManager(2).getRedis() |
| | | redis_trade.delete("trade-state-{}".format(code)) |
| | | trade_data_manager.placeordercountmanager.clear_place_order_count(code) |
| | | RedisUtils.delete(redis_manager.RedisManager(2).getRedis(), "trade-state-{}".format(code)) |
| | | trade_data_manager.PlaceOrderCountManager().clear_place_order_count(code) |
| | | redis_info = redis_manager.RedisManager(0).getRedis() |
| | | keys = redis_info.keys("*{}*".format(code)) |
| | | keys = RedisUtils.keys(redis_info, "*{}*".format(code), auto_free=False) |
| | | for k in keys: |
| | | if k.find("pre") is not None: |
| | | continue |
| | | if k.find("zyltgb") is not None: |
| | | continue |
| | | redis_info.delete(k) |
| | | RedisUtils.delete(redis_info, k, auto_free=False) |
| | | RedisUtils.realse(redis_info) |
| | | BuyL2SafeCountManager().clear_data(code) |
| | | |
| | | transaction_progress.TradeBuyQueue().set_traded_index(code, 0) |
| | | |
| | | |
| | | |
| | | class VirtualTrade(unittest.TestCase): |
| | |
| | | decimal.Decimal("0.00")) |
| | | # 获取执行位时间 |
| | | exec_time = None |
| | | buy_single_index, buy_exec_index, compute_index, num, count, max_num_set, volume_rate = l2_data_manager.TradePointManager.get_buy_compute_start_data( |
| | | buy_single_index, buy_exec_index, compute_index, num, count, max_num_set, volume_rate = l2_data_manager.TradePointManager().get_buy_compute_start_data( |
| | | code) |
| | | if buy_exec_index: |
| | | try: |
| | |
| | | buy_progress_index = TradeBuyQueue().compute_traded_index(code, buy_one_price_, |
| | | buy_queue_result_list, exec_time) |
| | | if buy_progress_index is not None: |
| | | l2.cancel_buy_strategy.HourCancelBigNumComputer.set_trade_progress(code, time_, buy_exec_index, |
| | | buy_progress_index, |
| | | l2.l2_data_util.local_today_datas.get( |
| | | code), |
| | | l2.l2_data_util.local_today_num_operate_map.get( |
| | | code)) |
| | | l2.cancel_buy_strategy.HourCancelBigNumComputer().set_trade_progress(code, time_, |
| | | buy_exec_index, |
| | | buy_progress_index, |
| | | l2.l2_data_util.local_today_datas.get( |
| | | code), |
| | | l2.l2_data_util.local_today_num_operate_map.get( |
| | | code)) |
| | | log.logger_l2_trade_buy_queue.info("获取成交位置成功: code-{} index-{} 数据-{}", code, |
| | | buy_progress_index, |
| | | json.dumps(buy_queue_result_list)) |
| | |
| | | |
| | | # @unittest.skip("跳过此单元测试") |
| | | def test_trade(self): |
| | | code = "002387" |
| | | code = "002213" |
| | | clear_trade_data(code) |
| | | l2.l2_data_util.load_l2_data(code) |
| | | total_datas = deepcopy(l2.l2_data_util.local_today_datas[code]) |
| | |
| | | data["index"] = i |
| | | total_datas.insert(i, data) |
| | | |
| | | pos_list = log.get_l2_process_position(code) |
| | | pos_list = log_export.get_l2_process_position(code) |
| | | # pos_list.insert(108,(375,448)) |
| | | if pos_list[0][0] > 0: |
| | | pos_list.insert(0, (0, pos_list[0][0] - 1)) |
| | |
| | | # pos_list.insert(84, (516, 532)) |
| | | |
| | | # 获取交易进度 |
| | | trade_progress_list, buy_queues = log.get_trade_progress(code) |
| | | trade_progress_list, buy_queues = log_export.get_trade_progress(code) |
| | | jingxuan_ranks = KPLDataManager().get_from_file(kpl_util.KPLDataType.JINGXUAN_RANK, tool.get_now_date_str()) |
| | | industry_ranks = KPLDataManager().get_from_file(kpl_util.KPLDataType.INDUSTRY_RANK, tool.get_now_date_str()) |
| | | RealTimeKplMarketData().set_top_5_reasons(jingxuan_ranks) |
| | | RealTimeKplMarketData().set_top_5_industry(industry_ranks) |
| | | |
| | | LimitUpCodesPlateKeyManager().set_today_limit_up(KPLDataManager().get_from_file(kpl_util.KPLDataType.LIMIT_UP, tool.get_now_date_str())) |
| | | LimitUpCodesPlateKeyManager().set_today_limit_up( |
| | | KPLDataManager().get_from_file(kpl_util.KPLDataType.LIMIT_UP, tool.get_now_date_str())) |
| | | |
| | | for indexs in pos_list: |
| | | l2_log.threadIds[code] = mock.Mock( |
| | |
| | | time_s = tool.get_time_as_second(time_) - i - 1 |
| | | volumn = THSBuy1VolumnManager().get_buy_1_volumn(code, tool.time_seconds_format(time_s)) |
| | | if volumn is not None: |
| | | l2.cancel_buy_strategy.L2LimitUpMoneyStatisticUtil.verify_num(code, int(volumn), |
| | | tool.time_seconds_format(time_s)) |
| | | l2.cancel_buy_strategy.L2LimitUpMoneyStatisticUtil().verify_num(code, int(volumn), |
| | | tool.time_seconds_format(time_s)) |
| | | break |
| | | # 设置委买队列 |
| | | for i in range(0, len(buy_queues)): |
| | |
| | | l2.l2_data_util.load_num_operate_map(l2.l2_data_util.local_today_num_operate_map, code, total_datas, True) |
| | | |
| | | buy_progress_index = 523 |
| | | l2.cancel_buy_strategy.HourCancelBigNumComputer.set_trade_progress(code, buy_progress_index, |
| | | l2.l2_data_util.local_today_datas.get( |
| | | code), |
| | | l2.l2_data_util.local_today_num_operate_map.get( |
| | | code)) |
| | | l2.cancel_buy_strategy.HourCancelBigNumComputer().set_trade_progress(code, buy_progress_index, |
| | | l2.l2_data_util.local_today_datas.get( |
| | | code), |
| | | l2.l2_data_util.local_today_num_operate_map.get( |
| | | code)) |
| | | |
| | | |
| | | # class TestTrade(unittest.TestCase): |
| | |
| | | # L2LimitUpMoneyStatisticUtil.process_data(code, buy_single_index, buy_exec_index, buy_single_index, |
| | | # buy_exec_index, False) |
| | | # |
| | | # l2_data_manager.TradePointManager.get_buy_compute_start_data = mock.Mock(return_value=(426, 479, 479, 0, 100)) |
| | | # buy_single_index, buy_exec_index, compute_index, num, count = l2_data_manager.TradePointManager.get_buy_compute_start_data( |
| | | # l2_data_manager.TradePointManager().get_buy_compute_start_data = mock.Mock(return_value=(426, 479, 479, 0, 100)) |
| | | # buy_single_index, buy_exec_index, compute_index, num, count = l2_data_manager.TradePointManager().get_buy_compute_start_data( |
| | | # code) |
| | | # processor.unreal_buy_dict[code] = mock.Mock(return_value=(479, 167234623)) |
| | | # |