# 复制成 tg.env 再填。tg.env 已在 .gitignore 里,不会被提交。 # # 拿 token:Telegram 里找 @BotFather → /newbot → 按提示起名 # 拿 chat id:给你的 bot 随便发一句,然后打开 # https://api.telegram.org/bot/getUpdates # 返回的 result[0].message.chat.id 就是 export TG_TOKEN="" export TG_CHAT="" # 每笔名义额(USDT)。杠杆**不改**手续费与滑点(都按名义额收),所以抬名义额 # 是有真实成本的;抬它的唯一理由是压掉步长取整:实测最差币的偏差 # 100U → 6.7%(SOL)、500U → 1.8%、1000U → 0.6%。 export TG_NOTIONAL="500" # 杠杆只影响占用保证金,不影响名义敞口/手续费/滑点/盈亏绝对值。 # 名义 500 在 10x 下占 50 USDT 保证金;止损在 2 ATR ≈ 0.2%,而 10x 强平约需 # 逆向 10% = 100 个 ATR,差 50 倍,所以这里的杠杆几乎不引入强平风险。 # 交易所侧记得设**逐仓**,让每笔最大损失被保证金封住。 export TG_LEVERAGE="10" # 距「参考价成立」超过这么多秒就标为已失效。参考价是次根开盘价, # 过了就不是回测那个成交价了 export TG_STALE_S="90" # ── 自动化实盘(live_exec.py)────────────────────────────────── # 只读+交易权限,**不要开提币权限** export BITGET_API_KEY="" export BITGET_API_SECRET="" export BITGET_PASSPHRASE="" # 名义额与杠杆。理由同 TG_NOTIONAL:抬名义额是为了压步长取整,不是为了赚更多 export LIVE_NOTIONAL="500" export LIVE_LEVERAGE="10" # 硬约束。这三条封住的是「代价不随仓位缩小」的那几类故障: # MAX_OPEN 失控下单(单笔小但笔数无界) # MAX_DAY 同上,日维度 # MAX_DAY_LOSS 策略真的不行但没人盯着 export LIVE_MAX_OPEN="3" export LIVE_MAX_DAY="15" export LIVE_MAX_DAY_LOSS="20" # 信号超过这么久就不做。参考成交价是次根开盘价,过期后跑的不是回测那个价 export LIVE_STALE_S="20"