From 86e0061f9cf211b98252a9e6b71d6c9801e4a16b Mon Sep 17 00:00:00 2001 From: Administrator <admin@example.com> Date: 星期日, 18 十二月 2022 18:08:03 +0800 Subject: [PATCH] 撤单策略再次修改 --- l2_trade_factor.py | 31 ++++++++++++++++++------------- 1 files changed, 18 insertions(+), 13 deletions(-) diff --git a/l2_trade_factor.py b/l2_trade_factor.py index 13317d7..a6af34a 100644 --- a/l2_trade_factor.py +++ b/l2_trade_factor.py @@ -3,10 +3,13 @@ """ # l2浜ゆ槗鍥犲瓙 +import functools + import big_money_num_manager import global_data_loader import global_util import limit_up_time_manager +import trade_data_manager class L2TradeFactorUtil: @@ -40,7 +43,7 @@ break if rate > 0.9: rate = 0.9 - return round(rate,4) + return round(rate, 4) # 鑾峰彇閲忓奖鍝嶆瘮渚� @classmethod @@ -220,22 +223,24 @@ def get_safe_buy_count(cls, code): gb = cls.get_zyltgb(code) if not gb: - # 榛樿10绗� + # 榛樿8绗� return 8 - count = gb // 100000000 - 2 - if count > 30: - count = 30 - elif count < 3: - count = 3 + count = gb // 100000000 + if count <= 6: + count = 8 + elif count < 32: + count = round(8 + 0.5 * (count - 6)) + else: + count = 21 volumn_day60_max, volumn_yest, volumn_today = cls.__get_volumns(code) rate = cls.get_volumn_rate(volumn_day60_max, volumn_yest, volumn_today) # 鍙栧ぇ鍗曞奖鍝嶅�间笌琛屼笟褰卞搷鍊肩殑杈冨ぇ鍊� count = round(count * (1 - rate)) - if count < 3: - count = 3 - elif count > 30: - count = 30 + if count < 8: + count = 8 + elif count > 21: + count = 21 return count @@ -256,10 +261,10 @@ if __name__ == "__main__": - print(L2TradeFactorUtil.get_industry_rate(10)) + print(L2TradeFactorUtil.get_safe_buy_count("003005")) # print(L2TradeFactorUtil.get_rate_factors("003004")) # print(L2TradeFactorUtil.factors_to_string("003004")) - # print(L2TradeFactorUtil.get_safe_buy_count("002864")) + print(L2TradeFactorUtil.get_safe_buy_count("002864")) # print(L2TradeFactorUtil.get_limit_up_time_rate("11:30:00")) # print(L2TradeFactorUtil.get_limit_up_time_rate("13:00:00")) # print(L2TradeFactorUtil.get_limit_up_time_rate("13:48:00")) -- Gitblit v1.8.0