Administrator
2023-02-09 b74016d3ba3750cd27fee83675449da8f1da3926
l2_trade_test.py
@@ -1,6 +1,7 @@
# 交易测试
# 清除交易数据
import decimal
import itertools
import json
import logging
import random
@@ -41,9 +42,10 @@
    BuyL2SafeCountManager().clear_data(code)
class VirtualTrade(unittest.TestCase):
    def __process_buy_queue(code, buy_queue, time_):
    def __process_buy_queue(self,code, buy_queue, time_):
        if time_ == "09:32:37":
            print("进入调试")
        limit_up_price = gpcode_manager.get_limit_up_price(code)
@@ -56,7 +58,7 @@
                try:
                    buy_one_price_ = decimal.Decimal(round(float(buy_one_price), 2)).quantize(
                        decimal.Decimal("0.00"))
                    buy_progress_index = TradeBuyQueue().save_traded_index(code, buy_one_price_, buy_queue_result_list)
                    buy_progress_index = TradeBuyQueue().compute_traded_index(code, buy_one_price_, buy_queue_result_list)
                    if buy_progress_index is not None:
                        l2.cancel_buy_strategy.HourCancelBigNumComputer.set_trade_progress(code, buy_progress_index,
                                                                                           l2.l2_data_util.local_today_datas.get(
@@ -69,7 +71,9 @@
                except Exception as e:
                    pass
    code = "002792"
    @unittest.skip("跳过此单元测试")
    def test_trade(self):
        code = "002328"
    clear_trade_data(code)
    l2.l2_data_util.load_l2_data(code)
    total_datas = deepcopy(l2.l2_data_util.local_today_datas[code])
@@ -81,6 +85,7 @@
            total_datas.insert(i, data)
    pos_list = log.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))
    del pos_list[-1]
@@ -97,6 +102,8 @@
    if pos_list[-1][1] < total_datas[-1]["index"]:
        pos_list.append((pos_list[-1][1] + 1, total_datas[-1]["index"]))
    l2.l2_data_util.local_today_datas[code].clear()
        l2.l2_data_util.local_today_num_operate_map[code].clear()
    print("id:", id(l2.l2_data_util.local_today_datas))
    # l2_trade_factor.L2TradeFactorUtil.get_safe_buy_count = mock.Mock(return_value=12)
    # pos_list.insert(41,(225,306))
@@ -124,7 +131,7 @@
            if tool.trade_time_sub(buy_queues[i][1], total_datas[indexs[0]]["val"]["time"]) > 0:
                print("委买队列", buy_queues[i])
                try:
                    __process_buy_queue(code, buy_queues[i - 1][0], buy_queues[i - 1][1])
                        self.__process_buy_queue(code, buy_queues[i - 1][0], buy_queues[i - 1][1])
                except:
                    pass
                break
@@ -167,5 +174,25 @@
#     # TradeBuyQueue().save_traded_index(code, "6.94", [1511, 888, 796])
#
class TestTradedProgress(unittest.TestCase):
    @unittest.skip("跳过此单元测试")
    def test_get_progress(self):
        code = "002328"
        l2.l2_data_util.load_l2_data(code)
        TradeBuyQueue.get_traded_index = mock.Mock(return_value=(10, False))
        buy_progress_index = TradeBuyQueue().compute_traded_index(code, "6.94", [1270, 9999, 1973])
    @unittest.skip("跳过此单元测试")
    def test_sort(self):
        list = [1, 2, 3]
        result_list = itertools.permutations(list, 3)
        print(result_list)
        for r in result_list:
            print(r)
if __name__ == "__main__":
    unittest.main()