Fibonacci Retracement Anchors: How to Calculate Candidate Support and Resistance
Learn how to choose Fibonacci retracement anchors, calculate candidate price levels, handle wick-versus-close differences, and record invalidation without hindsight.
A Fibonacci retracement is a set of calculated prices between two selected anchors. It does not discover invisible orders. It converts a completed price range into percentage-based reference levels that can later be tested as candidate support or resistance.
The calculation is simple. The difficult part is deciding which swing owns the anchors, whether the endpoints use wicks or closes, when the end pivot is confirmed, how wide a level's tolerance should be, and when a drawing must be replaced. Two analysts can use the same percentages and still produce different charts because they selected different anchors or platform display conventions.
This guide focuses on those reproducibility problems. It does not provide automatic entries, stops, targets, or claims that one ratio predicts a reversal.
Key takeaways
- A Fibonacci drawing is defined by two price anchors, a direction convention, a ratio set, and a creation cutoff.
- The selected swing matters more than the arithmetic because every level changes when either anchor changes.
- Wick, close, body, and confirmed-pivot anchors are different methods; none should be chosen after seeing which one fits later price.
- The 50% level is commonly displayed but is not derived as a Fibonacci sequence ratio.
- Retracement levels are candidate references, not evidence of hidden liquidity, institutional orders, or guaranteed support/resistance.
- Preserve versions when a swing extends or an anchor rule changes so historical charts are not rewritten with hindsight.
Educational note: Fibonacci retracement is an interpretive technical-analysis tool. Calculated reference prices do not guarantee future reactions or establish a complete trading system.
Which Fibonacci Page Should You Use?
ChartMini separates broad Fibonacci education from the narrower mechanics of anchor selection and level construction.
| Question | Owner |
|---|---|
| What is Fibonacci retracement, which common levels appear on tools, and how is it generally used? | Fibonacci Retracement Trading Guide |
| How should anchors, formulas, direction, tolerance, invalidation, and versions be defined? | This guide |
| How should swing highs and lows be confirmed before they become anchors? | Market Structure Trading Guide |
| How are raw price levels identified separately from calculated references? | How to Identify Support and Resistance Levels |
| How should a calculated level be converted into a zone or tolerance band? | Support and Resistance Zone Width Rules |
| How can anchor and reaction rules be tested without revealing future candles? | Chart Replay Pattern Recognition Practice |
The indexed broad guide remains the owner of generic fibonacci retracement, how to draw fibonacci retracement, and strategy-intent queries. This page owns the construction record required to reproduce one drawing.
What a Fibonacci Retracement Actually Calculates
A retracement tool starts with two endpoint prices:
L= selected low priceH= selected high priceR= swing range =H - Lr= selected retracement ratio expressed as a decimal
Common tool settings include:
0.2360.3820.5000.6180.786
Platforms may include additional or custom ratios. The presence of a ratio in a toolbar does not make it a market law.
Upward-swing calculation
For a completed upward move from L to H, a pullback level below the high is:
Upward-swing retracement price = H - r × (H - L)
The level represents how much of the upward range has been retraced from the high.
Downward-swing calculation
For a completed downward move from H to L, a bounce level above the low is:
Downward-swing retracement price = L + r × (H - L)
The level represents how much of the downward range has been recovered from the low.
Why some platforms show percentages in reverse
One platform may label the swing start as 0% and the end as 100%. Another setting may invert those labels. A trader can also reverse the drawing manually.
The price grid can still be mathematically equivalent if:
- the same high and low are selected;
- the same ratios are enabled;
- the direction convention is documented.
For reproducibility, record both the actual anchor prices and the calculated level prices. Do not rely only on a screenshot showing 38.2% or 61.8%, because the label orientation may differ.
TradingView describes Fibonacci retracement as a two-point drawing whose percentage levels are based on the vertical distance between those points. Fidelity similarly describes the tool as percentages applied to the difference between two selected extremes. Those descriptions support the calculation framework; they do not specify one universal method for choosing the correct swing.
Numerical Example: Same Range, Two Directions
Assume:
- low
L = 100 - high
H = 140 - range
R = 40
Upward swing from 100 to 140
| Ratio | Calculation | Candidate price |
|---|---|---|
| 23.6% | 140 - 0.236 × 40 | 130.56 |
| 38.2% | 140 - 0.382 × 40 | 124.72 |
| 50.0% | 140 - 0.500 × 40 | 120.00 |
| 61.8% | 140 - 0.618 × 40 | 115.28 |
| 78.6% | 140 - 0.786 × 40 | 108.56 |
These are candidate prices below the selected high. The calculation does not say which, if any, will act as support.
Downward swing from 140 to 100
| Ratio | Calculation | Candidate price |
|---|---|---|
| 23.6% | 100 + 0.236 × 40 | 109.44 |
| 38.2% | 100 + 0.382 × 40 | 115.28 |
| 50.0% | 100 + 0.500 × 40 | 120.00 |
| 61.8% | 100 + 0.618 × 40 | 124.72 |
| 78.6% | 100 + 0.786 × 40 | 131.44 |
These are candidate prices above the selected low. They are not automatic resistance.
Notice that some prices repeat across the two tables with complementary labels. This is another reason to store the actual price, ratio, swing direction, and anchor order rather than treating the percentage label as self-explanatory.
The Main Source of Disagreement: Anchor Selection
The formulas are deterministic. Anchor selection is not.
A chart can contain:
- several nested swings;
- a minor pullback inside a larger trend leg;
- an unconfirmed current high or low;
- an extended wick outside a close cluster;
- regular-session and extended-session extremes;
- different highs or lows across data providers;
- adjusted and unadjusted historical prices.
Each valid-looking pair of endpoints creates a different grid. The phrase “draw from the swing low to the swing high” is incomplete unless the swing rule is defined.
Define the Chart Identity First
Before selecting anchors, record the chart settings that determine the visible endpoints.
| Field | Why it matters |
|---|---|
| Instrument and product | Cash, futures, CFD, spot, and exchange-specific products may print different prices |
| Data provider or venue | Highs, lows, gaps, and timestamps can differ |
| Price type | Last, bid, ask, midpoint, mark, or settlement can change an endpoint |
| Session | Regular-hours and extended-hours charts can produce different extremes |
| Timezone | Candle boundaries and session highs/lows depend on it |
| Adjustment | Splits, dividends, futures back-adjustment, and contract rolls can alter history |
| Timeframe | A five-minute swing and a daily swing are not the same event |
| Lookback | The visible sample affects which swing appears dominant |
| Closed-bar rule | A live candle can extend the endpoint before it closes |
| Ratio set | Platforms and templates may enable different levels |
A Fibonacci price is reproducible only when the underlying chart identity is reproducible.
Four Anchor Methods You Can Define
There is no universal anchor method. Choose the method that matches the question, then freeze it before reviewing later price.
Method 1: Wick-extreme anchors
Use the lowest low and highest high of the selected completed swing.
This method answers:
What retracement prices result from the full traded range visible in the selected candles?
Advantages:
- includes all recorded extremes;
- easy to calculate from OHLC data;
- closely matches the default manual action of clicking visible highs and lows.
Risks:
- one anomalous wick can materially change every level;
- extended-session or provider-specific extremes may dominate;
- endpoint selection remains subjective unless the swing itself is defined.
Method 2: Close-to-close anchors
Use selected closing prices rather than intrabar extremes.
This method answers:
What retracement prices result from the completed closing move?
Advantages:
- reduces the influence of isolated wicks;
- aligns the measurement with completed-bar decisions.
Risks:
- excludes prices reached during the candles;
- can produce very different levels from widely visible wick-based tools;
- still requires a rule for selecting the anchor candles.
Method 3: Body-extreme anchors
Use the outer open-or-close boundaries of the selected endpoint candles.
This method is sometimes used when the analyst wants to exclude wick excursions but retain more information than closing prices alone. It must be defined precisely because “use the body” can mean:
- the body boundary nearest the wick extreme;
- the highest and lowest body prices across several candles;
- only the bodies of the two endpoint candles.
Method 4: Confirmed-pivot anchors
Use pivots that meet a predefined structural rule, such as a stated number of bars on each side or a separate swing-confirmation method.
This method answers:
What levels would have been available only after both endpoints were structurally confirmed?
Its main advantage is auditability. Its main cost is confirmation delay: the endpoint is not known at the exact high or low.
For a broader swing framework, use the Market Structure Trading Guide. Fibonacci should consume a swing definition rather than silently inventing one.
Current Extreme vs Confirmed Endpoint
A current price extreme is not necessarily a completed anchor.
Assume an upward move reaches a new high today. You can:
- anchor immediately to the live high;
- wait for the candle to close;
- wait for a pivot-confirmation rule;
- wait for a minimum move away from the high.
Each method produces a different creation time and may produce a different endpoint.
Live-extreme method
The grid updates whenever the high extends. This can be useful as a live measuring display, but it creates moving levels. A reaction recorded against yesterday's 61.8% level may no longer align with today's recalculated 61.8% level.
Closed-bar method
The endpoint updates only when a candle closes. Intrabar changes do not alter the official record.
Confirmed-pivot method
The endpoint becomes official only after later bars meet a stated pivot rule. This reduces anchor movement but introduces lookback delay.
Do not mix the methods in one sample. A test that uses live extremes in successful cases and confirmed pivots in failed cases is not reproducible.
How Many Bars Should a Fibonacci Swing Include?
There is no universal bar count.
A swing can be defined by:
- a pivot-to-pivot move;
- a range breakout to the next confirmed pivot;
- a move exceeding a stated volatility threshold;
- the most recent completed directional leg on a fixed structural layer;
- a session high-to-low move;
- a scheduled period such as week-to-date or month-to-date.
“Use the most obvious swing” is visually convenient but hard to test. Replace it with fields such as:
- start timestamp;
- end timestamp;
- bars in swing;
- absolute range;
- percentage range;
- range divided by a stated volatility measure;
- structural layer or swing degree;
- reason the swing qualified.
The best bar count is not known in advance. It is part of the rule being evaluated.
Nested Swings and Multiple Drawings
A large swing can contain several smaller swings. A Fibonacci grid from the large move and a grid from the latest internal move can overlap or conflict.
Do not merge them automatically. Record them as separate objects:
| Field | Large swing | Internal swing |
|---|---|---|
| Timeframe or structural layer | Higher | Lower |
| Start / end timestamps | Recorded | Recorded |
| Anchor method | Recorded | Recorded |
| Range | Recorded | Recorded |
| Level price | Recorded | Recorded |
| Relationship | Parent | Child |
If two calculated levels fall near the same price, label the overlap. Do not automatically describe it as stronger support or resistance. The two grids may be highly related because the internal swing is part of the parent swing, so they are not necessarily independent evidence.
Fibonacci Levels Are Calculated References, Not Hidden Orders
The word “hidden” can be misleading.
A Fibonacci price is hidden only in the sense that it is not necessarily a prior traded boundary visible as a horizontal line. It is calculated from two visible anchors.
The calculation cannot reveal:
- unexecuted institutional orders;
- remaining liquidity at the price;
- who is buying or selling;
- whether market makers are defending the level;
- whether a future reversal will occur;
- whether multiple traders use the same anchors.
A chart can later show that price paused, crossed, rejected, or closed near a calculated level. Those are observable outcomes. The participant story remains an interpretation unless supported by separate data.
Raw Price Level vs Calculated Fibonacci Level
Keep these categories separate.
Raw price reference
Derived directly from observed price behavior, such as:
- prior swing high or low;
- range boundary;
- repeated close cluster;
- gap edge;
- session high or low.
Calculated reference
Derived by applying a formula to other prices, such as:
- Fibonacci retracement;
- moving average;
- pivot formula;
- volatility band.
When a Fibonacci price overlaps a prior swing or range boundary, record two references at one area. Do not rewrite the raw price level as if Fibonacci created it.
The support/resistance candidate-identification guide owns raw-level discovery. This page owns the calculated Fibonacci record. After either type of candidate is frozen, the support and resistance validation workflow owns the separate interaction, invalidation, expiry, and out-of-sample review stage.
From Exact Price to Tolerance Zone
A computed Fibonacci level is one exact price. Real chart interactions may occur around it rather than exactly on it.
A tolerance rule must therefore be defined separately.
Possible methods include:
- fixed ticks or pips;
- fixed percentage of price;
- percentage of the measured swing range;
- fraction of a stated volatility measure;
- overlap with a separately defined support/resistance zone;
- core price plus outer observation band.
There is no universal tolerance.
Example: swing-range tolerance
Assume:
- Fibonacci level =
115.28 - swing range =
40 - tolerance =
0.5%of swing range
Then:
tolerance = 0.005 × 40 = 0.20
Observation band:
- lower =
115.08 - upper =
115.48
This band is an analyst-defined observation rule. It is not a new Fibonacci ratio.
For detailed line-versus-zone and width controls, use the Support and Resistance Zone Width Rules.
What Counts as a Reaction?
A Fibonacci study needs an outcome definition before later candles are revealed.
Possible interaction labels include:
- wick enters tolerance band;
- body overlaps band;
- candle closes inside band;
- candle closes through band;
- price pauses for a stated number of bars;
- price moves away by a stated distance;
- price crosses the band without meeting the reaction rule;
- no interaction occurs within the horizon.
Do not use “worked” or “respected” without a definition.
Example reaction rule
A project might define a reaction as:
- price enters the tolerance band;
- no candle closes beyond the far edge during the interaction;
- price then moves away by at least
x%of the original swing range withinncompleted bars.
Another project may define it differently. Neither definition is universal. The purpose is consistency.
Level Status and Invalidation
Separate the status of the drawing from the outcome of a level interaction.
Drawing statuses
- Candidate: first anchor selected, second endpoint not confirmed.
- Active: both anchors confirmed and grid frozen.
- Superseded: a written re-anchoring condition created a new version.
- Invalidated: the swing definition failed under its rule.
- Expired: review horizon or lookback ended.
Interaction outcomes
- no visit;
- entered band and moved away;
- entered band and crossed through;
- closed through immediately;
- prolonged overlap;
- ambiguous because of gap or missing data.
A level crossing does not necessarily invalidate the anchor pair. It may only classify the interaction as a failure under the study's reaction definition.
When Should a Fibonacci Drawing Be Re-Anchored?
Do not drag an endpoint every time later price makes the original grid look inconvenient.
Possible written re-anchoring rules include:
- the candidate end pivot extends before confirmation;
- a new confirmed endpoint forms under the same swing rule;
- the original swing start is exceeded, invalidating the measured move;
- a provider corrects erroneous price data;
- the contract, adjustment method, or session changes;
- a scheduled analysis window rolls forward;
- a parent or child swing replaces the structural layer being studied.
Preserve versions
Example:
| Field | Version 1 | Version 2 |
|---|---|---|
| Drawing ID | FIB-D1-012 | FIB-D1-012 |
| Version | v1 | v2 |
| Start anchor | 100.00 | 100.00 |
| End anchor | 140.00 | 144.00 |
| Created after candle | timestamp A | timestamp B |
| Reason | initial confirmed pivot | new confirmed high under extension rule |
| Prior version retained | yes | yes |
Do not overwrite v1. The old level prices must remain available to evaluate what the analyst actually knew at the time.
Wick vs Close: How to Compare Without Hindsight
A clean comparison can create both drawings at the same cutoff:
- Drawing A: wick-extreme anchors
- Drawing B: close-to-close anchors
Then record later interactions against both grids.
Do not choose Drawing A for charts where wicks aligned and Drawing B where closes aligned. That would select the method after the outcome.
Useful comparison fields include:
- distance between corresponding level prices;
- number of level visits;
- reaction rate under the same outcome rule;
- median confirmation delay;
- number of drawings invalidated;
- percentage of cases with material provider/session differences.
The comparison evaluates the anchor method, not the universal truth of Fibonacci.
The 50% Level and Custom Ratios
The 50% level is widely included in Fibonacci retracement tools even though 0.5 is not derived as the limiting ratio of adjacent Fibonacci numbers.
Treat it as a configurable midpoint reference.
Likewise, platforms may include or allow:
- 78.6%;
- 88.6%;
- 70.5%;
- extensions above 100%;
- negative levels;
- user-defined percentages.
A custom setting should be documented with:
- ratio value;
- rationale;
- date introduced;
- whether it was selected before the evaluation sample;
- whether multiple ratios were tested.
Adding ratios until one lines up with historical price creates multiple-testing and hindsight problems.
Fibonacci Retracement vs Extension
Retracement and extension tools answer different measurement questions.
Retracement
Uses two endpoint prices to divide the distance between the selected low and high.
Trend-based extension
Commonly uses three points:
- start of the original move;
- end of the original move;
- end of the retracement.
TradingView describes its trend-based extension tool using those three points. This page does not own extension targets or profit-taking rules. Keep extension drawings in a separate object with separate anchors and outcome definitions.
Fibonacci and Elliott Wave
Elliott Wave analysts may use Fibonacci ratios as guidelines for relationships between waves. That does not allow Fibonacci to validate a wave count by itself.
Avoid circular reasoning:
- label a wave because it appears near a Fibonacci level;
- claim the Fibonacci level is valid because the wave label fits;
- use both as independent confirmation.
The Elliott Wave classification page treats Fibonacci as measurement, not proof. See Impulse vs Corrective Elliott Waves for hard-rule, alternate-count, and invalidation controls.
A Repeatable Fibonacci Anchor Checklist
- Record instrument, product, provider, price type, session, timezone, and adjustment.
- Record timeframe and structural layer.
- Set the last candle available when the drawing is created.
- Define the swing-selection rule.
- Define whether endpoints require closed bars or confirmed pivots.
- Select upward or downward swing direction.
- Record start and end timestamps.
- Record low and high prices.
- Record wick, close, body, or pivot anchor method.
- Verify that the anchors use the same data convention.
- Calculate range as high minus low.
- Record enabled ratios and platform inversion setting.
- Record every calculated level price.
- Define exact-price or tolerance-zone interaction.
- Define reaction, crossing, ambiguity, and no-visit outcomes.
- Define review horizon.
- Define re-anchoring, invalidation, and expiry rules.
- Save the initial version before revealing later candles.
- Keep raw support/resistance references separate from calculated levels.
- Do not attach an automatic entry, stop, target, or participant story to the grid.
Fibonacci Drawing Worksheet
| Field | Record |
|---|---|
| Drawing ID | Unique identifier |
| Instrument / product | Exact market |
| Provider / venue | Data source |
| Price type | Last, bid, ask, midpoint, mark, settlement |
| Session / timezone | Candle construction |
| Adjustment | Split/dividend/contract treatment |
| Timeframe | Analysis interval |
| Structural layer | Parent, working, or child swing |
| Cutoff candle | Last visible candle |
| Swing-selection rule | Why this pair qualified |
| Start timestamp / price | First anchor |
| End timestamp / price | Second anchor |
| Anchor method | Wick, close, body, confirmed pivot |
| Direction | Upward or downward swing |
| Range | High minus low |
| Ratios enabled | Exact decimal values |
| Display convention | Normal or inverted labels |
| Calculated prices | One row per ratio |
| Tolerance method | Exact price or stated band |
| Raw-price overlaps | Separate support/resistance references |
| Drawing status | Candidate, active, superseded, invalidated, expired |
| Re-anchor rule | Written before outcome |
| Interaction rule | Visit definition |
| Outcome rule | Reaction/cross/no-visit categories |
| Review horizon | Bars, sessions, or dates |
| Version | v1, v2, and so on |
| Notes | Data issues or ambiguity |
How to Review Fibonacci Anchors With ChartMini
ChartMini can hide future historical candles so a drawing is created before the later reaction is known.
A controlled exercise:
- Open a historical chart in ChartMini.
- Fix instrument, timeframe, session, and lookback.
- Select one swing rule and one anchor method.
- Stop at the cutoff candle.
- Record the two anchors and calculate the level prices.
- Save the drawing version and tolerance rule.
- Predict nothing; record only the candidate levels and invalidation condition.
- Reveal candles one at a time.
- Record visits and outcomes under the frozen definitions.
- Re-anchor only when the written condition is met.
- Compare multiple completed cases, including no-reaction and ambiguous cases.
ChartMini supports lightweight historical candle replay. It does not automatically select Fibonacci anchors, verify data-provider consistency, calculate a universal best ratio, reproduce a full order book, model live spreads or slippage, or prove profitability. Historical replay can still contain selection bias if the analyst chooses only memorable swings.
The CFTC warns that simulated and hypothetical results have inherent limitations, can benefit from hindsight, and may not reflect actual execution conditions. That is why the worksheet focuses on frozen definitions and complete samples rather than simulated profit claims.
Common Errors
Calling calculated prices hidden liquidity
The formula creates a reference. It does not reveal unexecuted orders or participant identity.
Moving anchors after every later candle
A live-extreme grid can update, but each version must be timestamped. Silent movement destroys the historical record.
Selecting the swing after seeing the bounce
This is outcome-driven anchoring. Set the swing rule and cutoff first.
Mixing wick and close endpoints
A mixed method may be valid only if defined in advance. Otherwise, it is difficult to reproduce.
Assuming 61.8% is universally strongest
No ratio is universally most reliable across instruments, timeframes, data sources, anchor methods, tolerances, and outcome rules.
Counting overlapping grids as independent confirmation
Nested swings share price data. Their overlap may be mathematically related rather than independent evidence.
Treating a touch as a completed reaction
A touch, close, rejection, and move-away are separate events. Define which one matters.
Using extension levels as retracement levels
Two-point retracement and three-point trend-based extension drawings use different constructions and should be recorded separately.
Adding custom ratios after reviewing history
This can create a level near almost any memorable price. Freeze the ratio set before evaluation.
Using a screenshot without anchor metadata
The chart may not reveal provider, session, adjustment, wick/close rule, exact timestamps, or inversion setting. Store the worksheet.
Official Sources and Evidence Boundaries
- TradingView: Fibonacci Retracement Drawing Tool — describes Fibonacci retracement as a two-point drawing used to display percentage-based potential support and resistance levels.
- TradingView: Trend-Based Fib Extension — distinguishes the three-point extension construction from a two-point retracement.
- Fidelity: Fibonacci Retracement — explains that percentages are applied to the difference between two selected extreme points to create possible support and resistance objectives.
- CFTC: Commodity Trading Systems Sold on the Internet — explains limitations of hypothetical and simulated results, including hindsight and execution assumptions.
These sources document the tool and its common interpretation. They do not establish one universally correct anchor pair, wick-versus-close rule, tolerance, ratio ranking, or future reaction probability. Those elements must be specified and tested separately.
Frequently Asked Questions
Where should Fibonacci retracement anchors be placed?
Place the two anchors on a predefined completed price swing: the selected swing low and swing high. For an upward swing, the low is the start and the high is the end; for a downward swing, the high is the start and the low is the end. Record whether each anchor uses a wick, close, body, or confirmed pivot rule.
How are Fibonacci retracement prices calculated?
First calculate the swing range as high minus low. For an upward swing, a retracement price at ratio r is high minus r times the range. For a downward swing, it is low plus r times the range. The same prices may be displayed with reversed percentage labels when a platform inverts the tool.
Should Fibonacci anchors use candle wicks or closes?
There is no universal wick-or-close rule. Choose one method before reviewing later candles and apply it consistently. If an extreme wick may be a data anomaly, verify the provider and session rather than changing the anchor only because another choice fits the later reaction better.
Are Fibonacci retracement levels hidden support and resistance?
They are calculated candidate reference prices, not proof of hidden orders or guaranteed barriers. A Fibonacci level can be compared with later price behavior, historical reactions, or other independently defined references, but the calculation alone does not establish that support or resistance exists.
Which Fibonacci retracement level is most reliable?
No retracement ratio is universally most reliable. Results depend on the instrument, data source, timeframe, anchor rule, event definition, tolerance, and outcome horizon. Compare levels using a frozen sample rather than assuming that 38.2%, 50%, 61.8%, or 78.6% must work best.
When should a Fibonacci retracement drawing be invalidated or updated?
Invalidate or supersede a drawing only under a written rule, such as the selected end pivot being replaced before confirmation, price moving beyond the original swing start, a verified data correction, or a scheduled re-anchoring rule. Preserve the old version instead of silently moving anchors after later price is visible.