Administrator
2025-06-06 6df8d9ac75a041377c01c80e6e970e5c75ce7662
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
"""
策略参数设置
"""
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 = 2
        # 新题材涨停数
        self.limit_up_count_of_new_plate = 2
        # 昨日不能涨停
        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.03
        # 可买的涨幅比例
        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