from code_attribute import code_volumn_manager, gpcode_manager from db.mysql_data_delegate import Mysqldb from log_module.log import logger_codes_zyltgb from utils import global_util, ths_industry_util from code_attribute.code_data_util import ZYLTGBUtil def init(): load_volumn() load_zyltgb() load_industry() load_name_codes() # 加载行业数据 def load_industry(): _code_industry_map, _industry_codes_map = ths_industry_util.get_code_industry_maps() global_util.code_industry_map.clear() global_util.code_industry_map.update(_code_industry_map) global_util.industry_codes_map.clear() global_util.industry_codes_map.update(_industry_codes_map) # 加载目标标的的自由流通股本 def load_zyltgb(): codes = gpcode_manager.get_gp_list() for code in codes: result = ZYLTGBUtil.get(code) if result is not None: global_util.zyltgb_map[code] = result def load_zyltgb_volume_from_db(): # 拉取自由流通量 mysqldb = Mysqldb() fresults = mysqldb.select_all("select code, zylt_volume from kpl_zylt_volume") if fresults: for result in fresults: global_util.zylt_volume_map[result[0]] = result[1] try: logger_codes_zyltgb.info(f"{global_util.zylt_volume_map}") except: pass # 加载名称代码隐射 def load_name_codes(): dict_ = gpcode_manager.get_name_codes() if dict_: for key in dict_: global_util.name_codes[key] = dict_[key] # 加载量 def load_volumn(): codes = gpcode_manager.get_gp_list() for code in codes: try: max60, yesterday = code_volumn_manager.CodeVolumeManager().get_histry_volumn(code) today = code_volumn_manager.CodeVolumeManager().get_today_volumn(code) global_util.max60_volumn[code] = max60 global_util.yesterday_volumn[code] = yesterday global_util.today_volumn[code] = today except: pass # 添加今日涨停数据 def add_limit_up_codes(datas, clear=False): if datas is None: return if clear: global_util.today_limit_up_codes.clear() # 涨停数量 __dict = {} for data in datas: __dict[data["code"]] = data # print(__dict) global_util.today_limit_up_codes.update(__dict)