Real-world trade execution guides and field tactics to help you navigate extreme market volatility and manage open DCA positions safely.
This tactic demonstrates how to manually intervene on the GUI to inject an additional, heavy Safety Order (SO) when the market has experienced a deep crash, pulling your average cost down near the local bottom to exit safely with only a minor rebound.
Imagine running a spot DCA strategy with Stop Loss disabled (use_static_sl = False). The bot executed the initial Base Order (BO) and completed all 3 pre-configured Safety Orders (SO1, SO2, SO3). Suddenly, the market takes an unexpected -20% dive. The bot runs out of configured safety orders, sits idle, and holds floating negative PnL while waiting for price recovery.
Panic Sell immediately locks in a painful loss.When technical analysis shows the price has reached an oversold area and formed signs of a local bottom, you can modify configuration on the GUI to inject a heavy SO4 order:
3 to 4 (authorizing one more DCA order).2.0, 4.0, 6.0, update to 2.0, 4.0, 6.0, 15.0 (setting the trigger at -15%).2.0 or higher) so that SO4 enters with double the Base Order capital, adding sufficient weight to pull down the position's average price.base_order_price). Because market price (-20%) has dropped beyond the new trigger (-15%), the buy condition is instantly validated.buy_count). Completed SO1, SO2, and SO3 orders are preserved; the higher multiplier will only apply to SO4 and future orders without retroactively purchasing for past levels.buy_price).buy_price, moving the exit lines dramatically lower.The market no longer needs to recover 20%. A realistic bounce of just 4% - 5% from the bottom will easily touch the newly lowered Take Profit targets, triggering liquidation to release 100% of the invested capital safely.
SO capital multiplier back to standard or turn on an indicator filter (e.g., RSI). This prevents the bot from opening the next fresh cycle with an oversized multiplier on an unfiltered entry.tp3_sell_percent to 100.0 if you are not running Trailing TP/Dynamic TP, ensuring no residual dust remains after exit.use_rsi is active, ensure the current RSI value has not dipped below rsi_min, which pauses purchases during severe panics.This case study explains how the bot's dual-layered RSI filtering mechanism prevents your account from blindly buying into a vertical market crash (catching a falling knife), ensuring your capital is deployed only when the panic subsides.
You are trading a volatile altcoin and want the bot to automatically accumulate positions during market dips. You set up a DCA strategy with price steps of -4%, -8%, and -15%.
If a "flash crash" occurs and the coin plummets vertically by -20% in just a few minutes, a bot without indicator filters (Blind Buy) will instantly trigger the Base Order and all subsequent Safety Orders on the way down. It burns through your entire DCA capital reserve before the coin even reaches the true bottom.
rsi_min SafeguardBy using the bot's advanced RSI configuration, you establish a strict "no-trade zone" during extreme market panic. On the GUI, you configure:
use_rsi = True).30 (Start looking for buy opportunities when RSI drops below 30).20 (The absolute panic threshold).When the flash crash happens, the price drops violently and the RSI plummets directly to 12. Here is how the bot's logic protects your capital:
The bot's algorithm demands that the RSI must be strictly *between* rsi_min and rsi_oversold. Because the RSI (12) is below your rsi_min (20), the bot refuses to open a Base Order. It sits idle, letting the knife fall until the selling momentum exhausts and the RSI curls back up above 20.
What if the bot had already purchased the Base Order *before* the crash? As the price slices through your -4% and -8% DCA thresholds, the bot evaluates the conditions. Because the extreme selling pressure has forced the RSI below your rsi_min of 20, the bot completely freezes all DCA purchases. It ignores the price drops and protects your backup capital, refusing to average down on a free-falling asset until the RSI recovers above the 20 mark.
The rsi_min parameter is your ultimate shield against market capitulation. If you trade highly volatile assets (like meme coins), setting a tighter rsi_min (e.g., 25) ensures the bot waits for structural stability before deploying your hard-earned DCA capital.
This case study illustrates how to abandon fixed profit targets and let the bot dynamically ride massive price pumps, only exiting when the momentum finally dies.
You are trading a low-cap altcoin or meme coin known for sudden, explosive upward movements. You want to capture as much of the pump as possible.
If you use standard Static Take Profit (e.g., selling at a fixed +3% or +5%), the bot executes perfectly, but you might watch in frustration as the coin continues to pump 20%, 50%, or 100% right after you sold. You missed the lion's share of the move.
Configure the bot to ignore fixed exit lines and instead follow the price upwards:
use_static_tp = False).use_trailing_tp = True).2.0 (The bot won't activate trailing until you are at least 2% in profit).1.0 (The bot will sell if the price drops 1% from its absolute peak).highest_price in its memory. The exit trigger line automatically drags itself up, staying exactly 1.0% below the new peak.This tactic shows how to disconnect a specific coin from the DCA engine when extreme bad news hits, protecting your capital from being dragged down by a dying asset.
The bot is running standard DCA on a pair. Suddenly, the project gets hit with severe FUD (e.g., developers dumping, threat of delisting, or a major hack), and the chart is collapsing.
The bot's discipline becomes a liability here. As the price crashes, the bot will obediently buy SO1, SO2, and SO3, throwing good money after bad into a coin that might never recover. If you hit Panic Sell, you take a devastating realized loss immediately.
You can freeze the asset without immediately realizing the loss:
SYMBOL_STATES configuration. The bot is completely forbidden from buying any more Safety Orders for this pair, securing your USDT balance for other, healthier coins.ISOLATED_ORDERS ledger. A separate background loop continuously monitors its price without interfering with your main trading activities.This case demonstrates how to use the Average True Range (ATR) indicator to make your Stop Loss flexible, preventing "whales" from hunting your stop-loss during choppy market conditions.
The market is in a sideways, choppy phase. Price action is erratic, featuring long wicks (whipsaws) designed to liquidate high-leverage traders and trigger stop-losses.
If you use a fixed Static SL of 5%, a random market wick can easily drop 5.1%, trigger your Stop Loss, and then immediately shoot back up into profit territory. You took an unnecessary loss because your stop was rigid.
Let the bot measure the market's "heartbeat" (volatility) and adjust the stop distance accordingly:
use_static_sl = False).use_dynamic_sl = True).14.2.0.buy_price - (multiplier * ATR). This pushes your Stop Loss further away, safely out of reach of malicious wicks.This case explains the bot's built-in intelligence that prevents your trading cycles from crashing due to exchange-imposed minimum trade limits.
You are testing a strategy with a very small budget, allocating only 10 USDT for your Base Order, and using a 3-tier Static Take Profit (e.g., TP1 sells 40%, TP2 sells 60%).
Binance enforces a strict "Min Notional" rule: every single buy or sell order must be worth at least 5 USDT. If you instruct the bot to sell 40% of a 10 USDT position at TP1, the order value is only 4 USDT. Normally, the exchange would reject this, causing the bot to crash and leaving your position stuck forever.
You do not need to do any manual math. The Server handles this completely automatically in the background: