Administrator
2024-10-12 aacc6148dd43a9cffbff9a23a273a55b64bf3d8c
code_attribute/code_nature_analyse.py
@@ -218,12 +218,16 @@
    p10 = is_latest_10d_max_volume_at_latest_2d(code, record_datas)
    # 最近5天是否炸板
    p11 = __is_latest_open_limit_up(code, record_datas, 5)
    # 30天内是否有涨停
    p12 = __has_limit_up(code, record_datas, 30)
    # 90天内是否有涨停
    p12 = __has_limit_up(code, record_datas, 90)
    # 最近5天是否跌停
    p13 = __is_latest_limit_down(code, record_datas, 5)
    # 60个交易日是否曾涨停
    p14 = __has_limited_up(code, record_datas, 60)
    # 昨日是否涨停过
    p15 = __has_limited_up(code, record_datas, 1)
    return p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13
    return p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15
# 是否具有K线形态
@@ -614,20 +618,21 @@
# 是否涨停
def __is_limit_up(code, data):
    limit_up_price = float(gpcode_manager.get_limit_up_price_by_preprice(code, data["pre_close"]))
    return abs(limit_up_price - data["close"]) < 0.001
    return abs(limit_up_price - data["close"]) < 0.009
# 是否涨停过
def __is_limited_up(code, data):
    limit_up_price = float(gpcode_manager.get_limit_up_price_by_preprice(code, data["pre_close"]))
    return abs(limit_up_price - data["high"]) < 0.001
    return abs(limit_up_price - data["high"]) < 0.009
# 多少天内是否有涨停/曾涨停
def __has_limit_up(code, datas, day_count):
    datas = copy.deepcopy(datas)
    datas.sort(key=lambda x: x["bob"])
    datas = datas[0 - day_count:]
    if len(datas) > day_count:
        datas = datas[0 - day_count:]
    if len(datas) >= 1:
        for i in range(0, len(datas)):
            item = datas[i]
@@ -636,6 +641,20 @@
    return False
# 多少天内是否曾涨停
def __has_limited_up(code, datas, day_count):
    datas = copy.deepcopy(datas)
    datas.sort(key=lambda x: x["bob"])
    if len(datas) > day_count:
        datas = datas[0 - day_count:]
    if len(datas) >= 1:
        for i in range(0, len(datas)):
            item = datas[i]
            if __is_limited_up(code, item):
                return True
    return False
# 首板涨停溢价率
def get_limit_up_premium_rate(code, datas):
    datas = copy.deepcopy(datas)