Exit Timing
8 min read
Analyze time-based patterns in your exits to determine whether you close too early, too late, or at optimal moments.
8 min read
Analyze time-based patterns in your exits to determine whether you close too early, too late, or at optimal moments.
Every trade has a window of opportunity. Hold too briefly and you leave money on the table. Hold too long and the market takes it back. The difference between a good trade and a great one often comes down to when you leave.
Exit timing is the discipline of comparing your exit timestamp against your trade's MFE timestamp to detect whether you systematically close too early or too late.
Most traders obsess over price targets but ignore the clock — and that gap is where systematic bias lives. Loss-aversion makes you snap winners early; the dopamine of last week's runner makes you hold this week's stall too long. Both are detectable in the timestamps of your log. Time reveals critical information about trade health: a trade that reaches 1.5R in 8 minutes tells you something very different from one that grinds sideways for 45 minutes before crawling to the same level.
When a trade stalls, it is no longer doing what you expected. Time decay in a position is real -- not in the options sense, but in terms of opportunity cost and increasing reversal probability.
If a trade has not reached a meaningful profit threshold within your expected holding window, the original thesis is weakening regardless of where price sits.
The optimal holding period varies by setup type. Analyzing your trade journal for time-in-trade vs. outcome reveals patterns that price alone cannot show.
| Setup Type | Typical Peak MFE Window | Recommended Max Hold |
|---|---|---|
| Liquidity sweep scalp | 2 - 10 minutes | 15 minutes |
| Order block reclaim | 5 - 30 minutes | 45 minutes |
| Breakout continuation | 10 - 60 minutes | 2 hours |
| HTF structure trade | 1 - 8 hours | 24 hours |
These are starting points. Your own data will sharpen these ranges over time. The key is to track and measure rather than guess.
Maximum Favorable Excursion (MFE) — defined in the earlier MAE, MFE & Stop Optimization lesson — analyzed across hundreds of trades consistently reveals a pattern: most of your edge is captured early.
On your last 50 closed winners, compute delta = exit_time - mfe_time per trade. If the median delta is negative (exit before MFE peak) by more than ~20% of average hold, you exit too early. If positive by more than ~30%, you hold past the peak and bleed back unrealized PnL. The remaining hold time past the MFE peak contributes only marginal profit while reversal risk compounds.
This creates a clear decision framework. Once your trade passes the typical MFE window without hitting target, the probability of reaching full target drops significantly while the probability of a drawdown increases.
| Bias | Median delta (exit_ts − mfe_ts) | Realized R / MFE R | Behavioral root | Fix |
|---|---|---|---|---|
| Too Early | < −20% of avg hold | < 0.5 | Loss-aversion, fear of giving back | Add a min-hold floor; require structural invalidation, not stall, to exit |
| On-Time | within ±20% of avg hold | 0.7 – 0.9 | Disciplined process | Maintain; refine thresholds quarterly |
| Too Late | > +30% of avg hold | < 0.6 | Recency bias, hope, anchoring on prior runners | Hard time-cap at P90 of past time-to-MFE; partial out at MFE-peak proxies |
That is the diagnostic. Here are the two rules that operationalize it on a per-trade basis.
If BTC/USDT moves from your $67,200 entry to $67,450 within the first 5 minutes but then consolidates for the next 20 minutes without progressing, the momentum thesis is failing. A time-based partial exit or full exit here often outperforms waiting for a stop or target hit.
Price reached $67,450 in 5 min, stalled 20 min. Time exit at $67,320 after consolidation narrowed. Avoided full reversal to $67,100.
The stall exit preserved capital. Without a time rule, this trade would have hit the stop loss 35 minutes later.
When price moves with exceptional speed, it often signals a climactic move. Trades that achieve 2R within the first two minutes on BTC/USDT frequently reverse sharply.
Hit 2.5R in 90 seconds on a liquidation cascade. Took 80% off immediately due to velocity rule. Runner stopped at break-even on the snap-back.
Velocity exits capture windfall profits before the inevitable mean reversion.
Categorize your trades by setup type and record these time metrics for each:
Load your log: df = pd.read_csv('trades.csv', parse_dates=['entry_ts','exit_ts','mfe_ts']). Compute df['delta_min'] = (df.exit_ts - df.mfe_ts).dt.total_seconds() / 60. Group by setup type and inspect df.groupby('setup_type')['delta_min'].describe(). A median far from zero is your systematic bias. Tradervue, Edgewonk, and most modern journaling tools will export the MFE timestamp directly; if yours does not, switch.
Sample size determines whether the median delta you compute is signal or noise. Use these thresholds per setup type before acting on any bias finding.
| Trades per setup | Inference status | What to do |
|---|---|---|
| Under 30 | Noise | Do not act on the median delta yet. |
| Around 50 | Shape emerges | Identify the direction of your bias. |
| Around 150 | Stable median | Set quantile-based checkpoints. |
Plot time-to-MFE distributions per setup — each setup type clusters around a specific window, and trades that deviate far from this window underperform.
Set a timer when you enter a trade. Derive three time checkpoints from your last 50 trades of that setup: checkpoint_1 = P50 of time-to-1R (progress check), checkpoint_2 = P50 of time-to-MFE (urgency check — should I be scaling out?), and max_hold = P90 of time-to-MFE (exit regardless unless in strong profit). Quantiles, not gut feel.
Time exits are less useful in two scenarios. First, during strong trending conditions where higher-timeframe structure is clearly in your favor -- here, patience is rewarded and premature time exits cut winners; the right tool there is a structural trailing stop, not a clock. Second, on swing trades where the thesis explicitly requires multi-session holding.
The rule of thumb: the shorter your timeframe, the more weight time deserves as an exit signal. For scalps and intraday trades, time is one of your most reliable exit indicators.
A stall exit is a discretionary or rule-based close triggered when a trade has moved partway toward target, then consolidates without further progress for longer than your typical time-to-MFE for that setup. The thesis (a continuation in your favor) is empirically failing, so you exit before the stop is hit.
A velocity exit closes (or partials) a trade that achieves an outsized R-multiple unusually fast — for example, hitting 2R in under two minutes during a liquidation cascade. Climactic speed often precedes a sharp mean-reversion, so you bank the windfall instead of waiting for full target.
Skip time exits during strong trending regimes where higher-timeframe structure clearly favors your direction (use a structural trailing stop instead) and on swing trades whose thesis explicitly requires multi-session holding. The shorter your timeframe, the more weight time deserves as an exit signal.