# -*- coding: utf-8 -*- """ 自适应三分位趋势策略 - 配置参数 """ # ========== 数据与周期 ========== CONTRACT_SYMBOL = "ETHUSDT" STEP_5M = 5 STEP_15M = 15 STEP_60M = 60 # 有效K线标准:实体 >= max(ATR(20)*0.1, 最小波动阈值) MIN_BODY_ATR_RATIO = 0.1 MIN_VOLATILITY_PERCENT = 0.0005 # 当前价格 × 0.05% # ========== 趋势判断(EMA周期) ========== # 长期:1小时 EMA(50) vs EMA(200) EMA_LONG_FAST = 50 EMA_LONG_SLOW = 200 # 中期:15分钟 EMA(20) vs EMA(50) EMA_MID_FAST = 20 EMA_MID_SLOW = 50 # 短期:5分钟 EMA(9) EMA_SHORT = 9 # 交易模式:aggressive / conservative / strict TREND_MODE = "conservative" # ========== 动态触发 ========== ATR_PERIOD = 20 VOLATILITY_COEF_CLAMP = (0.3, 3.0) # 波动率系数范围 BASE_COEF = 0.33 # 趋势方向系数(顺势更易触发) TREND_FAVOR_COEF = 0.8 TREND_AGAINST_COEF = 1.2 # ========== 信号确认(至少满足几项) ========== CONFIRM_REQUIRED = 2 VOLUME_MA_PERIOD = 20 VOLUME_RATIO_THRESHOLD = 0.8 # 成交量 > 前20根均量 × 0.8 # ========== 风险管理 ========== MAX_POSITION_PERCENT = 0.10 # 单笔最大 10% BASE_POSITION_PERCENT = 0.02 # 基础仓位 2% STOP_LOSS_ATR_MULT = 2.0 # 硬止损 = ATR × 2.0 TIME_STOP_BARS = 3 # 3根K线未盈利平仓 TRAIL_START_ATR = 1.0 # 盈利 1×ATR 后启动移动止损 TRAIL_ATR_MULT = 0.5 # 移动止损距离 0.5×ATR # 止盈目标(ATR倍数)与分批比例 TP1_ATR = 1.5 TP2_ATR = 3.0 TP3_ATR = 5.0 TP1_RATIO = 0.30 TP2_RATIO = 0.30 TP3_RATIO = 0.40 # ========== 反手条件 ========== REVERSE_BREAK_MULT = 0.5 # 突破幅度 > 实体/2 REVERSE_LOSS_ATR = 0.5 # 当前持仓亏损 > 0.5×ATR 可反手 MIN_BARS_SINCE_ENTRY = 2 # 距离上次开仓至少2根K线 SAME_KLINE_NO_REVERSE = True # 同一K线不反手 # ========== 市场状态调整 ========== # 强趋势 / 震荡 / 高波动 时的系数 STRONG_TREND_COEF = 0.25 STRONG_TREND_STOP_ATR = 3.0 RANGE_COEF = 0.4 RANGE_STOP_ATR = 1.5 HIGH_VOL_POSITION_COEF = 0.5 HIGH_VOL_EXTRA_CONFIRM = 1 # ========== 禁止交易时段(UTC+8 小时:分) ========== FORBIDDEN_PERIODS = [ (0, 0, 0, 30), # 00:00-00:30 (8, 0, 8, 30), # 08:00-08:30 (20, 0, 20, 30), # 20:00-20:30 ] # 高波动暂停:ATR > 平均ATR × 2 暂停 ATR_PAUSE_MULT = 2.0 # ========== 自适应绩效 ========== CONSECUTIVE_LOSS_PAUSE = 3 # 连续亏损3次仓位减半 WIN_RATE_LOOKBACK = 20 WIN_RATE_PAUSE_THRESHOLD = 0.40 # 胜率<40% 暂停 MAX_DRAWDOWN_PERCENT = 0.10 # 最大回撤10% 观察期 MAX_TRADES_PER_DAY = 20 MAX_HOLD_BARS = 4 * 12 # 4小时 ≈ 4*12 根5分钟 # ========== 回测/实盘通用 ========== CONTRACT_SIZE = 10000 SLIPPAGE_POINTS = 3 FEE_RATE = 0.0005 FEE_FIXED = 5 # 回测专用:固定手续费(合约多为按比例,可设为 0 观察策略本身) FEE_FIXED_BACKTEST = 0 # 两笔开仓之间至少间隔 N 根 5 分钟 K 线,减少过度交易 MIN_BARS_BETWEEN_TRADES = 4