From 8c7f84cbd0afde7600b0c67a8032fa19c57d8c41 Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期一, 05 二月 2024 11:18:33 +0800 Subject: [PATCH] L撤快速成交触发撤单修改 --- code_attribute/code_nature_analyse.py | 50 ++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 48 insertions(+), 2 deletions(-) diff --git a/code_attribute/code_nature_analyse.py b/code_attribute/code_nature_analyse.py index 05d9470..ef5b32a 100644 --- a/code_attribute/code_nature_analyse.py +++ b/code_attribute/code_nature_analyse.py @@ -400,9 +400,55 @@ # return False rate = (float(limit_up_price) - min_price) / min_price # print(rate) - if rate >= 0.28: + if rate >= 0.319: return True return False + + +# 杩炵画娑ㄥ仠鍚庢槸鍚﹀洖璋冧笉瓒冲 +def is_continue_limit_up_not_enough_fall_dwon(record_datas): + # 10 澶╁唴鏄惁鏈夎繛缁�3鏉� + datas = copy.deepcopy(record_datas) + datas.sort(key=lambda x: x["bob"]) + datas = datas[0 - 10:] + limit_up_continue_count_info = None + max_limit_up_continue_count_info_list = [] # [杩炵画娑ㄥ仠娆℃暟,娑ㄥ仠璧风偣] + + for i in range(len(datas)): + item = datas[i] + if __is_limit_up(item): + if not limit_up_continue_count_info: + limit_up_continue_count_info = [1, i] + else: + limit_up_continue_count_info[0] += 1 + else: + if limit_up_continue_count_info: + max_limit_up_continue_count_info_list.append(limit_up_continue_count_info) + limit_up_continue_count_info = None + max_limit_up_info = None + for x in max_limit_up_continue_count_info_list: + if max_limit_up_info is None: + max_limit_up_info = x + if max_limit_up_info[0] <= x[0]: + max_limit_up_info = x + + if not max_limit_up_info or max_limit_up_info[0] < 3: + print("鏃�3杩炴澘") + return False + start_index = max_limit_up_info[1] + max_price_info = [0, None] + for i in range(start_index, len(datas)): + item = datas[i] + if item["high"] > max_price_info[0]: + max_price_info = [item["high"], i] + # 璁$畻鍥炶俯浠锋牸 + lowest_price_threhhold = round((1-0.28) * max_price_info[0], 2) + for i in range(max_price_info[1] + 1, len(datas)): + item = datas[i] + if item["low"] < lowest_price_threhhold: + print("鍥炶俯瓒冲") + return False + return True # 鏄惁鏈夋定鍋� @@ -674,7 +720,7 @@ has_continue = True else: continue_count = 0 - if count >= 7 and has_continue: + if count >= 6 and has_continue: return True, "闀挎湡杈ㄨ瘑搴�" return False, "" -- Gitblit v1.8.0