Administrator
2024-10-31 b855b811e3753ffcb35f145c985bb32f4b550038
utils/init_data_util.py
@@ -14,16 +14,12 @@
def re_set_price_pres(codes, force=False):
    # 通过历史数据缓存获取
    try:
        result = HistoryKDatasUtils.get_gp_latest_info(codes)
        for item in result:
            symbol = item['symbol']
            symbol = symbol.split(".")[1]
            pre_close = tool.to_price(decimal.Decimal(str(item['pre_close'])))
            gpcode_manager.CodePrePriceManager.set_price_pre(symbol, pre_close, force)
    except Exception as e:
        logger_debug.error(f"get_gp_latest_info异常:{codes}")
        logger_debug.exception(e)
    result = HistoryKDatasUtils.get_gp_latest_info(codes)
    for item in result:
        symbol = item['symbol']
        symbol = symbol.split(".")[1]
        pre_close = tool.to_price(decimal.Decimal(str(item['pre_close'])))
        gpcode_manager.CodePrePriceManager.set_price_pre(symbol, pre_close, force)
# 获取近90天的最大量与最近的量
@@ -66,6 +62,26 @@
        "%Y-%m-%d"), refer_index
def parse_max_volume_in_days(datas, max_day):
    """
    解析最近几天最大的量
    @param datas:
    @param max_day:
    @return:
    """
    # 解析最近几天的最大量
    datas = datas[:max_day]
    max_volume_info = None
    for d in datas:
        if max_volume_info is None:
            max_volume_info = (d["volume"], d)
        if d["volume"] > max_volume_info[0]:
            max_volume_info = (d["volume"], d)
    if max_volume_info:
        return max_volume_info[0]
    return None
# 返回:(60天最大量,昨日量,量参考日期,参考量据今交易日数)
def __parse_max_volume(code, datas, is_new_or_near_top=False):
    max_volume = 0