空跑补一次带签名请求,否则密钥与白名单根本没被验到
dryrun 第 5 步声称"会真实验到密钥与白名单",但 start() 在空跑下于密钥检查 之前就 return,全程只发了 contracts() —— 那是公开端点,不验签。于是空跑会 "通过"却什么都没测到。这种假保证比不测更糟:等第一个真信号来时才暴露,而 信号那时正在过期,没有从容排查的余地。 现在空跑返回前发一次 account()(只读),失败即退出并给出码表(40018 白名单 / 40037 key 不存在 / 40001,40009 secret,passphrase / 40099 权限)。顺带报 可用余额,并在不足 MAX_OPEN 笔并发所需保证金时告警。 两处 SystemExit 会绕过 run() 的收尾,退出前不关 aiohttp 会话,日志尾部一串 Unclosed client session 会把真正的报错顶出视野。都补上了 close()。 BITGET_PASSPHRASE 现在也接受 BITGET_API_PASSPHRASE:另两项都带 API_,只有 它不带,很容易顺手写错,而后果是"像是填了"但签名一直失败。我自己就踩了。 启动时打一行 Telegram 是否启用。配错 token 的表现原本是完全静默。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+6
-1
@@ -44,7 +44,12 @@ class Bitget:
|
||||
dry: bool = False):
|
||||
self.key = key or os.environ.get("BITGET_API_KEY", "")
|
||||
self.secret = secret or os.environ.get("BITGET_API_SECRET", "")
|
||||
self.passphrase = passphrase or os.environ.get("BITGET_PASSPHRASE", "")
|
||||
# 两个名字都收:另外两项是 BITGET_API_KEY / BITGET_API_SECRET,
|
||||
# 这一项却没有 API_,很容易顺手写成 BITGET_API_PASSPHRASE。写错的
|
||||
# 后果是"密钥像是填了"但签名一直失败,排查起来很绕
|
||||
self.passphrase = (passphrase
|
||||
or os.environ.get("BITGET_PASSPHRASE", "")
|
||||
or os.environ.get("BITGET_API_PASSPHRASE", ""))
|
||||
self.dry = dry
|
||||
self._sess = None
|
||||
|
||||
|
||||
Reference in New Issue
Block a user