A trailing stop can follow a favorable move and still give back open profit. This Chandelier model combines a completed range breakout with an ATR-based stop that may tighten after later candle closes. The useful distinction is simple: a calculated line, a requested modification and accepted protection are different events.
1. Give the entry and exit different jobs
The Donchian strategy explains breaks of previous highs and lows. Here that familiar trigger starts a different management policy. Unlike the fixed protection in Supertrend and the frozen-center target in Keltner re-entry, this stop follows a rolling extreme minus or plus an ATR allowance. Different exit rules do not establish independent exposure or an edge.
2. Define the data and raw Chandelier levels
Use consecutive, valid EURUSD H1 Bid candles on a recorded broker server clock. One pip is 0.00010; the example tick is 0.00001. At each completed candle t, calculate TR_t = max(High_t, Close_prev) − min(Low_t, Close_prev) and A_t = SMA(10, TR). Require positive ATR and ten valid True Ranges, including the preceding close needed by the oldest one.
Let HH_t and LL_t be the highest high and lowest low of the last ten completed candles, including t. Define RawBUY_t = HH_t − 3 × A_t and RawSELL_t = LL_t + 3 × A_t. This model deliberately uses a simple ATR average; do not substitute a Wilder-smoothed platform value. The raw line may loosen when ATR rises or an old extreme leaves the window. The broker stop below may not.
3. Require one completed breakout C
Before C opens, freeze U and L as the high and low of the previous ten completed candles, and A0 as their ready ATR. BUY requires a bullish C with C_close > U and C_close − U ≤ 0.5 × A0. SELL requires a bearish C with C_close < L and L − C_close ≤ 0.5 × A0. In either direction require 0 < C_high − C_low ≤ 2 × A0. Equality with the breakout boundary fails; a wick is insufficient.
Evaluate only while the symbol has no position or pending candidate. Save A_C and the raw levels at C's close, using the newly completed C in their ten-candle windows. A rejected signal cannot be replaced by a later candle on the same candidate. After rejection or exit, wait one full completed H1 candle without a candidate before considering a fresh C.
4. Inspect the first quote once
Use the first received tradable quote after C, arriving within 15 seconds with age at most 2 seconds on synchronized recorded clocks. Require Bid < Ask, spread no greater than both 2 pips and 0.2 × A_C, and abs(Bid − C_close) ≤ 0.25 × A_C. Bid must remain above U for BUY or below L for SELL. Any failure cancels; do not wait for a more attractive quote.
BUY enters at Ask, with initial Bid stop S0 equal to RawBUY_C rounded down to a valid tick. SELL enters at Bid, with initial Ask stop S0 equal to RawSELL_C + 0.00020 rounded up. The fixed 2-pip short-side allowance is a declared conversion, not a forecast of future spread. Require S0 below current Bid for BUY or above current Ask for SELL, valid broker distances, permission, margin and volume. Establish the valid initial stop with the order; otherwise do not open. There is no Take Profit order.
5. Size the initial loss without inventing a target
Measure dSL in pips from executable entry to S0: Ask minus Bid stop for BUY, or Ask stop minus Bid entry for SELL. With verified pip value V per lot, total additional adverse execution allowance s, round-turn commission c and financing reserve f, use Loss1 = (dSL + s) × V + c + f. Spread already inside dSL is counted once. Require Loss1 positive. A trailing-only plan has no fixed target reward and no target reward-to-risk gate; it still needs outcome-based validation.
Choose a permitted volume no greater than Budget / Loss1, rounded down to the actual broker step. Check the minimum lot, margin and aggregate account limits; skip on failure. The ATR sizing guide expands the calculation. After a fill, reconcile actual entry, accepted protection and remaining costs. Missing protection or excess budget blocks new entries and requests closure; reconcile the actual position before any retry. A request is not a fill.
6. Tighten from the last accepted stop
After each completed post-entry candle t, calculate a new raw proposal. For BUY, round RawBUY_t down and set Desired = max(AcceptedSL, RoundedRawBUY_t). For SELL, round RawSELL_t + 0.00020 up and set Desired = min(AcceptedSL, RoundedAskSELL_t). AcceptedSL is the last confirmed broker stop, not the previous indicator value or an unconfirmed request. Equal levels require no modification.
Use the next tradable quote no more than 2 seconds old after t closes. First reconcile any actual protective fill. If still open and the time limit below has arrived, request closure. Otherwise, if Bid is at or below Desired for BUY, or Ask is at or above Desired for SELL, request market closure; do not award a historical fill at the proposed level. Only when still on the safe side and the broker constraints pass may an improving stop be submitted. Update AcceptedSL only after acceptance.
No new level applies inside the candle that generated it. If an improving modification is invalid or rejected, retain the last accepted stop while requesting closure at the next executable side. An uncertain response requires position/order reconciliation before another request. This policy deliberately exits rather than assuming a rejected upgrade succeeded. No stop widening, partial exit, averaging down or automatic reversal is included.
7. Set the holding limit and failure policy
After 12 completed H1 candles counting the entry candle, request closure at the next executable Bid for BUY or Ask for SELL. Earlier actual stop fills take priority. For entry and management, reject missing hours, invalid OHLC or unavailable indicator data; if data fail while a position is open, keep accepted protection and request closure. Predeclare calendar, impact labels and server-time conversion. Do not enter if scheduled high-impact news for either currency, rollover or market closure falls within the planned 12-candle window. Missing calendar coverage is unverified, and surprises remain possible.
8. Read the invented BUY walkthrough
Start with ten identical preparatory candles: open and close 1.10000, high 1.10050, low 1.09950; the preceding close is 1.10000. Hence U = 1.10050 and A0 = 0.00100. C closes 3 pips above U, within the 5-pip extension limit, and its 11-pip range is below 20 pips. C updates ATR to 0.00101 and HH to 1.10100, giving S0 = 1.09797.
| Candle | Bid open | Bid high | Bid low | Bid close |
|---|---|---|---|---|
| C | 1.10000 | 1.10100 | 1.09990 | 1.10080 |
| J1 | 1.10080 | 1.10160 | 1.10060 | 1.10140 |
| J2 | 1.10140 | 1.10150 | 1.09920 | 1.10000 |
Assume a timely first quote Bid 1.10080 / Ask 1.10100, sufficient margin, valid protection and no calendar exclusion. BUY fills at the stated Ask. J1 is the entry candle; at its close ATR remains 0.00101 and HH rises to 1.10160. Assume the next quote is Bid 1.10140 / Ask 1.10160 and the valid modification is accepted at 1.09857. J1 traded under the earlier 1.09797 stop, not the new level.
J2 raises ATR to 0.00114 while HH stays 1.10160. Its raw line falls to 1.09818, so the ratchet retains 1.09857. Assume the next quote is Bid 1.10000 / Ask 1.10020 and no prior protective fill occurred. This is a hypothetical management sequence, not a market forecast or completed profitable trade. The example supplies no final exit.
9. Optional: reproduce ATR, costs and volume
Show the rolling windows and exact risk arithmetic
Each preparatory True Range is 10 pips. C has 11 pips, J1 has 10 and J2 has 23. Their ten-range means are (9 × 10 + 11) / 10 = 10.1, (8 × 10 + 11 + 10) / 10 = 10.1 and (7 × 10 + 11 + 10 + 23) / 10 = 11.4 pips. The raw BUY levels are 1.10100 − 3 × 0.00101 = 1.09797, 1.10160 − 3 × 0.00101 = 1.09857 and 1.10160 − 3 × 0.00114 = 1.09818.
Assume a USD account, 100,000 EUR per lot, V = $10 per pip per lot, s = 1 pip total extra adverse execution, c = $7 per lot round turn and f = $0. Fees scale linearly with no minimum charge. Then dSL = (1.10100 − 1.09797) / 0.00010 = 30.3 pips and Loss1 = (30.3 + 1) × $10 + $7 = $320. On illustrative equity $10,000 with budget $100, $100 / $320 = 0.3125 lots. A 0.01 minimum and step permit 0.31 lots and estimated loss 0.31 × $320 = $99.20; 0.32 lots would estimate $102.40 and exceed budget.
These are planning assumptions, not a risk recommendation or guaranteed loss cap. Different contracts, currencies or fee schedules need a new estimate. Tightening the stop does not guarantee a profit or allow a larger position in this model. Gaps, financing and worse execution can exceed the estimate. The cost guide explains the underlying assumptions.
10. Validate the order of events
Replay the initial breakout, first quote, actual fills, candle closes, proposed modifications and broker responses in timestamp order. Use real Bid/Ask ticks: Bid triggers BUY stops and Ask triggers SELL stops. Never synthesize historical Ask by adding the 2-pip allowance to Bid. If OHLC cannot establish whether the old stop filled before a new proposal became available, use finer data or flag the case unresolved under a predeclared conservative convention.
Keep the entry identical when comparing this trailing exit with fixed exits; keep all tested variants and separate development, later evaluation and forward testing. Measure costs, drawdown, time exits, rejected changes and profit surrendered by the trail. A trailing rule needs no invented target ratio, but it needs evidence from all outcomes. See the backtesting guide and account-risk guide. No measured return or win rate is claimed here.
11. Chandelier strategy questions
Does the Chandelier line always tighten by itself?
No. Its raw value can move away from price as ATR or the rolling extreme changes. The one-way broker-stop ratchet is an additional rule of this model. It is based on accepted protection, not the last raw value.
Can a new stop be applied to the candle that calculated it?
No. The candle must finish before its full high, low and ATR are known. Its proposal is evaluated at the next fresh quote and becomes protection only after acceptance. Applying it earlier introduces future information.
Why is there no 1.50 reward-to-risk check?
This model has no fixed profit target, so there is no predefined target reward for that calculation. Initial loss and account exposure are still limited by estimates, and the complete exit distribution must be tested. Absence of a target is not evidence of unlimited reward.
Does a higher stop guarantee a smaller final loss?
It can reduce planned price risk after acceptance, but gaps, execution and fees can change the realized result. A requested change may be rejected. Preserve the accepted stop and reconcile the actual position; never treat the drawn line as a broker fill.
12. Technical reference and scope
The official TradingView Chandelier Exit reference explains the raw extreme-and-ATR construction. Our breakout, SMA smoothing, stop ratchet, quote-side conversion and execution policy are explicitly defined research choices, not platform defaults or a source-endorsed profitable strategy.
Forex and leveraged trading involve substantial risk. This strategy is educational, not investment advice. Past or simulated results do not guarantee future performance.