Administrator
2023-11-24 d6b6be5eb2ae00a8ccf46bd7d53cd7d0c1e59c72
third_data/kpl_data_manager.py
@@ -45,6 +45,8 @@
    __kplPlatManager = KPLPlatManager()
    __LimitUpCodesPlateKeyManager = LimitUpCodesPlateKeyManager()
    __CodesPlateKeysManager = CodesHisReasonAndBlocksManager()
    __current_code_reason_dict = {}
    __current_reason_codes_dict = {}
    @classmethod
    def __load_hist_and_blocks(cls, code):
@@ -75,6 +77,16 @@
        if records:
            cls.latest_origin_datas = records
            cls.__LimitUpCodesPlateKeyManager.set_today_limit_up([(r[0], r[5]) for r in records])
        code_reason_dict = {}
        reason_code_dict = {}
        for d in records:
            code_reason_dict[d[0]] = d[5]
            if d[5] not in reason_code_dict:
                reason_code_dict[d[5]] = set()
            reason_code_dict[d[5]].add(d[0])
        cls.__current_code_reason_dict = code_reason_dict
        cls.__current_reason_codes_dict = reason_code_dict
        # 涨停数据记录
        mysqldb = mysql_data.Mysqldb()
@@ -187,6 +199,14 @@
        results = cls.get_latest_infos(code, 2, False)
        bs = set([b[0] for b in results])
        return bs
    @classmethod
    def get_current_block(cls, code):
        return cls.__current_code_reason_dict.get(code)
    @classmethod
    def get_current_codes_by_block(cls,block):
        return cls.__current_reason_codes_dict.get(block)
class KPLDataManager:
@@ -328,7 +348,7 @@
        while True:
            if tool.is_trade_time():
                try:
                    results = kpl_api.daBanList(kpl_api.DABAN_TYPE_LIMIT_UP)
                    results = kpl_api.getLimitUpInfo()
                    result = json.loads(results)
                    start_time = time.time()
                    __upload_data("limit_up", result)