diff --git a/config/my_batch_major_coins.json b/config/my_batch_major_coins.json new file mode 100644 index 0000000..94947f6 --- /dev/null +++ b/config/my_batch_major_coins.json @@ -0,0 +1,23 @@ +[ + {"key":"AUTO_TRADE_SYMBOL_WHITELIST","value":"BTCUSDT,ETHUSDT,BNBUSDT,SOLUSDT","type":"string","category":"strategy"}, + {"key":"EXCLUDE_MAJOR_COINS","value":false,"type":"boolean","category":"scan"}, + {"key":"AUTO_TRADE_ONLY_TRENDING","value":true,"type":"boolean","category":"strategy"}, + {"key":"AUTO_TRADE_ALLOW_4H_NEUTRAL","value":false,"type":"boolean","category":"strategy"}, + {"key":"MIN_SIGNAL_STRENGTH","value":8,"type":"number","category":"strategy"}, + {"key":"RANGING_MARKET_SIGNAL_BOOST","value":2,"type":"number","category":"strategy"}, + {"key":"TOP_N_SYMBOLS","value":8,"type":"number","category":"scan"}, + {"key":"MAX_SCAN_SYMBOLS","value":120,"type":"number","category":"scan"}, + {"key":"MIN_VOLUME_24H","value":80000000,"type":"number","category":"scan"}, + {"key":"MIN_VOLUME_24H_STRICT","value":120000000,"type":"number","category":"scan"}, + {"key":"MAX_OPEN_POSITIONS","value":2,"type":"number","category":"risk"}, + {"key":"MAX_DAILY_ENTRIES","value":6,"type":"number","category":"risk"}, + {"key":"USE_FIXED_RISK_SIZING","value":true,"type":"boolean","category":"risk"}, + {"key":"FIXED_RISK_PERCENT","value":0.005,"type":"number","category":"risk"}, + {"key":"LEVERAGE","value":2,"type":"number","category":"risk"}, + {"key":"MIN_LEVERAGE","value":2,"type":"number","category":"risk"}, + {"key":"MAX_LEVERAGE","value":5,"type":"number","category":"risk"}, + {"key":"MAX_LEVERAGE_SMALL_CAP","value":3,"type":"number","category":"risk"}, + {"key":"BETA_FILTER_ENABLED","value":true,"type":"boolean","category":"strategy"}, + {"key":"BETA_FILTER_THRESHOLD","value":-0.008,"type":"number","category":"strategy"}, + {"key":"NO_OPEN_HOURS_BJ","value":"2,3,4,5","type":"string","category":"risk"} +] diff --git a/trading_system/config.py b/trading_system/config.py index 1ab5f05..ee40f70 100644 --- a/trading_system/config.py +++ b/trading_system/config.py @@ -184,7 +184,7 @@ def _get_config_value(key, default=None): DEFAULT_TRADING_CONFIG = { # ===== 用户风险旋钮(山寨币专属策略)===== 'AUTO_TRADE_ENABLED': True, # 自动交易总开关 - 'MAX_OPEN_POSITIONS': 4, # 同时持仓数量上限(总仓位12% / 单笔1.5% = 最多4个) + 'MAX_OPEN_POSITIONS': 2, # 主流币模式:同时持仓上限2个,降低相关性与回撤叠加 'MAX_DAILY_ENTRIES': 15, # 每日最多15笔(快速验证模式:提高上限以快速验证策略) # 全局熔断:按账户维度限制“继续恶化” 'DAILY_LOSS_LOCK_ENABLED': True, # 开启日亏损熔断 @@ -217,10 +217,10 @@ DEFAULT_TRADING_CONFIG = { 'MIN_POSITION_PERCENT': 0.01, # 最小仓位1% 'MIN_MARGIN_USDT': 2.0, # 最小保证金2美元(降低门槛,允许高杠杆小资金交易,避免被 risk_manager 拦截) 'MIN_CHANGE_PERCENT': 0.5, # 最小价格变动0.5% - 'TOP_N_SYMBOLS': 30, # 扩大候选池到30个,增加机会 + 'TOP_N_SYMBOLS': 8, # 主流币模式:缩小候选池,提高信号质量 'SCAN_EXTRA_SYMBOLS_FOR_SUPPLEMENT': 20, # 智能补单候选增加 - 'MAX_SCAN_SYMBOLS': 500, # 扫描前500个 - 'EXCLUDE_MAJOR_COINS': True, # 排除主流币 + 'MAX_SCAN_SYMBOLS': 120, # 主流币模式:减少扫描面,降低噪声与计算负载 + 'EXCLUDE_MAJOR_COINS': False, # 主流币模式:不排除主流币 'STOP_LOSS_PERCENT': 0.05, # 基础止损5%(配合ATR动态止损,作为保底) 'TAKE_PROFIT_PERCENT': 0.25, # 第二目标止盈25%(略拉近止盈以提高触达率) 'TAKE_PROFIT_1_PERCENT': 0.12, # 第一目标止盈12%(山寨币不必久拿,早点落袋为安,降低反转风险) @@ -267,7 +267,7 @@ DEFAULT_TRADING_CONFIG = { 'MIN_VOLUME_24H': 30000000, # 24小时成交额≥3000万美元,过滤垃圾币 'MIN_VOLUME_24H_STRICT': 50000000, # 严格过滤≥5000万美元 'MIN_VOLATILITY': 0.03, # 最小波动率3%,过滤死币 - 'MIN_SIGNAL_STRENGTH': 7, # 信号强度≥7(山寨短线:适度放宽以多抓机会,配合扫描器回退弱信号;偏保守可改为8) + 'MIN_SIGNAL_STRENGTH': 8, # 主流币模式:提高信号门槛,减少低质量入场 # ===== 资金费率过滤(开仓前)===== 'FUNDING_RATE_FILTER_ENABLED': True, # 开仓前检查资金费率,避免在费率极端不利于己方时进场 'MAX_FUNDING_RATE_FOR_LONG': 0.001, # 做多时 lastFundingRate 超过此值则跳过(0.1%=多头付费高) @@ -321,14 +321,14 @@ DEFAULT_TRADING_CONFIG = { # ===== 仓位管理优化(山寨币专属)===== 'USE_FIXED_RISK_SIZING': True, # 固定每笔风险,避免亏损扩大 - 'FIXED_RISK_PERCENT': 0.01, # 每笔最多亏总资金1%(回归盈利期风控水平) - 'MAX_LEVERAGE_SMALL_CAP': 4, # 高波动/小众币最大杠杆(回归盈利期设置) - 'MIN_LEVERAGE': 4, # 动态杠杆下限,允许在风险较大时降低杠杆 + 'FIXED_RISK_PERCENT': 0.005, # 主流币模式:每笔风险0.5%,优先稳定 + 'MAX_LEVERAGE_SMALL_CAP': 3, # 主流币模式:限制高波动标的杠杆上限 + 'MIN_LEVERAGE': 2, # 主流币模式:动态杠杆下限 'ATR_LEVERAGE_REDUCTION_THRESHOLD': 0.05, # ATR超过5%时降低杠杆 - 'LEVERAGE': 4, # 基础杠杆(回归盈利期设置) + 'LEVERAGE': 2, # 主流币模式:基础低杠杆 'USE_DYNAMIC_LEVERAGE': True, # 开启动态杠杆(基于止损宽度自动调整) 'MAX_SINGLE_TRADE_LOSS_PERCENT': 20.0, # 单笔交易最大本金亏损率(20%),用于限制杠杆 - 'MAX_LEVERAGE': 12, # 最大杠杆(回归盈利期上限) + 'MAX_LEVERAGE': 5, # 主流币模式:限制最大杠杆,控制尾部风险 # 移动止损与保本:全局总开关(关闭后不执行移动止损、不执行盈利保本) 'PROFIT_PROTECTION_ENABLED': True, # True=启用移动止损与保本,False=全部关闭 'USE_TRAILING_STOP': True, # 在 PROFIT_PROTECTION_ENABLED 为 True 时生效 @@ -355,11 +355,11 @@ DEFAULT_TRADING_CONFIG = { # 当 marketRegime=unknown(K线不足/未判定)时,是否允许自动交易;默认关闭 'AUTO_TRADE_ALLOW_UNKNOWN': False, # 是否允许 4H 趋势为 neutral 时自动交易(山寨短线:默认开,4H 中性也开单以多抓机会;偏保守可改为 False) - 'AUTO_TRADE_ALLOW_4H_NEUTRAL': True, + 'AUTO_TRADE_ALLOW_4H_NEUTRAL': False, # 震荡市额外提高的最小信号门槛(0-3 建议范围);默认 +2,减少边缘信号 'RANGING_MARKET_SIGNAL_BOOST': 2, # 自动交易白名单(逗号分隔)。非空则仅名单内合约自动下单;空=不限制。扫描仍可覆盖全市场,仅自动分支拦截。 - 'AUTO_TRADE_SYMBOL_WHITELIST': '', + 'AUTO_TRADE_SYMBOL_WHITELIST': 'BTCUSDT,ETHUSDT,BNBUSDT,SOLUSDT', # ===== 趋势入场过滤(防止追在半山腰)===== # 是否启用基于趋势状态的入场过滤: