session complete: 8-coin fleet, tight RSI gate, watchdog test 70/72, 33/35 unit

This commit is contained in:
drjones
2026-08-03 00:26:36 -07:00
parent f3d9cafbab
commit 820c542d89
9 changed files with 398 additions and 7 deletions

11
bot.py
View File

@@ -405,13 +405,14 @@ def decide(cfg, conn, price):
if mode == "DOWN_SPAM": return mom, lv, lc, lw, "DOWN", "spam-mode short"
if mode == "UP_SPAM": return mom, lv, lc, lw, "UP", "spam-mode long"
# ── RSI contrarian: extreme readings → auto-fade ──
# ── RSI contrarian: only on TRUE extremes + reversal confirmation ──
r = rsi(conn)
if r is not None:
if r > 85:
return mom, lv, lc, lw, "DOWN", f"⚠ RSI {r:.0f} extreme overbought → fade DOWN"
if r < 15:
return mom, lv, lc, lw, "UP", f"⚠ RSI {r:.0f} extreme oversold → fade UP"
# Require BOTH extreme RSI AND momentum already reversing
if r > 92 and mom == "DOWN" and mom_score > 0.01:
return mom, lv, lc, lw, "DOWN", f"⚠ RSI {r:.0f} extreme OB + momentum reversing → fade DOWN"
if r < 8 and mom == "UP" and mom_score > 0.01:
return mom, lv, lc, lw, "UP", f"⚠ RSI {r:.0f} extreme OS + momentum reversing → fade UP"
# ── swing threshold gate ──
thr = cfg.get("swing_threshold_pct", 0.005)