admin
2 天以前 13e767c21d76d6f08f598e886e2013e5dfd33789
将积累好的过滤文件写入本地存储
4个文件已修改
39 ■■■■ 已修改文件
constant.py 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
strategy/check_timer.py 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
strategy/data_cache.py 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
strategy/plate_strength_analysis.py 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
constant.py
@@ -84,6 +84,8 @@
ALL_STOCKS_PATH = f"{DATA_DIR_PATH}/all_stocks.json"
TRADING_DATES_PATH = f"{DATA_DIR_PATH}/trading_dates.json"
FILTERED_STOCK_PATH = f"{DATA_DIR_PATH}/filtered_stock_info_set.json"
# 订阅L2代码数据
SUBSCRIPT_L2_CODES = set()
strategy/check_timer.py
@@ -27,7 +27,15 @@
            # 声明赋值实时时间
            now_time = tool.get_now_time_str()
            # print(f"now_time==={now_time}")
            if now_time > data_cache.AFTER_CLOSING_TIME and data_cache.execution is False:
            # 午盘决策结束时间 定时执行
            if data_cache.NOON_MARKET_TIME < now_time and data_cache.moon_market_time_over is False:
                plate_strength_analysis.write_filtered_file_local_storage()
                logger.info(f"将积累好的过滤文件写入本地存储 已经运行完成")
                data_cache.moon_market_time_over = True
            # 大盘收盘时间 定时执行
            if data_cache.AFTER_CLOSING_TIME < now_time and data_cache.after_closing_time_over is False:
                # 整理当日涨停信息并写入本地管理好本地数据
                plate_strength_analysis.get_arrange_limit_up_info()
                logger.info(f"整理当日涨停信息 已经运行完成")
@@ -41,14 +49,15 @@
                plate_strength_analysis.check_intensity_missing_limit_up_stock()
                logger.info(f"检查因强度中的过滤因素而被错过的涨停 已经运行完成")
                # 完成了后将是否执行的开个标记为真
                data_cache.execution = True
            # 本地数据更新时间
            if data_cache.UPDATE_DATA_TIME < now_time and data_cache.index_K_line_write_execution is False:
                data_cache.after_closing_time_over = True
            # 本地数据更新时间 定时执行
            if data_cache.UPDATE_DATA_TIME < now_time and data_cache.update_data_time_over is False:
                # 写入所有指数K线
                market_sentiment_analysis.all_index_k_line_dict_write()
                logger.info(f"写入所有带属性指数K线 已经运行完成")
                # 完成了后将是否执行的开个标记为真
                data_cache.index_K_line_write_execution = True
                data_cache.update_data_time_over = True
        except Exception as error:
            logger.error(f"实时检测定时器线程报错: {error}")
        finally:
strategy/data_cache.py
@@ -182,10 +182,12 @@
yesterday_limit_up_code_list = []
# 初始化开盘啦昨日炸板但通过K线数据计算涨停的股票代码列表
yesterday_frying_plate_last_minute_list = []
# 午盘策略完成的计时器单次阀
moon_market_time_over = False
# 初始化每日涨停信息方法 和 获取所有个股的板块概念 是否被执行
execution = False
after_closing_time_over = False
# 初始化 写入带属性指数K线的方法 是否被执行
index_K_line_write_execution = False
update_data_time_over = False
# 初始化实时涨停概念板块
limit_up_block_names = []
# 初始化实时涨停概念信息
strategy/plate_strength_analysis.py
@@ -868,6 +868,14 @@
    # calculate_plate_trend('机器人概念')
    return result
# 将积累好的过滤文件写入本地存储
def write_filtered_file_local_storage():
    with open(constant.FILTERED_STOCK_PATH, "w", encoding="utf-8") as file:
        json.dump(data_cache.filtered_stock_info_set, file, ensure_ascii=False, indent=4)
    logger_common.info(f"filtered_stock_info_set===》JSON文件已写入: {data_cache.filtered_stock_info_set}")
# 检查因强度中的过滤因素而被错过的涨停函数【建立在策略不重启的基础上】
def check_intensity_missing_limit_up_stock():
    # 实例化每日涨停信息整理方法
@@ -881,8 +889,8 @@
            limit_up_code = i[0]
            today_limit_up_code_list.append(limit_up_code)
        print(f"today_limit_up_code_list=={today_limit_up_code_list}")
        logger_common.info(f"昨日涨停股票数量=={len(today_limit_up_code_list)}")
        logger_common.info(f"昨日涨停代码列表=={today_limit_up_code_list}")
        logger_common.info(f"当日截止收盘 涨停股票数量=={len(today_limit_up_code_list)}")
        logger_common.info(f"当日截止收盘 涨停代码列表=={today_limit_up_code_list}")
    for code in today_limit_up_code_list:
        for filtered_stock_info in data_cache.filtered_stock_info_set:
            if filtered_stock_info["code"] == code: