Administrator
2022-10-12 be73e2b78857adaf006063275726b69c4c60f0d7
juejin.py
@@ -86,9 +86,6 @@
        server.repair_ths_main_site(client)
def __run_schedule():
    while True:
        schedule.run_pending()
@@ -202,7 +199,8 @@
# 获取到现价
def accpt_price(code, price):
def accpt_price(code, price, price_from="juejin"):
    return
    gpcode_manager.set_price(code, price)
    # 获取收盘价
    pricePre = gpcode_manager.get_price_pre(code)
@@ -212,12 +210,12 @@
            logger_juejin_tick.info("{}-{}-{}", code, price, rate)
            if not gpcode_manager.is_listen(code) and not gpcode_manager.is_operate(
                    code) and not gpcode_manager.is_listen_full():
                L2CodeOperate.get_instance().add_operate(1, code, "现价变化")
                L2CodeOperate.get_instance().add_operate(1, code, "现价变化,rate-{} from-{}".format(rate, price_from))
            # 进入监控
        elif rate < 5:
            # 移除监控
            if gpcode_manager.is_listen(code) and not gpcode_manager.is_operate(code):
                L2CodeOperate.get_instance().add_operate(0, code, "现价变化")
                L2CodeOperate.get_instance().add_operate(0, code, "现价变化,rate-{} from-{}".format(rate, price_from))
# 获取到现价
@@ -226,10 +224,10 @@
    now_strs = now_str.split(":")
    now_second = int(now_strs[0]) * 60 * 60 + int(now_strs[1]) * 60 + int(now_strs[2])
    start = 60 * 60 * 9 + 31 * 60
    if now_second > start:
    if False:
        for d in prices:
            code, price = d["code"], float(d["price"])
            accpt_price(code, price)
            accpt_price(code, price, "ths")
    else:
        _code_list = []
        _delete_list = []
@@ -241,14 +239,19 @@
            if pricePre is not None:
                rate = round((price - pricePre) * 100 / pricePre, 1)
                if rate >= 0:
                    # 暂存涨幅为正的代码
                    _code_list.append((rate, code))
                else:
                    # 暂存涨幅为负的代码
                    _delete_list.append((rate, code))
        # 排序
        new_code_list = sorted(_code_list, key=lambda e: e.__getitem__(0), reverse=True)
        client_ids = data_process.getValidL2Clients()
        # 最多填充的代码数量
        max_count = len(client_ids) * 8
        # 截取前几个代码填充
        add_list = new_code_list[:max_count]
        # 后面的代码全部删除
        _delete_list.extend(new_code_list[max_count:])
        add_code_list = []
@@ -259,11 +262,18 @@
        for d in _delete_list:
            del_list.append(d[1])
        for code in add_code_list:
            L2CodeOperate.get_instance().add_operate(1, code, "现价变化")
        # 后面的代码数量
        # 先删除应该删除的代码
        for code in del_list:
            L2CodeOperate.get_instance().add_operate(0, code, "现价变化")
            if gpcode_manager.is_listen(code):
                # 判断是否在监听里面
                L2CodeOperate.get_instance().add_operate(0, code, "现价变化")
        # 增加应该增加的代码
        for code in add_code_list:
            if not gpcode_manager.is_listen(code):
                L2CodeOperate.get_instance().add_operate(1, code, "现价变化")
        print(add_code_list, del_list)
@@ -386,4 +396,4 @@
if __name__ == '__main__':
    pass
    everyday_init()