Video: BEST Fibonacci Trading Strategy for Beginners
Creator: Mind Math Money
Original Video: Watch the original video
Difficulty: Intermediate
The Big Idea
A Fibonacci retracement describes where a pullback sits within a chosen price move. It does not determine whether that move will resume. This lesson’s useful sequence is to choose the anchors consistently, look for an independently meaningful location, wait for an observable trigger, and compare the actual reward and risk under each possible stop.
Four Decisions That Should Stay Separate
Mind Math Money presents a four-part process: identify the most recent impulse, locate a retracement with additional support or resistance, wait for a price-action trigger, and map a target. Keeping those decisions separate prevents an attractive ratio from becoming a trade by itself. A level can be mathematically precise while the anchor selection and market interpretation remain discretionary.
The supplied example uses a Bitcoin daily chart and a custom tool that highlights a preferred retracement area. The transcript does not specify that tool’s exact golden-zone boundaries. The companion indicator below therefore uses an explicit original default of 0.5–0.618, rather than claiming to reproduce an undisclosed setting. The same distinction applies to its automatic swing selection.
| Decision | What must be observable | What it does not establish |
|---|---|---|
| Anchors | A defined starting low and ending high, available at the decision time. | That every trader would choose the same impulse. |
| Location | A retracement area overlapping a separately defined reference. | That price must reverse at the overlap. |
| Trigger | A completed, precisely described candle event. | That a fill at that candle’s close is guaranteed. |
| Risk and objective | Entry, invalidation, size, target, and execution assumptions. | That a plotted reward ratio will be realized. |
Anchor Choice Comes Before Level Choice
For an upward impulse, draw from the chosen low A to the chosen high B. The source recommends consistency: wick to wick or body to body, rather than selectively mixing whichever endpoints make a later reaction look best. Neither convention removes discretion, but a recorded convention makes the calculation reproducible.
The chart discussion considers alternative starting lows and favors a broader impulse in context. That judgment is not identical to choosing the last mechanically confirmed pivot. Save the anchor prices and the time they became eligible before revealing the eventual rebound. Otherwise a later anchor revision can quietly improve the historical fit.
A high can look obvious after the next few candles without having been confirmed when it occurred. Our indicator waits for a pivot with three bars on each side by default. A high at bar t becomes known at t+3, and the retracement map starts when that confirmation is available. A zone visit that happened during those three intervening bars is not retroactively marked as a known opportunity.
Calculate the Retracement Before Interpreting It
For an upward move, the retracement price is B minus the chosen fraction of B−A. A larger retracement fraction produces a deeper pullback. This is different from adding the fraction to the original low, which can reverse the labels if done carelessly.
An original impulse from 100 to 120
These fictional prices illustrate the arithmetic; they are not the source’s Bitcoin prices or a forecast.
| Step | Observation or calculation | Meaning |
|---|---|---|
| Impulse size | 120 − 100 = 20 | The distance used by every retracement in this map. |
| 0.5 retracement | 120 − 0.5 × 20 = 110 | The shallower boundary of our default zone. |
| 0.618 retracement | 120 − 0.618 × 20 = 107.64 | The deeper boundary of our default zone. |
| 0.786 retracement | 120 − 0.786 × 20 = 104.28 | A separate deeper reference, not the default entry zone. |
| An old price reference at 108.50 | Inside 107.64–110 | A location overlap to investigate, not automatic confirmation. |
The source discusses combining the retracement with support and resistance and other chart references. A prior resistance area that might become support is one possible confluence. VWAP or a volume-profile reference asks a different question and requires its own definition. Simply counting several price-derived labels does not make them independent evidence.
Our code uses a previous confirmed swing high near the retracement zone as a limited structural reference. It does not count repeated touches, evaluate the strength of a resistance-to-support flip, calculate a volume profile, or add VWAP. An old high near a ratio is a candidate location; it is not a fully established support zone.
A Location Is Followed by a Trigger
The source looks for a bullish candle response, including a bullish engulfing example. An executable rule must define engulfing precisely. The code requires a bullish body to engulf the prior bearish body on completed candles. Wick engulfing is not required. This is our explicit implementation choice, not a claim that all candle-pattern definitions agree.
The two-candle pattern must overlap the active retracement zone and the stored structural reference must be sufficiently close to that zone. Only then can the code mark the response. A candle near the level without those conditions remains an observation. Waiting for a completed candle also means the eventual tradable price can differ from the displayed close.
A clear signal is still allowed to fail. A bullish response can be followed by another decline through the impulse low, and a successful rebound can occur without the selected candle pattern. Keep both cases in a research record. Excluding clean rebounds that lacked the trigger can overstate its necessity; excluding failed triggers can overstate its quality.
Read the Stop Correction in the Transcript
The source initially refers to a stop below 0.618 and then corrects that reference to 0.786. It also discusses placing the stop below the entry pattern or below the original swing low. These are different invalidation choices, not three interchangeable ways to obtain the same trade.
A pattern stop asks whether the local response remains intact. A deeper retracement stop allows more movement inside the original impulse. A stop below the impulse low tests the broadest structure among these examples. Calling the last one more conservative describes structural room, not necessarily smaller money risk. With unchanged size, a wider stop increases the planned loss.
Same entry and objective, three different trades
Assume entry at 110.50 and a hypothetical target at 119.50 before the old high. Spread, fees, slippage, and gaps are omitted.
| Step | Observation or calculation | Meaning |
|---|---|---|
| Pattern stop at 107.50 | Risk 3.00; reward 9.00; ratio 3R | A $300 planned budget permits 100 units before costs. |
| Stop at 103.80, below 0.786 | Risk 6.70; reward 9.00; ratio about 1.34R | A $300 budget permits 44 whole units, risking $294.80. |
| Stop at 99.50, below the impulse low | Risk 11.00; reward 9.00; ratio about 0.82R | A $300 budget permits 27 whole units, risking $297. |
| Keep 100 units with the widest stop | 100 × 11 = $1,100 planned loss | That is not the original $300 risk plan. |
The example does not tell you which stop is best. That requires comparing complete outcomes under a fixed evaluation rule. A tighter stop may suffer more invalidations; a wider one may allow more recoveries while reducing reward relative to initial risk. Selecting a different stop after observing the path does not test the original decision.
Prior Highs and Extensions Answer Different Target Questions
The source first considers an objective before the previous high, then discusses a trend-based Fibonacci extension for a more ambitious continuation. A three-point extension uses A, B, and a chosen pullback point C. It should not be confused with extending a two-point retracement drawing without specifying the third anchor.
Using our fictional A=100, B=120, and C=108, a one-times measured move is C+(B−A)=128. A 1.618-times extension is 108+1.618×20=140.36. Changing C changes both projections. Neither level promises that the market will reach it, and a profitable-looking historical extension does not establish predictive accuracy.
An objective before the old high and an objective beyond it imply different holding periods, required continuation, and exit behavior. Predeclare whether partial exits are allowed and how an unfilled target is handled. The indicator displays the old impulse high as context but does not calculate extension targets, choose a future C, or simulate either management policy.
One Frozen Map, With Explicit Retirement Rules
Once a qualifying low-to-high pivot pair is confirmed, the indicator freezes its anchors. It keeps one map active rather than continually redrawing the most attractive pair. New pivot information can provide context for the next map, but does not move the active anchors. This makes the current observation easier to audit.
The default map expires after 120 chart bars or is invalidated by a completed close below its impulse low. A qualifying bullish response can produce one marker per pair. Failed zone visits do not automatically consume the map, so this is not a first-touch-only study. Those choices affect the sample and are original implementation rules, not source settings.
The tool identifies an upward impulse; it does not establish a complete higher-timeframe uptrend. It deliberately leaves the source’s broader trend assessment, alternative anchors, custom tool snapping, and target discretion outside the code. A visible zone therefore means an eligible map exists, not that every prerequisite for a live trade has been satisfied.
Pine Script Indicator
View Pine Script Indicator Code
//@version=6
// Guide: https://candlechasers.com/fibonacci-location-trigger-stop-choice/
// Original educational indicator. No orders, fills or performance claims.
indicator("CC Frozen Impulse Fibonacci Context", overlay=true)
strength = input.int(3, "Pivot confirmation bars", minval=1, maxval=10)
life = input.int(120, "Impulse map lifetime in chart bars", minval=1)
tolerance = input.float(0.25, "Structural confluence tolerance / prior ATR", minval=0)
a = ta.atr(14)
pl = ta.pivotlow(low, strength, strength)
ph = ta.pivothigh(high, strength, strength)
var float knownLow = na
var int lowBar = na
var float previousHigh = na
var bool active = false
var float L = na
var float H = na
var float support = na
var float tol = na
var int born = na
var bool used = false
bool signal = false
if chart.is_standard and barstate.isconfirmed
if not na(pl)
knownLow := pl
lowBar := bar_index - strength
bool occupied = active
if occupied
if bar_index - born > life or close < L
active := false
else if bar_index > born and not used
float top = H - 0.5 * (H - L)
float bottom = H - 0.618 * (H - L)
bool confluence = not na(support) and support >= bottom - tol and support <= top + tol
bool touch = math.min(low, low[1]) <= top and math.max(high, high[1]) >= bottom
bool engulf = close[1] < open[1] and close > open and open <= close[1] and close >= open[1]
signal := confluence and touch and engulf
if signal
used := true
if not na(ph)
int highBar = bar_index - strength
if not occupied and not active and not na(knownLow) and lowBar < highBar and ph > knownLow
L := knownLow
H := ph
support := previousHigh
tol := a[1] * tolerance
born := bar_index
active := true
used := false
previousHigh := ph
zoneTop = active ? H - 0.5 * (H - L) : na
zoneBottom = active ? H - 0.618 * (H - L) : na
plot(knownLow, "Latest confirmed low: context", color=color.new(color.gray, 75), style=plot.style_stepline)
plot(previousHigh, "Latest confirmed high: context", color=color.new(color.gray, 75), style=plot.style_stepline)
t = plot(zoneTop, "Frozen 50% retracement", color=color.teal, linewidth=2, style=plot.style_linebr)
b = plot(zoneBottom, "Frozen 61.8% retracement", color=color.teal, linewidth=2, style=plot.style_linebr)
fill(t, b, color=color.new(color.teal, 88))
plot(active ? H : na, "Frozen impulse high: possible objective reference", color=color.blue, style=plot.style_linebr)
plot(active ? L : na, "Frozen impulse low: structural reference", color=color.red, style=plot.style_linebr)
plot(active ? support : na, "Pre-impulse confirmed high: confluence proxy", color=color.orange, style=plot.style_linebr)
plotshape(signal, "Completed engulfing response at confluence proxy", shape.triangleup, location.belowbar, color.aqua, size=size.small)
alertcondition(signal, "Fibonacci context response", "CC: frozen impulse, original 50-61.8 zone, prior-high confluence and completed engulfing response. No fill or target guarantee.")
var table status = table.new(position.top_right, 1, 2, bgcolor=color.new(color.black, 10))
if barstate.islast
table.cell(status, 0, 0, not chart.is_standard ? "Use STANDARD candles" : not active ? "Waiting for confirmed low-then-high impulse pair" : used ? "Map retained; one response allowance consumed" : "Frozen impulse active; waiting for confluence + engulfing", text_color=color.white, text_size=size.small)
table.cell(status, 0, 1, "Long-only proxy | no automatic trend-based extensions or hidden anchors", text_color=color.white, text_size=size.small)
What This Indicator Shows
The overlay plots confirmed swing context even while waiting for a pair. An active map shows the original impulse bounds, the 0.5–0.618 retracement area, and the stored earlier high used as a structural reference. A status panel distinguishes an active map, a map whose response allowance was consumed, and waiting for a new pair. Expired or invalidated maps clear their active references and return to waiting. Use standard candles and enough history for pivot confirmation. The default three-bar confirmation and 120-bar lifetime are original research choices.
What This Indicator Does Not Show
It does not recreate the paid golden-zone tool, subjective anchor choice, all confluence methods, or a complete trading system. No orders, extension targets, position sizing, or performance statistics are generated. Historical pivots are not drawn back as though they were known earlier. One marker per pair and the decision to retain unsuccessful visits shape the observations; they do not prove the setup works.
Setup and Validation
Paste the complete code into TradingView’s Pine Editor, save it, and add it to the chart. Use the chart type, timeframe, and context described above, then inspect the status panel and reference plots before expecting a marker. Use Once Per Bar Close for the supplied alert conditions and recreate alerts after changing code or settings. No alert submits an order.
Validation status: Statically reviewed for completed-bar timing, source-versus-proxy distinctions, future-data use, state behavior, reference replacement and expiry, and visible output. This code has not been compiled or chart-tested in TradingView here. No historical performance or live-execution results are claimed. Use replay to check the described behavior and report any compiler or runtime message exactly.
Practice: Save the Map Before the Outcome
Choose an unrevealed historical segment. Write the anchor convention, A and B, and the bar when both became available. Calculate 0.5, 0.618, and 0.786 by hand. Record a separate structural reference and define what would count as a trigger. Then compare the three stop policies at the same hypothetical entry and objective, resizing to one planned budget. Reveal subsequent candles only after recording those decisions.
An adequate answer preserves missing triggers, failed responses, and maps that expire without an opportunity. For the worked example, the zone is 107.64–110; the deeper 0.786 level is 104.28. The three stop policies produce 3R, approximately 1.34R, and approximately 0.82R of nominal target space. These are calculations, not measured win rates.
Research and Comparison Lab
These are original proposed experiments, not results established by the source. Change one main feature at a time, retain failures and missing opportunities, and reserve later observations for evaluation rather than repeatedly selecting rules from the same outcomes.
Does anchor convention change the sample?
Compare consistently defined wick anchors with consistently defined body anchors on the same periods. Preserve confirmation timing and do not hand-adjust individual examples. Measure eligible zones, missed early visits, qualifying responses, and invalidations.
Which stop policy changes the distribution?
Use identical signals and a common planned money-risk budget. Compare pattern, deeper-retracement, and impulse-low stops under one target and execution model. Include costs, gap losses, and time held; do not substitute a different entry to rescue one stop.
Does structural overlap add information?
Compare the same mechanical retracement response with and without the prior-high proximity requirement. Retain excluded observations and later evaluation data. A smaller sample alone does not establish better quality.
Check Your Understanding
Does a retracement ratio determine its own anchors? No. Anchor selection comes first.
Are the code’s zone boundaries disclosed source settings? No. The 0.5–0.618 default is our explicit approximation.
Which deeper retracement does the speaker correct the stop reference to? 0.786.
Does a wider stop preserve money risk at the same size? No. Size usually needs to fall.
Why does an extension require C? Its projection is measured from the chosen pullback anchor, so a different C changes the result.
Final Takeaway
Fibonacci becomes more useful when it organizes a decision rather than predicts one. Fix the anchors, distinguish location from trigger, and calculate the consequences of the chosen invalidation before treating a projected target as an opportunity.
Risk Disclosure
This material is educational and is not personalized financial, investment, or trading advice. Trading can cause substantial losses. Source-reported results, hypothetical examples, and probability illustrations do not establish future performance. Calculations depend on their assumptions and omit costs unless stated. Commissions, spread, slippage, gaps, leverage, liquidity, borrowing, financing, and changing market conditions can materially affect outcomes. Indicators do not simulate broker execution or establish profitability. Short exposure can involve losses beyond the initial sale value. Evaluate any approach with appropriate data, realistic costs, and explicit risk limits before considering live use.
This is an independent educational companion and is not affiliated with, sponsored by, endorsed by, or authorized by the source creator, channel, or TradingView.