""" 策略参数设置 """ import json class StrategyParamsSettings: # 禁止买入 STATE_FORBIDDEN_BUY = 0 # 正常买入 STATE_NORMAL_BUY = 1 def __init__(self): # 交易状态 self.trade_state = 1 # 买入金额 self.buy_money = 2000 # 价格区间 self.price_range = (3, 60) # 老题材涨停数 self.limit_up_count_of_old_plate = 3 # 新题材涨停数 self.limit_up_count_of_new_plate = 3 # 昨日不能涨停 self.cant_yesterday_limit_up = True # 昨日不能跌停 self.cant_yesterday_limit_down = True # 昨日不能炸板 self.cant_yesterday_open_limit_up = False # 有涨停的交易日数量 self.has_limit_up_days = 10 # xx个交易日内不能有xx次涨停 self.trade_days_count_of_limit_up = 5 # 涨停次数 self.count_of_limit_up = 3 # xx个交易日内不能有xx次涨停 self.trade_days_count_of_limit_down = 5 # 跌停次数 self.count_of_limit_down = 3 # xx个交易日内不能有xx次炸板 self.trade_days_count_of_open_limit_up = 5 # 炸板次数 self.count_of_open_limit_up = 3 # 是否可买创业板 self.can_buy_ge_code = True # 自由市值范围 self.zyltgb_range = (10e8, 300e8) # 是否可买今日涨停过的票 self.can_buy_limited_up = False # 最低开盘涨幅 self.min_open_rate = -0.21 # 可买的涨幅比例 self.avaiable_rates = (-0.03, 0.07) # 今日涨停价需突破XX日最高价,None表示此条数据不生效 self.trade_days_count_of_limit_up_price_over_high = None # 今日买价与最高价的差值在XX比例以内 self.min_rate_of_highest_and_price = 0.04 # 最多高于均价xx比例 self.max_rate_than_average_price = 0.03 def to_json_str(self): d = self.__dict__ return json.dumps(d) @classmethod def to_obj(cls, json_str): result = json.loads(json_str) obj = StrategyParamsSettings() for k in result: setattr(obj, k, result[k]) return obj settings: StrategyParamsSettings = StrategyParamsSettings()