constant.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
strategy/check_timer.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
strategy/data_cache.py | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
strategy/plate_strength_analysis.py | ●●●●● 补丁 | 查看 | 原始文档 | 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: