diff --git a/okx-auto-position/scripts/process_signal.py b/okx-auto-position/scripts/process_signal.py index 17f586a..bb5efb1 100644 --- a/okx-auto-position/scripts/process_signal.py +++ b/okx-auto-position/scripts/process_signal.py @@ -231,7 +231,11 @@ def classify_signal(fields): if '减仓' in text or (pnl < 0 and '减' in text): return 'reduce' - # 默认为新开仓或加仓(由advisor判断) + # 加仓信号 + if '加仓' in text or '追仓' in text: + return 'add' + + # 默认为新开仓 return 'open' # ─── 格式化 ────────────────────────────────────────────────────────────── @@ -782,6 +786,15 @@ def process_signal(text): trader_entry=float(fields.get('entry', '0').replace(',', '')), trader_pnl=float(fields.get('pnl', '0').replace(',', '')), raw_text=text, outcome='pushed') + elif signal_type == 'add': + # 加仓信号: 推消息但不自动下单 (你已有同向持仓时容易重复) + msg = format_message(fields, rec, signal_type) + _tracker_record(trader=trader, symbol=symbol, side=side, + leverage=int(leverage) if leverage else 10, + trader_size=float(fields.get('size', '0').replace(',', '')), + trader_entry=float(fields.get('entry', '0').replace(',', '')), + trader_pnl=float(fields.get('pnl', '0').replace(',', '')), + raw_text=text, outcome='pushed_add') else: # 需要确认或减仓信号 msg = format_message(fields, rec, signal_type)