strategy_config.py

"""
单票量化策略配置
"""

# 数据质量检查参数
DATA_QUALITY_THRESHOLDS = {
    "min_data_points": 30,  # 最小数据点数
    "max_missing_ratio": 0.1  # 最大缺失值比例
}

# 趋势分析参数
TREND_PARAMS = {
    "long_term_window": 20,  # 长期趋势窗口(日均线)
    "short_term_window": 10,  # 短期趋势窗口(日均线)
    "trend_score_weight": 0.3  # 趋势得分权重
}

# 技术指标分析参数
TECHNICAL_PARAMS = {
    "rsi_window": 14,  # RSI 计算窗口
    "rsi_normal_range": (30, 70),  # RSI 正常区间
    "rsi_overbought": 70,  # RSI 超买阈值
    "rsi_oversold": 30,  # RSI 超卖阈值
    "macd_fast": 12,  # MACD 快速 EMA 窗口
    "macd_slow": 26,  # MACD 慢速 EMA 窗口
    "macd_signal": 9,  # MACD 信号 EMA 窗口
    "technical_score_weight": 0.4  # 技术指标得分权重
}

# 成交量分析参数
VOLUME_PARAMS = {
    "volume_window": 5,  # 成交量均值计算窗口
    "volume_increase_ratio": 1.5,  # 成交量放大倍数阈值
    "volume_decrease_ratio": 0.5,  # 成交量萎缩倍数阈值
    "volume_score_weight": 0.15  # 成交量得分权重
}

# 风险评估参数
RISK_PARAMS = {
    "volatility_window": 10,  # 波动率计算窗口
    "volatility_low_threshold": 0.3,  # 低波动率阈值
    "volatility_medium_threshold": 0.5,  # 中等波动率阈值
    "max_drawdown_window": 20,  # 最大回撤计算窗口
    "max_drawdown_low_threshold": -0.1,  # 低最大回撤阈值
    "max_drawdown_medium_threshold": -0.2,  # 中等最大回撤阈值
    "risk_score_weight": 0.15  # 风险评估得分权重
}

# 评分和信号参数
RATING_PARAMS = {
    "s_threshold": 85,  # S 级评分阈值
    "a_threshold": 70,  # A 级评分阈值
    "b_threshold": 50,  # B 级评分阈值
    "buy_score_threshold": 70,  # 买入信号评分阈值
    "hold_score_threshold": 50,  # 持有信号评分阈值
    "sell_score_threshold": 50  # 卖出信号评分阈值
}

# 默认策略配置
SINGLE_STOCK_CONFIG = {
    "data_quality": DATA_QUALITY_THRESHOLDS,
    "trend": TREND_PARAMS,
    "technical": TECHNICAL_PARAMS,
    "volume": VOLUME_PARAMS,
    "risk": RISK_PARAMS,
    "rating": RATING_PARAMS
}