Administrator
2024-10-10 dc6097632b647f3797f086b7d93e1ae32260de4f
增加接口/加绿规则更改
6个文件已修改
29 ■■■■ 已修改文件
api/outside_api_command_callback.py 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
l2/l2_data_manager_new.py 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
servers/data_server.py 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
third_data/code_plate_key_manager.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
third_data/kpl_block_util.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
third_data/kpl_data_manager.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
api/outside_api_command_callback.py
@@ -26,7 +26,7 @@
    l2_data_source_util, cancel_buy_strategy
from l2.code_price_manager import Buy1PriceManager
from l2.l2_data_manager import TradePointManager
from l2.l2_data_manager import TradePointManager, OrderBeginPosInfo
from l2.l2_data_util import L2DataUtil
from l2.l2_transaction_data_manager import HuaXinBuyOrderManager, BigOrderDealManager
from log_module import async_log_util, log_export
@@ -444,6 +444,7 @@
            black = l2_trade_util.is_in_forbidden_trade_codes(code)
            pause_buy = gpcode_manager.PauseBuyCodesManager().is_in_cache(code)
            must_buy = gpcode_manager.MustBuyCodesManager().is_in_cache(code)
            green = gpcode_manager.GreenListCodeManager().is_in_cache(code)
            desc_list = []
            if want:
                desc_list.append("【想买单】")
@@ -455,6 +456,9 @@
                desc_list.append("【暂不买】")
            if must_buy:
                desc_list.append("【红名单】")
            if green:
                desc_list.append("【绿名单】")
            result = {"code": 0, "data": {"code_info": (code, code_name), "desc": "".join(desc_list)}}
            self.send_response(result, client_id, request_id)
@@ -873,7 +877,7 @@
                            # 获取下单位置信息
                            order_begin_pos = TradePointManager().get_buy_compute_start_data_cache(code)
                            if order_begin_pos is None or order_begin_pos.buy_single_index is None:
                                continue
                                order_begin_pos = OrderBeginPosInfo(buy_single_index=0, buy_exec_index=0)
                            l2_data_util.load_l2_data(code)
                            total_datas = l2_data_util.local_today_datas.get(code)
                            trade_index, is_default = transaction_progress.TradeBuyQueue().get_traded_index(code)
@@ -881,6 +885,8 @@
                                trade_index = 0
                            # 下单位置
                            place_order_index = SCancelBigNumComputer().get_real_place_order_index_cache(code)
                            if place_order_index is None:
                                place_order_index = 0
                            # 计算信号位置到真实下单位置的总买(不管是否已撤)
                            total_nums = 0
                            for i in range(order_begin_pos.buy_single_index, place_order_index):
l2/l2_data_manager_new.py
@@ -992,7 +992,7 @@
        # ------------挂单时间约束----------
        order_begin_pos = cls.__get_order_begin_pos(
            code)
        if not trade_result_manager.can_place_order_for_cancel_time(code, total_data[order_begin_pos.buy_exec_index]):
        if not trade_result_manager.can_place_order_for_cancel_time(code, total_data[order_begin_pos.buy_exec_index]) and not gpcode_manager.GreenListCodeManager().is_in_cache(code):
            return False, True, f"距离上次挂单小于时间限制", True
        # ------------板块约束-------------
@@ -1346,8 +1346,13 @@
        # 扫入下单只有L撤能撤单
        if order_begin_pos and order_begin_pos.mode == OrderBeginPosInfo.MODE_RADICAL and cancel_type not in {
            trade_constant.CANCEL_TYPE_L, trade_constant.CANCEL_TYPE_L_UP, trade_constant.CANCEL_TYPE_L_DOWN}:
            l2_log.cancel_debug(code, "撤单中断,原因:{}", "扫入下单不是L撤")
            return False
        # 加绿只有L撤生效
        if gpcode_manager.GreenListCodeManager().is_in_cache(code):
            if cancel_type not in { trade_constant.CANCEL_TYPE_L, trade_constant.CANCEL_TYPE_L_UP, trade_constant.CANCEL_TYPE_L_DOWN}:
                l2_log.cancel_debug(code, "撤单中断,原因:{}", "加绿不是L撤")
                return False
        total_datas = local_today_datas.get(code)
        if not total_datas:
            return False
servers/data_server.py
@@ -716,6 +716,10 @@
            except Exception as e:
                logger_debug.exception(e)
        elif url.path == "/get_new_blocks":
            # 获取新板块
            blocks = KPLLimitUpDataRecordManager.get_new_blocks(tool.get_now_date_str())
            response_data = json.dumps({"code": 0, "data": blocks})
        elif url.path == "/get_account_commission_detail":
            # 获取手续费详情
            try:
third_data/code_plate_key_manager.py
@@ -1348,7 +1348,7 @@
        # 不计算前2的代码
        exclude_codes = set()
        for x in current_before_codes:
        for x in current_before_codes_info:
            if x[1] < kpl_block_util.open_limit_up_time_range[1]:
                exclude_codes.add(x[0])
        # 除去前二代码与开1代码之后是否为首板老大:所有开1的视为1个
third_data/kpl_block_util.py
@@ -207,4 +207,4 @@
    time.strptime(tool.get_now_date_str() + " 09:30:00", '%Y-%m-%d %H:%M:%S'))
if __name__ == "__main__":
    pass
    print(open_limit_up_time_range)
third_data/kpl_data_manager.py
@@ -289,7 +289,7 @@
    @classmethod
    def get_new_blocks(cls, day):
        """
        获取某一天新出现的板块
        获取某一天新出现的板块(新板块)
        @param day:
        @return:
        """