Video: The Best Trading Setups That Are Easy To Find
Creator: Jason Graystone
Original Video: Watch the original video
Difficulty: Advanced
The Big Idea
A promising location is not yet an entry. The source builds a possible bounce case from a sharp decline, daily structure, extreme RSI, and room before resistance, then considers several ways to participate. The learning task is to separate that context from the chosen trigger and its actual risk.
The Setup Is a Case to Investigate, Not a Completed Winner
The creator examines EUR/CAD without presenting it as his own executed trade. He explicitly allows that the idea may fail and does not supply a later outcome. That distinction matters: the material illustrates planning, not a verified record of a profitable bounce.
The bearish move creates interest in a correction, but a market being stretched does not tell us when it must reverse. A further decline can occur before any bounce, or the selected support can fail. The source’s several confluences should be treated as a hypothesis to evaluate rather than votes that guarantee success.
The daily context includes a prior structural area, RSI around 19, and possible room upward before another obstacle. The creator uses 20 and 80 as extreme RSI thresholds rather than conventional 30 and 70. The transcript does not specify the RSI period, so the code’s default fourteen is our choice.
Separate Location, Trigger, and Objective
| Layer | Source example | Question still to answer |
|---|---|---|
| Location | Daily structure near an unusually weak RSI reading. | Was the level identifiable before the return? |
| Trigger | Rejection close, three-bar reversal, double bottom, or ratio-pattern entry. | Which exact rule authorizes participation? |
| Objective | An area below the next relevant structure. | What reward remains from the executable entry? |
| Invalidation | A reference appropriate to the chosen pattern. | Does it remain valid after a gap or worse fill? |
The source considers a gap and nearby structure when discussing the upper objective. A visually open stretch is not proof of a certain or fast move. Identify the first obstacle actually relevant to the entry rather than selecting a distant target because it makes the ratio look attractive.
A confluence score is likewise a checklist, not an empirically calibrated probability. Several observations may describe the same underlying decline. RSI, stretched price action, and a rejection can be related rather than independent pieces of evidence.
Three Entry Choices Observe Different Information
An aggressive rejection entry uses the first completed response at the area. A three-bar reversal waits through a bearish candle, a middle rejection candle, and a subsequent higher-high, higher-close response. The source describes completion on the third candle and participation around the next bar; the signal close is not a guaranteed fill.
A double bottom waits for a retest of the initial low area without the disqualifying close below the selected boundary. The creator moves from four hours to one hour to inspect that possibility sooner. A smaller-chart double bottom is a different observation from a completed four-hour retest, not an earlier view of the same final candle.
The source also discusses a bat-pattern completion as an alternative entry tool and potentially managing it toward broader structure. It does not provide every ratio, tolerance, and invalidation needed for a full harmonic detector. This guide does not turn the mention of an 0.886 retracement into a complete pattern definition.
Oversold Is Context, Not a Countdown
RSI measures a relationship among recent gains and losses under its calculation. An extreme reading can persist while price continues in the same direction. A value below 20 does not mean an eighty-percent chance of a bounce, nor does returning above 20 automatically validate an entry.
The source reads daily context and then smaller-chart price action. To avoid using a final daily value early, the original indicator below requests only completed context values. It samples the support and RSI that were available on the middle rejection candle, rather than adding a newly confirmed support after the third candle succeeds.
This deliberately differs from looking at a developing daily RSI in real time. TradingView documents the offset-expression method for confirmed higher-timeframe data; the code follows that availability pattern. See TradingView’s higher-timeframe data guidance (paid link).
Compare the Entries From Their Own Fills
One objective, three possible entries
These fictional price units are independent of the EUR/CAD prices mentioned in the source. Costs and slippage beyond the stated fills are omitted.
| Step | Observation or calculation | Interpretation |
|---|---|---|
| Shared objective | First relevant upper reference 106 | This is a teaching assumption, not a predicted destination. |
| Earlier response | Hypothetical fill 101; stop 99 | Risk 2; reward 5: 2.5R. |
| Later confirmation | Fill 103; same stop and objective | Risk 4; reward 3: 0.75R. |
| Tighter confirmed-pattern stop | Fill 103; separately justified stop 102 | Risk 1; reward 3: 3R, but a different invalidation hypothesis. |
The third row cannot be called the same test as the second row because the stop has changed. A fair study either holds the failure condition constant or explicitly reports stop choice as another variable. The source’s label conservative describes waiting, not an established reduction in financial risk.
Make the Three-Bar Version Reproducible
Our proxy uses a bearish first candle, a middle lower-wick rejection, and a bullish third candle with a higher high and higher close than the middle one. The middle wick must be at least 1.5 times its body and forty percent of its range by default. Those proportions are ours.
Support is either an optional manually recorded price with an explicit known-from time, or the latest confirmed context pivot low. The manual override stays unavailable before that time and requires a nonzero timestamp, so a later chosen level is not silently applied to earlier signals. The default pivot needs two bars on each side and becomes known only after the right-side bars complete. An automatic pivot is a convenient reference, not the source’s discretionary daily structure selection.
The middle candle’s low must be within 0.25 context ATR of the support known then. RSI must be at or below the selected limit. This implements one original context-and-trigger approximation, omitting target-space judgment and the other entry techniques.
Pine Script Indicator
View Pine Script Indicator Code
//@version=6
// Guide: https://candlechasers.com/structure-bounce-entry-choice/
// Original confirmed daily-context / three-bar-reversal proxy. No orders or fills.
indicator("CC Structure Bounce Three-Bar Map", overlay=true)
contextTF = input.timeframe("1D", "Context timeframe")
strength = input.int(2, "Context pivot confirmation bars", minval=1, maxval=10)
manualSupport = input.float(0, "Optional support override (0 = automatic pivot)", minval=0)
manualKnownFrom = input.time(0, "Manual support known-from time (required for override)")
rsiLength = input.int(14, "Context RSI length: original default", minval=2)
rsiLimit = input.float(20, "Maximum context RSI", minval=0, maxval=100)
tolerance = input.float(0.25, "Support proximity / context ATR", minval=0.01)
wickRatio = input.float(1.5, "Middle lower wick / body minimum", minval=0.1)
referenceLife = input.int(20, "Pattern-low display lifetime", minval=1)
confirmedContext() =>
float pivot = ta.pivotlow(low, strength, strength)
[pivot[1], ta.rsi(close, rsiLength)[1], ta.atr(14)[1], close[1]]
[pivot, contextRSI, contextATR, contextClose] = request.security(syminfo.tickerid, contextTF, confirmedContext(), lookahead=barmerge.lookahead_on)
valid = chart.is_standard and timeframe.in_seconds() < timeframe.in_seconds(contextTF)
var float knownSupport = na
if valid and barstate.isconfirmed and not na(pivot)
knownSupport := pivot
support = manualSupport > 0 ? (manualKnownFrom > 0 and time >= manualKnownFrom ? manualSupport : na) : knownSupport
middleBody = math.max(math.abs(close[1] - open[1]), syminfo.mintick)
lowerWick = math.min(open[1], close[1]) - low[1]
middleRange = high[1] - low[1]
rejection = lowerWick >= middleBody * wickRatio and middleRange > 0 and lowerWick >= middleRange * 0.4
// Context is sampled on the middle candle, not added after seeing candle three.
atSupport = not na(support[1]) and math.abs(low[1] - support[1]) <= contextATR[1] * tolerance
oversold = contextRSI[1] <= rsiLimit
pattern = close[2] < open[2] and rejection and high > high[1] and close > close[1] and close > open
signal = valid and barstate.isconfirmed and pattern and atSupport and oversold
var float patternLow = na
var int born = na
if signal
patternLow := math.min(low, math.min(low[1], low[2]))
born := bar_index
plot(valid ? support : na, "Known support: manual override or confirmed context pivot", color=color.orange, linewidth=2, style=plot.style_stepline)
plot(valid ? contextClose : na, "CONTEXT ONLY: previous completed context close", color=color.new(color.gray, 70), style=plot.style_stepline)
plot(not na(born) and bar_index - born <= referenceLife ? patternLow : na, "Latest signalled pattern low: visual reference only", color=color.red, style=plot.style_linebr)
plotshape(signal, "Completed three-bar bounce proxy", shape.triangleup, location.belowbar, color.aqua, size=size.small)
alertcondition(signal, "Three-bar bounce context", "CC: completed three-bar reversal at prior-known support with confirmed context RSI. Check target room and execution separately.")
var table status = table.new(position.top_right, 1, 3, bgcolor=color.new(color.black, 10))
if barstate.islast
table.cell(status, 0, 0, not valid ? "Use STANDARD chart below context TF (e.g. 4h / 1D)" : "Three-bar proxy | no double-bottom or harmonic detection", text_color=color.white, text_size=size.small)
table.cell(status, 0, 1, na(support) ? "No support: load history or set override price AND known-from time" : "Support known | context RSI " + str.tostring(contextRSI, "#.0"), text_color=color.white, text_size=size.small)
table.cell(status, 0, 2, "Threshold " + str.tostring(rsiLimit) + " | gray line is context, not support", text_color=color.white, text_size=size.small)
What This Indicator Shows
Use a standard chart below the selected context timeframe, such as four hours with daily context. Orange shows support; faint gray is only the previous completed context close, not another support level. The panel shows context RSI and explains missing history. Triangles mark completed three-bar observations. The latest signalled pattern low is shown for twenty chart bars by default as a visual reference; a newer signal replaces it. It is not a submitted stop order.
What This Indicator Does Not Show
The indicator does not forecast a bounce, calculate a confluence probability, detect double bottoms or harmonic patterns, judge resistance room, or simulate fills. It has no account sizing or return output. The RSI period, pivot rule, wick proportions, proximity tolerance, and display lifetime are original definitions. Both support and RSI are sampled as known on the middle candle; markers are not backdated onto its low.
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: Build an Entry-Comparison Record
- Freeze context: choose a replay date, instrument, context interval, support boundary, RSI period, and the last completed context candle. Write when each became available.
- Define two entries: select an early rejection rule and a three-bar rule before replaying forward. State whether each uses a close or an intrabar trigger.
- Record the objective: identify the nearest relevant opposing structure before entry. Keep missed fills and absent second opportunities.
- Calculate: for each actual or explicitly hypothetical fill, write risk = entry − stop and reward = objective − entry. Label costs separately.
- Review: classify whether differences came from confirmation, fill price, or a changed invalidation.
Answer check
In the worked example, the early and later fills with the same stop produce 2.5R and 0.75R. The 3R alternative changes the stop, so it cannot establish that confirmation alone improved the trade. A completed four-hour reversal also cannot be credited with an hourly entry that occurred before its third candle closed.
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 the entry dial add value?
Compare two predeclared entry techniques on the same support candidates. Keep objective, costs, period, and one stated invalidation convention fixed. Record no-trigger cases and entry deterioration; compare outcomes per eligible support as well as per triggered proposal.
Does the extreme threshold help?
Compare context RSI limits of 20 and 30 while keeping period, support, and trigger definitions unchanged. Evaluate later data and record candidate counts. A stricter limit may change the environment sampled, not simply improve probability.
Does automatic support resemble the manual selection?
Before outcomes are visible, annotate source-style structural areas and compare with confirmed pivots. Record agreement, missed areas, and timing differences. This measures the shortcut rather than pretending the two methods identify identical locations.
Check Your Understanding
Does the supplied example include a verified final trade result? No. The creator leaves it as a prospective setup.
Is RSI 20 a twenty-percent probability? No. It is an indicator reading.
Is the fourteen-period RSI specified in the transcript? No. It is the code’s original default.
Can a confirmed daily value be used before the daily close? No. The code uses completed context data.
Does a later entry always lower risk? No. Price, stop choice, sizing, and execution determine risk.
Final Takeaway
The source’s strongest distinction is between finding a promising area and choosing a rule-compliant way to enter it. Use the guide to compare information, timing, and executable reward-to-risk without granting a prospective setup a favorable outcome.
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.