fix: BG 22002视为已平仓不重试 + 删除STBL
- closeLeg: 22002(暂无仓位可平)→ 标记已平仓,不报错不重试 - closeLeg: 新增holdSide参数传给BG API - scanner.go: 删除STBL币对
This commit is contained in:
@@ -3,6 +3,7 @@ package main
|
|||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"log"
|
"log"
|
||||||
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
@@ -1404,9 +1405,15 @@ func (t *Trader) closeLeg(leg *PositionLeg) string {
|
|||||||
}
|
}
|
||||||
resp, err := t.bitget.PlaceMarketOrder(side, leg.Coin+"USDT", leg.Size, "close", holdSide)
|
resp, err := t.bitget.PlaceMarketOrder(side, leg.Coin+"USDT", leg.Size, "close", holdSide)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Sprintf("BG close 22002: %v", err)
|
// 22002 = no position on exchange (already closed manually or previously)
|
||||||
|
if strings.Contains(err.Error(), "22002") {
|
||||||
|
log.Printf("[Trader] BG %s %s: already closed (22002)", side, leg.Coin+"USDT")
|
||||||
|
} else {
|
||||||
|
return fmt.Sprintf("%v", err)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
log.Printf("[ExRes] BG close %s %s: size=%s → response=%s", side, leg.Coin+"USDT", leg.Size, resp)
|
||||||
}
|
}
|
||||||
log.Printf("[ExRes] BG close %s %s: size=%s → response=%s", side, leg.Coin+"USDT", leg.Size, resp)
|
|
||||||
} else {
|
} else {
|
||||||
log.Printf("[Order] HL close %s %s | size=%s", side, leg.Coin, leg.Size)
|
log.Printf("[Order] HL close %s %s | size=%s", side, leg.Coin, leg.Size)
|
||||||
resp, err := t.hyperliquid.PlaceMarketOrder(leg.Coin, side, leg.Size)
|
resp, err := t.hyperliquid.PlaceMarketOrder(leg.Coin, side, leg.Size)
|
||||||
|
|||||||
Reference in New Issue
Block a user