admin
2025-05-28 591415530c68c82af20e2c658a77de9e78491147
修复 当前有意购买统计的 BUG
3个文件已修改
18 ■■■■■ 已修改文件
strategy/basic_methods.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
strategy/buying_strategy.py 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
strategy/kpl_data_manager.py 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
strategy/basic_methods.py
@@ -211,7 +211,7 @@
# 充分交易量公式 用于计算日内涨幅段理论的安全交易量值
def sufficient_volume(current_volume, yesterday_volume, today_growth):
    if today_growth > 0:
        if current_volume > yesterday_volume * 0.8 * today_growth:
        if current_volume > yesterday_volume * 0.5 * today_growth:
            return True
        else:
            return False
strategy/buying_strategy.py
@@ -315,7 +315,7 @@
                                        logger_info(f"重复相交概念==={intersection_plate}")
                                    # 调用充分交易量函数
                                    sufficient_volume = basic_methods.sufficient_volume(current_volume, k_line_data[0]['volume'], today_growth)
                                    logger_info(f"【{k_line_data[0]['sec_name']}】当日当时量是否相对涨幅充足?===【{sufficient_volume}】 !当时与昨日成交率占比:{round(current_volume/k_line_data[0]['volume'], 2)}%,当日当时总成交量:{round(current_volume / 10000, 2)}万,昨日的总成交量{round(k_line_data[0]['volume'] / 10000, 2)}万,当日当时涨幅:{today_growth}%。")
                                    logger_info(f"【{k_line_data[0]['sec_name']}】当日当时量是否相对涨幅充足?===【{sufficient_volume}】 !当时与昨日成交率占比:{round(current_volume/k_line_data[0]['volume']/100, 2)}%,当日当时总成交量:{round(current_volume / 10000, 2)}万,昨日的总成交量{round(k_line_data[0]['volume'] / 10000, 2)}万,当日当时涨幅:{today_growth}%。")
                                    logger_info(f"【有概念】(涨停列表中包含自身概念 且 不是唯一包含概念不可用) !最新价: {current_price},,当日当时涨幅:{today_growth}%。")
                                    # 有概念有强度视界
                                    if strength_list_have_it is True:
@@ -388,7 +388,7 @@
                                        logger_info(f"当前有意购买:{k_line_data[0]['sec_name']},有意购买列表:{data_cache.willing_buy_list}")
                                        if data_cache.have_plate_buy_times >= 1 and k_line_data[0]['sec_name'] not in data_cache.willing_buy_list:
                                            logger_info(
                                                f"【 beneficial】有概念买入已经 1 次,且未曾进入过有意购买列表!不买了!!公司名称:{k_line_data[0]['sec_name']},")
                                                f"【不利】有概念买入已经 1 次,且未曾进入过有意购买列表!不买了!!公司名称:{k_line_data[0]['sec_name']},")
                                        if len(intersection_plate) > 0:
                                            logger_info(
                                                f"【不利】同概念只买一次,不买了,公司名称:{k_line_data[0]['sec_name']},重复相交概念==={intersection_plate}")
@@ -556,7 +556,7 @@
                                                                                            k_line_data[0]['volume'],
                                                                                            today_growth)
                                        logger_info(
                                            f"【{k_line_data[0]['sec_name']}】当日当时量是否相对涨幅充足?===【{sufficient_volume}】 !当日当时总成交量:{round(current_volume / 10000, 2)}万,昨日的总成交量{round(k_line_data[0]['volume'] / 10000, 2)}万,当日当时涨幅:{today_growth}%。")
                                            f"【{k_line_data[0]['sec_name']}】当日当时量是否相对涨幅充足?===【{sufficient_volume}】 !当时与昨日成交率占比:{round(current_volume/k_line_data[0]['volume']/100, 2)}%,当日当时总成交量:{round(current_volume / 10000, 2)}万,昨日的总成交量{round(k_line_data[0]['volume'] / 10000, 2)}万,当日当时涨幅:{today_growth}%。")
                                        if last_volume_to_growth_ratio < 1:
                                            logger_info(
                                                f"【有强度 有小量换大涨幅】瞬时量幅比< 1 !瞬时量幅比:{round(last_volume_to_growth_ratio, 2)}%,最新价: {current_price},瞬时涨幅:{round(tick_growth, 2)}%,当日当时涨幅:{today_growth}%,当前时间:{current_created_at}。")
strategy/kpl_data_manager.py
@@ -27,8 +27,11 @@
        self.__load_data()
    def __filter_origin_data(self, data):
        return (data[0], [x[1] for x in data[1][0]],
                {p: [xx for xx in data[1][1][p]] for p in data[1][1]})
        """
        :param data: 格式:(时间,[数据,])
        :return:
        """
        return data
    def add_log(self, in_plates_info, plate_codes_info):
        oringin_data = (tool.get_now_time_str(), in_plates_info, plate_codes_info)
@@ -74,4 +77,5 @@
if __name__ == '__main__':
    KPLMarketStockHeatLogManager()
    KPLMarketsSiftPlateLogManager().load_data()
    # KPLMarketStockHeatLogManager()