feat: MM adaptive cut-loss with profit floor
When one leg fills, instead of immediately market-selling the unfilled leg, enter a continuous monitoring loop that: - Places a limit sell only when price >= minAdaptivePrice floor (floor = mmAdaptiveMinCombined - filledLegPrice, default combined 1.20) - Chases price upward (>2% improvement → re-place limit higher) - Cancels limit on dip >5% or below floor, then waits for recovery - Market-sells only as last resort when CL time is reached New config: MM_ADAPTIVE_CL (toggle), MM_ADAPTIVE_MIN_COMBINED (floor), MM_ADAPTIVE_MONITOR_SEC (poll interval). Legacy immediate market-sell path preserved when MM_ADAPTIVE_CL=false. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
526076fe6e
commit
d3e5567c97
@@ -110,6 +110,20 @@ MM_RECOVERY_THRESHOLD=0.70
|
||||
# USDC size for the recovery buy (0 = use MM_TRADE_SIZE)
|
||||
MM_RECOVERY_SIZE=0
|
||||
|
||||
# Enable adaptive CL when one leg fills (true = patient limit orders, false = immediate market sell)
|
||||
MM_ADAPTIVE_CL=true
|
||||
|
||||
# Minimum combined sell price (both legs) required to place a limit order.
|
||||
# Formula: filledLegPrice + unfilledLegPrice >= MM_ADAPTIVE_MIN_COMBINED
|
||||
# Example: filledLeg=0.60, MM_ADAPTIVE_MIN_COMBINED=1.20 → floor=0.60 (won't limit-sell below $0.60)
|
||||
# filledLeg=0.55, MM_ADAPTIVE_MIN_COMBINED=1.20 → floor=0.65
|
||||
# If price is below floor, bot waits for recovery. Market-sell only at CL time as last resort.
|
||||
MM_ADAPTIVE_MIN_COMBINED=1.20
|
||||
|
||||
# Poll interval (seconds) for the adaptive CL loop after one leg fills.
|
||||
# Smaller = more responsive to price changes, more API calls.
|
||||
MM_ADAPTIVE_MONITOR_SEC=5
|
||||
|
||||
# ─────────────────────────────────────────────
|
||||
# ORDERBOOK SNIPER (sniper.js / npm run sniper-sim)
|
||||
# Places tiny GTC BUY orders at a low price on both sides of
|
||||
|
||||
Reference in New Issue
Block a user