Administrator
2023-08-08 ba2f7b998e5e3f6223c11e804c7922a8070426a0
l2/l2_data_manager_new.py
@@ -69,11 +69,33 @@
    def __new__(cls, *args, **kwargs):
        if not cls.__instance:
            cls.__instance = super(L2BigNumForMProcessor, cls).__new__(cls, *args, **kwargs)
            cls.__load_datas()
        return cls.__instance
    @classmethod
    def __get_redis(cls):
        return cls._redis_manager.getRedis()
    @classmethod
    def __load_datas(cls):
        _redis = cls._redis_manager.getRedis()
        try:
            keys = RedisUtils.keys(_redis, "m_big_money_begin-*")
            for k in keys:
                code = k.split("-")[-1]
                val = RedisUtils.get(_redis, k)
                tool.CodeDataCacheUtil.set_cache(cls.m_big_money_begin_cache, code, int(val))
            keys = RedisUtils.keys(_redis, "m_big_money_process_index-*")
            for k in keys:
                code = k.split("-")[-1]
                val = RedisUtils.get(_redis, k)
                tool.CodeDataCacheUtil.set_cache(cls.m_big_money_process_index_cache, code, int(val))
        finally:
            RedisUtils.realse(_redis)
    # 保存计算开始位置
    def set_begin_pos(self, code, index):
@@ -95,9 +117,7 @@
        cache_result = tool.CodeDataCacheUtil.get_cache(self.m_big_money_begin_cache, code)
        if cache_result[0]:
            return cache_result[1]
        val = self.__get_begin_pos(code)
        tool.CodeDataCacheUtil.set_cache(self.m_big_money_begin_cache, code, val)
        return val
        return None
    # 清除已经处理的数据
    def clear_processed_end_index(self, code):
@@ -123,9 +143,7 @@
        cache_result = tool.CodeDataCacheUtil.get_cache(self.m_big_money_process_index_cache, code)
        if cache_result[0]:
            return cache_result[1]
        val = self.__get_processed_end_index(code)
        tool.CodeDataCacheUtil.set_cache(self.m_big_money_process_index_cache, code, val)
        return val
        return None
    # 处理大单
    def process(self, code, start_index, end_index, limit_up_price):
@@ -1184,8 +1202,9 @@
    @classmethod
    def __save_order_begin_data(self, code, buy_single_index, buy_exec_index, compute_index, num, count, max_num_set,
                                volume_rate):
        TradePointManager().set_buy_compute_start_data(code, buy_single_index, buy_exec_index, compute_index, num, count,
                                                     max_num_set, volume_rate)
        TradePointManager().set_buy_compute_start_data(code, buy_single_index, buy_exec_index, compute_index, num,
                                                       count,
                                                       max_num_set, volume_rate)
    # 计算下单起始信号
    # compute_data_count 用于计算的l2数据数量