diff --git a/backend/api/routes/recommendations.py b/backend/api/routes/recommendations.py index dd44860..1cf14d4 100644 --- a/backend/api/routes/recommendations.py +++ b/backend/api/routes/recommendations.py @@ -118,8 +118,8 @@ async def get_recommendations( # 生成推荐(会自动保存到Redis) # 降低信号强度阈值以获取更多推荐(推荐系统可以更宽松) recommendations = await recommender.generate_recommendations( - min_signal_strength=max(3, min_signal_strength - 2), # 降低2个等级以获取更多推荐 - max_recommendations=max(limit, 30), # 至少生成30个推荐 + min_signal_strength=max(2, min_signal_strength - 3), # 降低3个等级以获取更多推荐(最低2) + max_recommendations=max(limit, 50), # 至少生成50个推荐 add_to_cache=True, min_quality_score=0.0 ) @@ -523,8 +523,8 @@ async def generate_recommendations( # 生成推荐(增量添加到Redis缓存) # 降低信号强度阈值以获取更多推荐(推荐系统可以更宽松) recommendations = await recommender.generate_recommendations( - min_signal_strength=max(3, min_signal_strength - 2), # 降低2个等级以获取更多推荐 - max_recommendations=max(max_recommendations, 30), # 至少生成30个推荐 + min_signal_strength=max(2, min_signal_strength - 3), # 降低3个等级以获取更多推荐(最低2) + max_recommendations=max(max_recommendations, 50), # 至少生成50个推荐 add_to_cache=True, # 添加到Redis缓存 min_quality_score=0.0 # 不过滤,保留所有推荐 ) diff --git a/trading_system/config.py b/trading_system/config.py index 19e062c..fbfb5a6 100644 --- a/trading_system/config.py +++ b/trading_system/config.py @@ -165,8 +165,8 @@ def _get_trading_config(): 'MAX_TOTAL_POSITION_PERCENT': 0.30, 'MIN_POSITION_PERCENT': 0.01, 'MIN_MARGIN_USDT': 0.5, # 最小保证金要求(USDT),避免手续费侵蚀收益 - 'MIN_CHANGE_PERCENT': 2.0, - 'TOP_N_SYMBOLS': 30, # 每次扫描后处理的交易对数量(增加到30以获取更多推荐) + 'MIN_CHANGE_PERCENT': 0.5, # 降低到0.5%以获取更多推荐(推荐系统可以更宽松) + 'TOP_N_SYMBOLS': 50, # 每次扫描后处理的交易对数量(增加到50以获取更多推荐) 'MAX_SCAN_SYMBOLS': 500, # 扫描的最大交易对数量(0表示扫描所有) 'STOP_LOSS_PERCENT': 0.03, 'TAKE_PROFIT_PERCENT': 0.05, @@ -175,9 +175,9 @@ def _get_trading_config(): 'PRIMARY_INTERVAL': '1h', 'CONFIRM_INTERVAL': '4h', 'ENTRY_INTERVAL': '15m', - 'MIN_VOLUME_24H': 10000000, + 'MIN_VOLUME_24H': 5000000, # 降低到500万以获取更多推荐(推荐系统可以更宽松) 'MIN_VOLATILITY': 0.02, - 'MIN_SIGNAL_STRENGTH': 5, # 降低至5以获取更多推荐(推荐系统使用,实际交易仍可设置更高阈值) + 'MIN_SIGNAL_STRENGTH': 3, # 降低至3以获取更多推荐(推荐系统使用,实际交易仍可设置更高阈值) 'LEVERAGE': 10, # 基础杠杆倍数 'USE_DYNAMIC_LEVERAGE': True, # 是否启用动态杠杆(根据信号强度调整) 'MAX_LEVERAGE': 20, # 最大杠杆倍数(动态杠杆上限) diff --git a/trading_system/trade_recommender.py b/trading_system/trade_recommender.py index fa786fe..7066e65 100644 --- a/trading_system/trade_recommender.py +++ b/trading_system/trade_recommender.py @@ -248,7 +248,8 @@ class TradeRecommender: else: trend_4h = 'neutral' - signal_strength = 0 + # 基础分数:即使没有明确信号,也给1分基础分(推荐系统更宽松) + signal_strength = 1 reasons = [] direction = None @@ -320,11 +321,13 @@ class TradeRecommender: min_signal_strength = config.TRADING_CONFIG.get('MIN_SIGNAL_STRENGTH', 7) should_trade = signal_strength >= min_signal_strength - # 禁止逆4H趋势交易 + # 对于推荐系统,允许逆4H趋势交易(但降低信号强度,标记为高风险) if direction and trend_4h: if (direction == 'BUY' and trend_4h == 'down') or (direction == 'SELL' and trend_4h == 'up'): - should_trade = False - reasons.append("❌ 禁止逆4H趋势交易") + # 推荐系统允许逆趋势,但降低信号强度(减2分) + signal_strength = max(0, signal_strength - 2) + reasons.append("⚠️ 逆4H趋势(高风险)") + # 不禁止,但标记为高风险 return { 'should_trade': should_trade,