"BOS" için komut dosyalarını ara
SMC OB+HOBSmart Money OB/HOB Indicator — Quick Guide
Use this as a field manual: what you’re seeing, how it’s decided, and which settings to use for different timeframes and trade styles.
What the tool plots
Bullish Order Block (OB) — teal box
The last small down candle before a bullish displacement/BOS. Height = candle body (default) or wick range (if you choose “Wick”).
Pin (small white dot) at the origin candle’s time to make anchoring obvious.
Bearish Order Block (OB) — red box
The last small up candle before a bearish displacement/BOS.
Hidden Order Block (HOB) — same box but yellow-tinted fill
A valid OB with one or more same-bias FVGs “ahead” (i.e., OB sits “behind” inefficiency). These tend to be stronger.
Mitigation state (fill transparency)
Unmitigated (least transparent): price hasn’t meaningfully traded back into the box. Highest priority.
Partial (more transparent): some penetration; still valid.
Full (most transparent): fully consumed; lower priority (optional to hide).
Top-K border — thin white outline
Only the best-scoring OBs/HOBs per direction are drawn to reduce clutter.
Auto-Fibs (optional)
OTE zone (0.62–0.79) — subtle purple band across the current swing leg.
0.618 / 0.705 / 0.786 — thin white horizontal lines. Confluence here adds score.
Trade idea lines (per Top-K block)
Entry — white line (mid/edge per your setting).
Stop — red line (box edge ± your pad).
TP1/TP2 — lime lines, R-based from entry→stop distance.
Label shows LONG/SHORT, entry, SL, TP1, TP2, time-stop (bars).
Note: Fair Value Gaps (FVGs) are tracked internally to classify HOBs and for pruning, not drawn to avoid noise.
How a block is qualified (in plain English)
BOS + Displacement:
Close breaks the recent swing high/low by at least N ticks and the bar shows impulse (body ≥ X·ATR and ≥ Y% of its total range).
(Settings: “Close beyond ≥ ticks”, “Min impulse body (x ATR)”, “Body/TR min %”)
Seed candle:
Look back ≤ N bars for the last opposite small-body candle (body ≤ Z% of its range). That candle’s body/wick becomes the OB height.
(Settings: “Last opposite candle within N bars”, “OB body ≤ % of TR”, “OB height model”)
Hidden OB:
Count same-bias FVGs “ahead”. If ≥ your threshold → tag the OB as HOB.
(Setting: “Require ≥ N same-bias FVGs ahead”)
Mitigation tracking:
As price trades into the box, we compute penetration %, updating unmitigated / partial / full state each bar.
Ranking (Top-K):
Every OB/HOB gets a score: near price, newer, hidden, near fib, and unmitigated boost. We draw only the Top-K per direction.
Inputs you’ll actually tweak
Timeframe
Compute on: Current (uses your chart TF) or Specific (MTF scan).
Process last N bars: reduce for speed, increase to see more history.
Anchoring
Extend: Right, Limited, or Origin only.
Limited draws boxes to a fixed number of bars so charts stay clean.
Show origin pins: Keep on so you always know the source candle.
Structure / BOS (signal frequency vs. quality)
Require FVG on break bar: ON = stricter, OFF = more signals.
Min impulse body (x ATR): higher = stricter.
Body/TR min %: higher = stricter.
Close beyond ≥ ticks: 0–1 for LTF; 1–3 for HTF.
Order Blocks
OB height model: Body (cleaner) or Wick (wider protection).
Last opposite candle within N bars: 3–8 (higher finds more).
OB body ≤ % of TR: 0.35–0.70 (lower = stricter).
Min OB height (ticks): 1–2 (avoid micro slivers).
Expire on first touch: If ON, removes boxes after first reaction.
Hidden OB
Require ≥ N FVGs ahead: 0–1 for LTF (more HOBs), 1–2 for HTF.
Mitigation Filter (what you show)
Toggle Unmitigated / Partial / Full visibility.
For precision trading, keep Unmitigated on; show others while scanning.
Auto-Fibs
Enable fib confluence: On adds score near 0.618/0.705/0.786.
Draw lines / OTE: Visual only; confluence also boosts ranking.
Tolerance (x ATR): how close price must be to count as “near fib”.
Ranking & Draw
Top-K per direction: how many OBs/HOBs you’ll see each side.
Prefer near / newer / hidden / unmitigated: scoring toggles.
Fib boost: how much fib confluence bumps a level.
Trade Ideas
Entry style: 50% of OB (balanced) or OB edge (faster fills).
Stop pad (ticks/ATR): give a little room beyond the box edge.
TP1/TP2 (R): risk-multiple targets (e.g., 1R, 2R).
Time stop (minutes): exit if it doesn’t go in time.
Execution / Alerts (recommended)
Keep on-close workflow: do not enable calc_on_every_tick.
When creating alerts, choose Once per bar close.
How to use it (mechanical checklist)
Scan: Focus on Top-K boxes. HOBs (yellow-tinted) and unmitigated get first look.
Context (optional): If you like, also check HTF structure or obvious liquidity pools (equal highs/lows).
Confluence: Prefer boxes near 0.618/0.705/0.786 or inside the OTE band.
Trigger: Let the bar close. If entry line is touched next, you have a go-signal with a placed stop and R-targets.
Manage: If TP1 hits, move SL to BE. For HOBs, consider a runner (trail under minor swing/FVG) — they often travel further.
Time stop: If it hasn’t moved within N minutes/bars, cut it; don’t babysit.
Preset recipes (copy these settings)
1) Hyper-Scalp (1–3m) — frequent, fast
Structure / BOS:
FVG on break = OFF | Min impulse = 0.6–0.8 | Body/TR = 0.45–0.55 | Close beyond = 0–1
Order Blocks:
Opposite lookback = 5–6 | OB body ≤ 0.55–0.60 | Min height = 1
HOB: Need FVGs = 0–1
Mitigation view: Show Unmit/Partial, optionally Full while scanning
Ranking: Top-K = 4–6, prefer near/new/hidden/unmit = ON, Fib boost = 0.6–1.0
Trade Ideas: Entry = OB edge, Stop pad = 1–2 ticks, Time stop = 5–8 min
Execution: On bar close alerts
2) Intraday (5–15m) — balanced
Structure / BOS:
FVG on break = OFF | Min impulse = 0.8–1.0 | Body/TR = 0.55–0.60 | Close beyond = 1
Order Blocks:
Opposite lookback = 4–5 | OB body ≤ 0.50–0.55 | Min height = 1–2
HOB: Need FVGs = 1
Ranking: Top-K = 3–4, Fib boost = 1.0–1.5
Trade Ideas: Entry = 50%, Stop pad = 2–3 ticks, Time stop = 10–20 min
3) Swing (1H–4H) — selective, higher quality
Structure / BOS:
FVG on break = ON | Min impulse = ≥1.0 | Body/TR = ≥0.65 | Close beyond = 1–3
Order Blocks:
Opposite lookback = 3–4 | OB body ≤ 0.45–0.50 | Min height = 2–4
HOB: Need FVGs = 1–2
Ranking: Top-K = 2–3, Fib boost = 1.5–2.0
Trade Ideas: Entry = 50%, Stop pad = a few ticks + ATR pad, Time stop = few bars
4) HTF (Daily+) — very selective
Keep swing settings, increase Min impulse and Close beyond a bit, reduce Top-K to 1–2.
Priority rules (what to trade first)
HOB over OB
Unmitigated over partial/full
With fib confluence over without
Near price and recent over far/old
Favor levels that follow a sweep (equal highs/lows taken, then return to your box)
If two boxes tie, take the one with the cleaner origin candle and simpler path to TP (fewer nearby obstacles).
Troubleshooting & tips
“I’m not seeing many signals.”
Loosen Structure/BOS (lower ATR and Body/TR), increase Opposite lookback, allow Partial/Full in view, raise Top-K.
“Too many lines/boxes.”
Lower Top-K, use Limited extension (Anchoring), hide Partial/Full, and keep fib lines if you rely on confluence.
“Stuff looks offset.”
Keep origin pins on. Use xloc.bar_time (already in code) and avoid custom time compressions that desync objects.
Execution discipline:
Use on-close alerts. Respect time stops. Size by fixed risk per trade, not fixed leverage.
Racktor Analysis Assistant
Racktor Analysis Assistant — Feature Overview
The Racktor Analysis Assistant is a multi-module market-structure toolkit that plots pivots, BoS/ChoCh levels, session breakouts, inside bars, and higher-timeframe BTS/STB trap signals — with complete styling controls and alerting.
Smart Pivot Engine (ZigZag Core)
- Adaptive pivot period switching based on timeframe threshold.
- ZigZag stream tracks pivot types (H/L, HH/HL/LH/LL) with Major & Minor streams.
- Clean visuals: optional ZigZag line & pivot labels with customizable style, width, and color.
Major & Minor Structure Signals
- Detects BoS and ChoCh for both Major and Minor swings.
- Updates External Trend on Major events and Internal Trend on Minor events.
- One-time triggers per level via locking.
- Per-category styling for Major/Minor Bullish & Bearish BoS and ChoCh.
- Alerts with symbol, pivot, timeframe, and time, limited to specific timeframes if desired.
Inside Bar Module
- Toggleable Inside Bar detection.
- Custom colors for bullish and bearish inside bars.
- Optional alerts on detection.
Session Breakout Suite
- Custom session window with shaded box.
- On session close, plots High/Mid/Low breakout lines extendable for N hours.
- Optional previous day & week high/low lines.
- Breakout vs Liquidity Sweep modes (close-based or wick-based confirmation).
- Display styles: Fixed (triangles) or Moving (vertical dotted lines).
- Alerts for “first event” or “every event.”
BTS/STB Trap (Higher-Timeframe ID1/ID2 Logic)
- BTS/STB toggle with selectable check timeframe (default: 4H).
- STB (bullish, Sell→Buy): strict ID1/ID2 relationships, both candles bullish; green circle below HTF ID1 low.
- BTS (bearish, Buy→Sell): strict ID1/ID2 relationships, both candles bearish; red circle above HTF ID1 high.
- Non-repainting; dots appear only at HTF candle close.
- Timeframe-aware rendering (dots show only on selected timeframe).
- Alerts for STB/BTS at HTF close.
Styling & Limits
- Per-feature color/style/width customization.
- Generous limits for boxes, labels, and lines.
- Session tools limited to ≤ 120-minute charts for accuracy.
Anti-Repaint
- HTF signals use lookahead_off and HTF-close gating to avoid repainting.
- BoS/ChoCh and Session logic track prior values and use locks to prevent duplicates.
Quick Start
Set the Timeframe Threshold and pivot periods for lower/higher TFs.
Enable desired Major/Minor BoS/ChoCh lines and customize styles.
Activate Inside Bar Module if required.
Configure Session Breakout window, mode, and alert settings.
Enable BTS/STB detection, keeping 4H default or selecting a custom TF.
Add alerts for chosen signals and let the assistant annotate structure, sessions, and HTF traps.
Best Use with Racktor's Core Trading Strategy
For traders who want structure clarity without clutter, this Analysis-Assistant is built to keep your chart actionable and adaptive.
TrendPredator PROThe TrendPredator PRO
Stacey Burke, a seasoned trader and mentor, developed his trading system over the years, drawing insights from influential figures such as George Douglas Taylor, Tony Crabel, Steve Mauro, and Robert Schabacker. His popular system integrates select concepts from these experts into a consistent framework. While powerful, it remains highly discretionary, requiring significant real-time analysis, which can be challenging for novice traders.
The TrendPredator indicators support this approach by automating the essential analysis required to trade the system effectively and incorporating mechanical bias and a multi-timeframe concept. They provide value to traders by significantly reducing the time needed for session preparation, offering all relevant chart analysis and signals for live trading in real-time.
The PRO version offers an advanced pattern identification logic that highlights developing context as well as setups related to the constellation of the signals provided. It provides real-time interpretation of the multi-timeframe analysis table, following an extensive underlying logic with more than 150 different setup variations specifically developed for the system and indicator. These setups are constantly back- and forward-tested and updated according to the results. This version is tailored to traders primarily trading this system and following the related setups in detail.
The former TrendPredator ES version does not provide that option. It is significantly leaner and is designed for traders who want to use the multi-timeframe logic as additional confluence for their trading style. It is very well suited to support many other trading styles, including SMC and ICT.
The Multi-timeframe Master Pattern
Inspired by Taylor’s 3-day cycle and Steve Mauro’s work with “Beat the Market Maker,” Burke’s system views markets as cyclical, driven by the manipulative patterns of market makers. These patterns often trap traders at the extremes of moves above or below significant levels with peak formations, then reverse to utilize their liquidity, initiating the next phase. Breakouts away from these traps often lead to range expansions, as described by Tony Crabel and Robert Schabacker. After multiple consecutive breakouts, especially after the psychological number three, overextension might develop. A break in structure may then lead to reversals or pullbacks. The TrendPredator Indicator and the related multi-timeframe trading system are designed to track these cycles on the daily timeframe and provide signals and trade setups to navigate them.
Bias Logic and Multi-Timeframe Concept
The indicator covers the basic signals of Stacey Burke's system:
- First Red Day (FRD): Bearish break in structure, signalling weak longs in the market.
- First Green Day (FGD): Bullish break in structure signalling weak shorts in the markt.
- Three Days of Longs (3DL): Overextension signalling potential weak longs in the market.
- Three Days of Shorts (3DS): Overextension signalling potential weak shorts in the market.
- Inside Day (ID): Contraction, signalling potential impulsive reversal or range expansion move.
It enhances the original system by introducing:
Structured Bias Logic:
Tracks bias by following how price trades concerning the last previous candle high or low that was hit. For example if the high was hit, we are bullish above and bearish below.
- Bullish state: Breakout (BO), Fakeout Low (FOL)
- Bearish state: Breakdown (BD), Fakeout High (FOH)
Multi-Timeframe Perspective:
- Tracks all signals across H4, H8, D, W, and M timeframes, to look for alignment and follow trends and momentum in a mechanical way.
Developing Context:
- Identifies specific predefined context states based on the monthly, weekly and daily bias.
Developing Setups:
- Identifies specific predefined setups based on context and H8 bias as well as SB signals.
The indicator monitors the bias and signals of the system across all relevant timeframes and automates the related graphical chart analysis as well as context and setup zone identification. In addition to the master pattern, the system helps to identify the higher timeframe situation and follow the moves driven by other timeframe traders to then identify favourable context and setup situations for the trader.
Example: Full Bullish Cycle on the Daily Timeframe with Multi-Timeframe Signals
- The Trap/Peak Formation
The market breaks down from a previous day’s and maybe week’s low—potentially after multiple breakdowns—but fails to move lower and pulls back up to form a peak formation low and closes as a first green day.
MTF Signals: Bullish daily and weekly fakeout low; three consecutive breakdown days (1W Curr FOL, 1D Curr FOL, BO 3S).
Context: Reversal (REV)
Setup: Fakeout low continuation low of day (FOL Cont LOD)
- Pullback and Consolidation
The next day pulls further up after first green day signal, potentially consolidates inside the previous day’s range.
MTF Signals: Fakeout low and first green day closing as an inside day (1D Curr IS, Prev FOL, First G).
Context: Reversal continuation (REV Cont)
Setup: Previous fakeout low continuation low handing fruit (Prev FOL Cont LHF)
- Range Expansion/Trend
The following day breaks up through the previous day’s high, launching a range expansion away from the trap.
MTF Signals: Bullish daily breakout of an inside day (1D Curr BO, Prev IS).
Context: Uptrend healthy (UT)
Setup: Breakout continuation low hanging fruit (BO Cont LHF)
- Overextension
After multiple consecutive breakouts, the market reaches a state of overextension, signalling a possible reversal or pullback.
MTF Signals: Three days of breakout longs (1D Curr BO, Prev BO, BO 3L).
Context: Uptrend extended (UT)
- Reversal
After a breakout of previous days high that fails, price pulls away from the high showing a rollover of momentum across all timeframes and a potential short setup.
MTF Signals: Three days of breakout longs, daily fakeout high (1D 3L, FOH)
Context: Reversal countertrend (REV)
Setup: Fakeout high continuation high of day (FOH Cont HOD)
Note: This is only one possible illustrative scenario; there are many variations and combinations.
Example Chart: Full Bullish Cycle with Correlated Signals
Multi-Timeframe Signals examples:
Context and Setups examples:
Note: The signals shown along the move are manually added illustrations. The indicator shows these in realtime in the table at top and bottom right. This is only one possible scenario; there are many variations and combinations.
Due to the fractal nature of markets, this cycle can be observed across all timeframes. The strongest setups occur when there is multi-timeframe alignment. For example, a peak formation and potential reversal on the daily timeframe have higher probability and follow-through when they align with bearish signals on higher timeframes (e.g., weekly/monthly BD/FOH) and confirmation on lower timeframes (H4/H8 FOH/BD). With this perspective, the system enables the trader to follow the trend and momentum while identifying rollover points in a highly differentiated and precise way.
Using the Indicator for Trading
The automated analysis provided by the indicator can be used for thesis generation in preparation for a session as well as for live trading, leveraging the real-time updates as well as the context and setup indicated or alerted. It is recommended to customize the settings deeply, such as hiding the lower timeframes for thesis generation or the specific alert time window and settings to the specific trading schedule and playbook of the trader.
1. Context Assessment:
Evaluate alignment of higher timeframes (e.g., Month/Week, Week/Day). More alignment → Stronger setups.
- The context table offers an interpretation of the higher timeframe automatically. See below for further details.
2. Setup Identification:
Follow the bias of daily and H8 timeframes. A setup mostly requires alignment of these.
Setup Types:
- Trend Trade: Trade in alignment with the previous day’s trend.
Example: Price above the previous day’s high → Focus on long setups (dBO, H8 FOL) until overextension or reversal signs appear (H8 BO 3L, First R).
- Reversal Trade: Identify reversal setups when lower timeframes show rollovers after higher timeframe weakness.
Example: Price below the previous day’s high → Look for reversal signals at the current high of day (H8 FOH, BO 3L, First R).
- The setup table shows potential setups for the specific price zone in the table automatically. See below for further details.
3. Entry Confirmation:
Confirm entries based on H8 and H4 alignment, candle closes and lower timeframe fakeouts.
- H8 and H4 should always align for a final confirmation, meaning the breach lines should be both in the back of a potential trade setup.
- M15/ 5 candle close can be seen as acceptance beyond a level or within the setup zone.
- M15/5 FOH/ FOL signals lower timeframe traps potentially indicating further confirmation.
Example Chart Reversal Trade:
Context: REV (yellow), Reversal counter trend, Month in FOL with bearish First R, Week in BO but bearishly overextended with BO 3L, Day in Fakeout high reversing bearishly.
Setup: FOH Cont HOD (red), Day in Fakeout high after BO 3L overextension, confirmed by H8 FOH high of day, First R as further confluence. Two star quality and countertrend.
Entry: H4 BD, M15 close below followed by M15 FOH.
Detailed Features and Options
1. Context and Setup table
The Context and Setup Table is the core feature of the TrendPredator PRO indicator. It delivers real-time interpretation of the multi-timeframe analysis based on an extensive underlying logic table with over 150 variations, specifically developed for this system and indicator. This logic is continuously updated and optimized to ensure accuracy and performance.
1.1. Developing Context
States for developing higher timeframe context are determined based on signals from the monthly, weekly, and daily timeframes.
- Green and Red indicate alignment and potentially interesting developing setups.
- Yellow signals a mixed or conflicting bias, suggesting caution when taking trades.
The specific states are:
- UT (yellow): Uptrend extended
- UT (green): Uptrend healthy
- REV (yellow): Reversal day counter trend
- REV (green): Reversal day mixed trend
- REV Cont (green): Reversal continuation mixed trend
- REV Cont (yellow): Reversal continuation counter trend
- REV into UT (green): Reversal day into uptrend
- REV Cont into UT (green): Reversal continuation into uptrend
- UT Pullback (yellow): Counter uptrend breakdown day
- Conflicting (yellow): Conflicting signals
- Consolidating (yellow): Consolidating sideways
- Inside (yellow): Trading inside after an inside week
- DT Pullback (yellow): Counter downtrend breakout day
- REV Cont into DT (red): Reversal continuation into downtrend
- REV into DT (red): Reversal day into downtrend
- REV Cont (yellow): Reversal continuation counter trend
- REV Cont (red): Reversal continuation mixed trend
- REV (red): Reversal day mixed trend
- REV (yellow): Reversal day countertrend
- DT (red): Downtrend healthy
- DT (yellow): Downtrend extended
Example: Uptrend
The Uptrend Context (UT, green) indicates a healthy uptrend with all timeframes aligning bullishly. In this case, the monthly is in a Fakeout Low (FOL) and currently inside the range, while the weekly and daily are both in Breakout (BO) states. This context is favorable for developing long setups in the direction of the trend.
Example: Uptrend pullback
The Uptrend Pullback Context (UT Pullback, yellow) indicates a Breakdown (BD) on the daily timeframe against a higher timeframe uptrend. In this case, the monthly is in a Fakeout Low (FOL) and currently inside its range, the weekly is in Breakout (BO) and also currently inside, while the daily is in Breakdown (BD). This context reflects a conflicting situation—potentially signaling either an early reversal back into the uptrend or, if the breakdown extends, the beginning of a possible trend change.
Example: Reversal into Uptrend
The Reversal into Uptrend Context (REV into UT, green) indicates a lower timeframe reversal aligning with a higher timeframe uptrend. In this case, the monthly is in Breakout (BO), the weekly is in Breakout (BO) and currently inside its range, while the daily is showing a bullish Fakeout Low (FOL) reversal. This context is potentially very favorable for long setups, as it signals a strong continuation of the uptrend supported across multiple timeframes.
Example: Reversal
The Bearish Reversal Context indicates a lower timeframe rollover within an ongoing higher timeframe uptrend. In this case, the monthly remains in Breakout (BO), the weekly has shifted into a Fakeout High (FOH) after three weeks of breakout longs, and the daily is already in Breakdown (BD). This context suggests a potentially favorable developing short setup, as early signs of weakness appear across timeframes.
1.2. Developing Setup
The states for specific setups are based on the context and the signals from the daily timeframe and H8, indicating that price is in the zone of alignment. The setup description refers to the state of the daily timeframe, while the suffix relates to the H8 timeframe. For example, "prev FOH Cont LHF" means that the previous day is in FOH (Fakeout High) relative to yesterday's breakout level, currently trading inside, and we are in an H8 breakdown, indicating a potential LHF (Lower High Formation) short trade if the entry confirms. The suffix HOD means that H8 is in FOH or BO (Breakout).
The specific states are:
- REV HOD (red): Reversal high of day
- REV Cont LHF (red): Reversal continuation low hanging fruit
- BO Cont LHF (green): Breakout continuation low hanging fruit
- BO Cont LOD (green): Breakout continuation low of day
- FOH Cont HOD (red): Fakeout high continuation high of day
- FOH Cont LHF ((red): Fakeout high continuation low hanging fruit
- prev BD Cont HOD (red): Previous breakdown continuation high of day
- prev BD Cont LHF (red): Previous breakdown continuation low hanging fruit
- prev FOH Cont HOD (red): Previous fakeout high continuation high of day
- prev FOH Cont LHF (red): Previous fakeout high continuation low hanging fruit
- prev FOL Cont LOD (green): Previous fakeout low continuation low of day
- prev FOL Cont LHF (green): Previous fakeout low continuation low hanging fruit
- prev BO Cont LOD (green): Previous breakout continuation low of day
- prev BO Cont LHF (green): Previous breakout continuation low hanging fruit
- FOL Cont LHF (green): Fakeout low continuation low hanging fruit
- FOL Cont LOD (green): Fakeout low continuation low of day
- BD Cont LHF (red): BD continuation low hanging fruit
- BD Cont LOD (red): Breakdown continuation low of day
- REV Cont LHF (green): Reversal continuation low hanging fruit
- REV LOD (green): Reversal low of day
- Inside: Trading inside after an inside day
Type: Indicates the situation of the indicated setup concerning:
- Trend: Following higher timeframe trend
- Mixed: Mixed higher timeframe signals
- Counter: Against higher timeframe bias
Quality: Indicates the quality of the indicated setup according to the specified logic table
No star: Very low quality
* One star: Low quality
** Two star: Medium quality
*** Three star: High quality
Example: Breakout Continuation Trend Setup
This setup highlights a healthy uptrend where the month is in a breakout, the week is in a fakeout low, and the day is in a breakout after a first green day. As the H8 breaks out to the upside, a long setup zone is triggered, presenting a breakout continuation low-hanging fruit trade. This is a trend trade in an overextended situation on the H8, with an H8 3L, resulting in an overall quality rating of one star.
Example: Fakeout Low Continuation Trend Setup
This setup shows a reversal into uptrend, with the month in a breakout, the week in a breakout, and the day in a fakeout low after breaking down the previous day and now reversing back up. As H8 breaks out to the upside, a long setup zone is triggered, presenting a previous fakeout low continuation, low-hanging fruit trade. This is a medium-quality trend trade.
Example: Reversal Setup - Mixed Trend
This setup shows a reversal setup in line with the weekly trend, with the month in a fakeout low, the week in a fakeout high, and the day in a fakeout high after breaking out earlier in the day and now reversing back down. As H8 loses the previous breakout level after 3 breakouts (with H8 3L), a short setup zone is triggered, presenting a fakeout high continuation at the high of the day. This is a high-quality trade in a mixed trend situation.
Setup Alerts:
Alerts can be activated for setups freshly triggered on the chart within your trading window.
Detailed filter logic for setup alerts:
- Setup quality: 1-3 star
- Setup type: Counter, Mixed and Trend
- Setup category: e.g. Reversal Bearish, Breakout, Previous Fakeout High
- 1D BO and First signals: 3DS, 3DL, FRD, FGD, ID
Options:
- Alerts on/ off
- Alert time window (from/ to)
- Alert filter customization
Note: To activate alerts from a script in TradingView, some settings need to be adjusted. Open the "Create Alert" dialog and select the option "Any alert() function call" in the "Condition" section. Choose "TrendPredator PRO" to ensure that alerts trigger properly from the code. Alerts can be activated for entire watchlists or individual pairs. Once activated, the alerts run in the background and notify the user whenever a setup is freshly triggered according to the filter settings.
2. Multi-Timeframe Table
Provides a real-time view of system signals, including:
Current Timeframe (Curr): Bias states.
- Breakout (green BO): Bullish after breaking above the previous high.
- Fakeout High (red FOH): Bearish after breaking above the previous high but pulling back down.
- Breakdown (red BD): Bearish after breaking below the previous low.
- Fakeout Low (green FOL): Bullish after breaking below the previous low but pulling back up.
- Inside (IS): Price trading neutral inside the previous range, taking the previous bias (color indicates the previous bias).
Previous Timeframe (Prev): Tracks last candle bias state and transitions dynamically.
- Bias for last candle: BO, FOH, BD, FOL in respective colors.
- Inside bar (yellow IS): Indicated as standalone signal.
Note: Also previous timeframes get constantly updated in real time to track the bias state in relation to the level that was hit. This means a BO can still lose the level and become a FOH, and vice versa, and a BD can still become a FOL, and vice versa. This is critical to see for example if traders that are trapped in that timeframe with a FOH or FOL are released. An inside bar stays fixed, though, since no level was hit in that timeframe.
Breakouts (BO): Breakout count 3 longs and 3 shorts.
- 3 Longs (red 3L): Bearish after three breakouts without hitting a previous low.
- 3 Shorts (green 3S): Bullish after three breakdowns without hitting a previous high.
First Countertrend Close (First): Tracks First Red or Green Day.
- First Green (G): After two consecutive red closes.
- First Red (R): After two consecutive green closes.
Options: Customizable font size and label colors.
3. Historic Highs and Lows
Displays historic highs and lows per timeframe for added context, enabling users to track sequences over time.
Timeframes: H4, H8, D, W, M
Options: Customize for timeframes shown, number of historic candles per timeframe, colors, formats, and labels.
4. Previous High and Low Extensions
Displays extended previous levels (high, low, and close) for each timeframe to assess how price trades relative to these levels.
H4: P4H, P4L, P4C
H8: P8H, P8L, P8C
Daily: PDH, PDL, PDC
Weekly: PWH, PWL, PWC
Monthly: PMH, PML, PMC
Options: Fully customizable for timeframes shown, colors, formats, and labels.
5. Breach Lines
Tracks live market reactions (e.g., breakouts or fakeouts) per timeframe for the last previous high or low that was hit, highlighting these levels originating at the breached candle to indicate bias (color-coded).
Red: Bearish below
Green: Bullish above
H4: 4FOL, 4FOH, 4BO, 4BD
H8: 8FOL, 8FOH, 8BO, 8BD
D: dFOL, dFOH, dBO, dBD
W: wFOL, wFOH, wBO, wBD
M: mFOL, mFOH, mBO, mBD
Options: Fully customizable for timeframes shown, colors, formats, and labels.
Overall Options:
Toggle single feature groups on/off.
Customize H8 open/close time as an offset to UTC to be provider independent.
Colour settings con be adjusted for dark or bright backgrounds.
Higher Timeframe Use Case Examples
Example Use Case: Weekly Template Analysis
The Weekly Template is a core concept in Stacey Burke’s trading style. The analysis is conducted on the daily timeframe, focusing on the higher timeframe bias and identifying overextended conditions within the week—such as multiple breakouts and peak formations signaling potential reversals.
In this example, the candles are colored by the TrendPredator FO indicator, which highlights the state of individual candles. This allows for precise evaluation of both the trend state and the developing weekly template. It is a valuable tool for thesis generation before a trading session and for backtesting purposes.
Example Use Case: High Timeframe 5-Star Setup Analysis (Stacey Burke "ain't coming back" ACB Template)
This analysis identifies high-probability trade opportunities when daily breakout or breakdown closes occur near key monthly levels mid-week, signaling overextensions and potentially large parabolic moves. The key signal to look for is a breakout or breakdown close on a Wednesday. This is useful for thesis generation before a session and also for backtesting.
In this example, the TrendPredator FO indicator colors the candles to highlight individual candle states, particularly those that close in breakout or breakdown. Additionally, an indicator is shown on the chart shading every Wednesday, making it easier to visually identify the signals.
5 Star Alerts:
Alerts can be activated for this potential 5-Star setup constellation. The alert is triggered when there is a breakout or breakdown close on a Wednesday.
Further recommendations:
- Higher timeframe context: TPO or volume profile indicators can be used to gain an even better overview.
- Late session trading: Entries later in the session, such as during the 3rd hour of the NY session, offer better analysis and follow-through on setups.
- Entry confirmation: Momentum indicators like VWAP, Supertrend, or EMA are helpful for increasing precision. Additionally, tracking lower timeframe fakeouts can provide powerful confluence. To track those the TrendPredator Fakeout Highlighter (FO), that has been specifically developed for this can be of great help:
Limitations:
Data availability using TradingView has its limitations. The indicator leverages only the real-time data available for the specific timeframe being used. This means it cannot access data from timeframes lower than the one displayed on the chart. For example, if you are on a daily chart, it cannot use H8 data. Additionally, on very low timeframes, the historical availability of data might be limited, making higher timeframe signals unreliable.
To address this, the indicator automatically hides the affected columns in these specific situations, preventing false signals.
Disclaimer
This indicator is for educational purposes only and does not guarantee profits.
None of the information provided shall be considered financial advice.
The indicator does not provide final buy or sell signals but highlights zones for potential setups.
Users are fully responsible for their trading decisions and outcomes.
[TehThomas] - Market Structure Shift (MSS)
- Market Structure Shift (MSS) Script Overview
This TradingView script is designed to help traders identify Market Structure Shifts (MSS) and Breaks of Structure (BOS), which are key concepts in ICT (Inner Circle Trader) and Smart Money Concepts (SMC) trading. By detecting significant shifts in price action, the script provides visual cues and alerts to help traders spot potential trend changes and continuation patterns.
How the Script Works
1. Identifying Swing Highs & Lows
The script detects swing highs and swing lows based on a pivot strength setting (default: 3).
A swing high forms when a candle’s high is higher than the highs of a set number of candles on both sides.
A swing low forms when a candle’s low is lower than the lows of the surrounding candles.
2. Market Structure Shift (MSS) Detection
A bullish MSS occurs when price closes above the most recent swing high after previously being in a bearish trend.
A bearish MSS occurs when price closes below the most recent swing low after being in a bullish trend.
This signals a potential trend reversal and is often a key area for liquidity grabs and smart money entry points.
3. Break of Structure (BOS) Detection (Optional - Can be enabled/disabled in settings)
A BOS is detected when price continues in the direction of the trend, confirming a structural break rather than a shift.
Bullish BOS: Price breaks a swing high but does not reverse (confirms trend continuation).
Bearish BOS: Price breaks a swing low but continues downward.
BOS levels help traders confirm trend strength and potential trade continuation setups.
4. Drawing Structure Lines & Labels
The script plots horizontal lines at the detected MSS and BOS levels.
Labels such as "MSS" or "BOS" appear at the breakout points.
Traders can customize the line style, color, and text size for better visibility.
5. Alert System for MSS & BOS
The script includes alert conditions that notify traders when an MSS or BOS occurs.
Alerts can be set for:
Any MSS / Any BOS
Bullish MSS / Bullish BOS
Bearish MSS / Bearish BOS
Settings You Can Change
The script allows for full customization through the following input parameters:
Pivot Strength (pivot_strength)
Default: 4
Adjusts how many candles must be considered to form a valid swing high or low.
Higher values result in stronger structure points, while lower values detect short-term movements.
Color Settings
Highs Color (highs) → Default: Blue (for bullish structure)
Lows Color (lows) → Default: Red (for bearish structure)
Toggle Display Options
Show BOS (show_bos) → Enables/disables BOS detection.
Show MSS (show_mss) → Enables/disables MSS detection.
Line & Label Customization
BOS Line Style (bos_style) → Options: Solid, Dashed, Dotted
MSS Line Style (mss_style) → Options: Solid, Dashed, Dotted
BOS & MSS Line Width → Adjustable from 1 to 4 pixels
BOS & MSS Text Size → Options: Tiny, Small, Normal, Large, Huge
BOS & MSS Text Position → Options: Left, Center, Right
Why This Script is Useful
✔ Detects Key Market Structure Changes
MSS and BOS are critical for identifying trend reversals and trend continuations.
Helps traders avoid false breakouts by distinguishing between structural shifts and simple breakouts.
✔ Enhances Smart Money Trading Strategies
MSS often aligns with liquidity grabs before price reverses.
BOS confirms continuation trades in strong trends.
Works well with Fair Value Gaps (FVGs), Order Blocks (OBs), and Liquidity Zones.
✔ Customizable Alerts & Visuals
Traders can enable alerts for MSS and BOS to receive notifications when price shifts.
Adjustable styling ensures clarity across different trading setups.
✔ Works on Any Asset & Timeframe
Suitable for Forex, Crypto, Stocks, and Indices.
Can be used on lower timeframes (scalping) or higher timeframes (swing trading).
How to Use the Market Structure Shift Concept in Trading
1️⃣ Identify Market Conditions
Apply the script and check if price is forming Higher Highs (HH), Higher Lows (HL), Lower Highs (LH), or Lower Lows (LL).
Determine if the market is trending or ranging.
2️⃣ Watch for MSS (Reversal Signals)
Bullish MSS: Price closes above a key swing high → potential bullish reversal.
Bearish MSS: Price closes below a swing low → potential bearish reversal.
3️⃣ Confirm BOS (Trend Continuation Signals)
Bullish BOS: Price continues breaking highs, confirming an uptrend.
Bearish BOS: Price continues breaking lows, confirming a downtrend.
4️⃣ Combine with Other ICT & SMC Concepts
Look for Order Blocks (OBs) and Fair Value Gaps (FVGs) near MSS/BOS levels for better trade entries.
Wait for liquidity grabs before entering trades (avoid stop hunts).
Use higher timeframe MSS/BOS zones as key support & resistance areas.
Final Thoughts
This script is a must-have tool for traders using ICT & SMC trading strategies. It helps identify trend shifts, liquidity grabs, and continuation moves by marking Market Structure Shifts (MSS) and Breaks of Structure (BOS) on the chart.
SMC Structures and FVGสวัสดีครับ! ผมจะอธิบายอินดิเคเตอร์ "SMC Structures and FVG + MACD" ที่คุณให้มาอย่างละเอียดในแต่ละส่วน เพื่อให้คุณเข้าใจการทำงานของมันอย่างถ่องแท้ครับ
อินดิเคเตอร์นี้เป็นการผสมผสานแนวคิดของ Smart Money Concept (SMC) ซึ่งเน้นการวิเคราะห์โครงสร้างตลาด (Market Structure) และ Fair Value Gap (FVG) เข้ากับอินดิเคเตอร์ MACD เพื่อใช้เป็นตัวกรองหรือตัวยืนยันสัญญาณ Choch/BoS (Change of Character / Break of Structure)
1. ภาพรวมอินดิเคเตอร์ (Overall Purpose)
อินดิเคเตอร์นี้มีจุดประสงค์หลักคือ:
ระบุโครงสร้างตลาด: ตีเส้นและป้ายกำกับ Choch (Change of Character) และ BoS (Break of Structure) บนกราฟโดยอัตโนมัติ
ผสานการยืนยันด้วย MACD: สัญญาณ Choch/BoS จะถูกพิจารณาก็ต่อเมื่อ MACD Histogram เกิดการตัดขึ้นหรือลง (Zero Cross) ในทิศทางที่สอดคล้องกัน
แสดง Fair Value Gap (FVG): หากเปิดใช้งาน จะมีการตีกล่อง FVG บนกราฟ
แสดงระดับ Fibonacci: คำนวณและแสดงระดับ Fibonacci ที่สำคัญตามโครงสร้างตลาดปัจจุบัน
ปรับตาม Timeframe: การคำนวณและการแสดงผลทั้งหมดจะปรับตาม Timeframe ที่คุณกำลังใช้งานอยู่โดยอัตโนมัติ
2. ส่วนประกอบหลักของโค้ด (Code Breakdown)
โค้ดนี้สามารถแบ่งออกเป็นส่วนหลัก ๆ ได้ดังนี้:
2.1 Inputs (การตั้งค่า)
ส่วนนี้คือตัวแปรที่คุณสามารถปรับแต่งได้ในหน้าต่างการตั้งค่าของอินดิเคเตอร์ (คลิกที่รูปฟันเฟืองข้างชื่ออินดิเคเตอร์บนกราฟ)
MACD Settings (ตั้งค่า MACD):
fast_len: ความยาวของ Fast EMA สำหรับ MACD (ค่าเริ่มต้น 12)
slow_len: ความยาวของ Slow EMA สำหรับ MACD (ค่าเริ่มต้น 26)
signal_len: ความยาวของ Signal Line สำหรับ MACD (ค่าเริ่มต้น 9)
= ta.macd(close, fast_len, slow_len, signal_len): คำนวณค่า MACD Line, Signal Line และ Histogram โดยใช้ราคาปิด (close) และค่าความยาวที่กำหนด
is_bullish_macd_cross: ตรวจสอบว่า MACD Histogram ตัดขึ้นเหนือเส้น 0 (จากค่าลบเป็นบวก)
is_bearish_macd_cross: ตรวจสอบว่า MACD Histogram ตัดลงใต้เส้น 0 (จากค่าบวกเป็นลบ)
Fear Value Gap (FVG) Settings:
isFvgToShow: (Boolean) เปิด/ปิดการแสดง FVG บนกราฟ
bullishFvgColor: สีสำหรับ Bullish FVG
bearishFvgColor: สีสำหรับ Bearish FVG
mitigatedFvgColor: สีสำหรับ FVG ที่ถูก Mitigate (ลดทอน) แล้ว
fvgHistoryNbr: จำนวน FVG ย้อนหลังที่จะแสดง
isMitigatedFvgToReduce: (Boolean) เปิด/ปิดการลดขนาด FVG เมื่อถูก Mitigate
Structures (โครงสร้างตลาด) Settings:
isStructBodyCandleBreak: (Boolean) หากเป็น true การ Break จะต้องเกิดขึ้นด้วย เนื้อเทียน ที่ปิดเหนือ/ใต้ Swing High/Low หากเป็น false แค่ไส้เทียนทะลุก็ถือว่า Break
isCurrentStructToShow: (Boolean) เปิด/ปิดการแสดงเส้นโครงสร้างตลาดปัจจุบัน (เส้นสีน้ำเงินในภาพตัวอย่าง)
pivot_len: ความยาวของแท่งเทียนที่ใช้ในการมองหาจุด Pivot (Swing High/Low) ยิ่งค่าน้อยยิ่งจับ Swing เล็กๆ ได้, ยิ่งค่ามากยิ่งจับ Swing ใหญ่ๆ ได้
bullishBosColor, bearishBosColor: สีสำหรับเส้นและป้าย BOS ขาขึ้น/ขาลง
bosLineStyleOption, bosLineWidth: สไตล์ (Solid, Dotted, Dashed) และความหนาของเส้น BOS
bullishChochColor, bearishChochColor: สีสำหรับเส้นและป้าย CHoCH ขาขึ้น/ขาลง
chochLineStyleOption, chochLineWidth: สไตล์ (Solid, Dotted, Dashed) และความหนาของเส้น CHoCH
currentStructColor, currentStructLineStyleOption, currentStructLineWidth: สี, สไตล์ และความหนาของเส้นโครงสร้างตลาดปัจจุบัน
structHistoryNbr: จำนวนการ Break (Choch/BoS) ย้อนหลังที่จะแสดง
Structure Fibonacci (จากโค้ดต้นฉบับ):
เป็นชุด Input สำหรับเปิด/ปิด, กำหนดค่า, สี, สไตล์ และความหนาของเส้น Fibonacci Levels ต่างๆ (0.786, 0.705, 0.618, 0.5, 0.382) ที่จะถูกคำนวณจากโครงสร้างตลาดปัจจุบัน
2.2 Helper Functions (ฟังก์ชันช่วยทำงาน)
getLineStyle(lineOption): ฟังก์ชันนี้ใช้แปลงค่า String ที่เลือกจาก Input (เช่น "─", "┈", "╌") ให้เป็นรูปแบบ line.style_ ที่ Pine Script เข้าใจ
get_structure_highest_bar(lookback): ฟังก์ชันนี้พยายามหา Bar Index ของแท่งเทียนที่ทำ Swing High ภายในช่วง lookback ที่กำหนด
get_structure_lowest_bar(lookback): ฟังก์ชันนี้พยายามหา Bar Index ของแท่งเทียนที่ทำ Swing Low ภายในช่วง lookback ที่กำหนด
is_structure_high_broken(...): ฟังก์ชันนี้ตรวจสอบว่าราคาปัจจุบันได้ Break เหนือ _structureHigh (Swing High) หรือไม่ โดยพิจารณาจาก _highStructBreakPrice (ราคาปิดหรือราคา High ขึ้นอยู่กับการตั้งค่า isStructBodyCandleBreak)
FVGDraw(...): ฟังก์ชันนี้รับ Arrays ของ FVG Boxes, Types, Mitigation Status และ Labels มาประมวลผล เพื่ออัปเดตสถานะของ FVG (เช่น ถูก Mitigate หรือไม่) และปรับขนาด/ตำแหน่งของ FVG Box และ Label บนกราฟ
2.3 Global Variables (ตัวแปรทั่วทั้งอินดิเคเตอร์)
เป็นตัวแปรที่ประกาศด้วย var ซึ่งหมายความว่าค่าของมันจะถูกเก็บไว้และอัปเดตในแต่ละแท่งเทียน (persists across bars)
structureLines, structureLabels: Arrays สำหรับเก็บอ็อบเจกต์ line และ label ของเส้น Choch/BoS ที่วาดบนกราฟ
fvgBoxes, fvgTypes, fvgLabels, isFvgMitigated: Arrays สำหรับเก็บข้อมูลของ FVG Boxes และสถานะต่างๆ
structureHigh, structureLow: เก็บราคาของ Swing High/Low ที่สำคัญของโครงสร้างตลาดปัจจุบัน
structureHighStartIndex, structureLowStartIndex: เก็บ Bar Index ของจุดเริ่มต้นของ Swing High/Low ที่สำคัญ
structureDirection: เก็บสถานะของทิศทางโครงสร้างตลาด (1 = Bullish, 2 = Bearish, 0 = Undefined)
fiboXPrice, fiboXStartIndex, fiboXLine, fiboXLabel: ตัวแปรสำหรับเก็บข้อมูลและอ็อบเจกต์ของเส้น Fibonacci Levels
isBOSAlert, isCHOCHAlert: (Boolean) ใช้สำหรับส่งสัญญาณ Alert (หากมีการตั้งค่า Alert ไว้)
2.4 FVG Processing (การประมวลผล FVG)
ส่วนนี้จะตรวจสอบเงื่อนไขการเกิด FVG (Bullish FVG: high < low , Bearish FVG: low > high )
หากเกิด FVG และ isFvgToShow เป็น true จะมีการสร้าง box และ label ใหม่เพื่อแสดง FVG บนกราฟ
มีการจัดการ fvgBoxes และ fvgLabels เพื่อจำกัดจำนวน FVG ที่แสดงตาม fvgHistoryNbr และลบ FVG เก่าออก
ฟังก์ชัน FVGDraw จะถูกเรียกเพื่ออัปเดตสถานะของ FVG (เช่น การถูก Mitigate) และปรับการแสดงผล
2.5 Structures Processing (การประมวลผลโครงสร้างตลาด)
Initialization: ที่ bar_index == 0 (แท่งเทียนแรกของกราฟ) จะมีการกำหนดค่าเริ่มต้นให้กับ structureHigh, structureLow, structureHighStartIndex, structureLowStartIndex
Finding Current High/Low: highest, highestBar, lowest, lowestBar ถูกใช้เพื่อหา High/Low ที่สุดและ Bar Index ของมันใน 10 แท่งล่าสุด (หรือทั้งหมดหากกราฟสั้นกว่า 10 แท่ง)
Calculating Structure Max/Min Bar: structureMaxBar และ structureMinBar ใช้ฟังก์ชัน get_structure_highest_bar และ get_structure_lowest_bar เพื่อหา Bar Index ของ Swing High/Low ที่แท้จริง (ไม่ใช่แค่ High/Low ที่สุดใน lookback แต่เป็นจุด Pivot ที่สมบูรณ์)
Break Price: lowStructBreakPrice และ highStructBreakPrice จะเป็นราคาปิด (close) หรือราคา Low/High ขึ้นอยู่กับ isStructBodyCandleBreak
isStuctureLowBroken / isStructureHighBroken: เงื่อนไขเหล่านี้ตรวจสอบว่าราคาได้ทำลาย structureLow หรือ structureHigh หรือไม่ โดยพิจารณาจากราคา Break, ราคาแท่งก่อนหน้า และ Bar Index ของจุดเริ่มต้นโครงสร้าง
Choch/BoS Logic (ส่วนสำคัญที่ถูกผสานกับ MACD):
if(isStuctureLowBroken and is_bearish_macd_cross): นี่คือจุดที่ MACD เข้ามามีบทบาท หากราคาทำลาย structureLow (สัญญาณขาลง) และ MACD Histogram เกิด Bearish Zero Cross (is_bearish_macd_cross เป็น true) อินดิเคเตอร์จะพิจารณาว่าเป็น Choch หรือ BoS
หาก structureDirection == 1 (เดิมเป็นขาขึ้น) หรือ 0 (ยังไม่กำหนด) จะตีเป็น "CHoCH" (เปลี่ยนทิศทางโครงสร้างเป็นขาลง)
หาก structureDirection == 2 (เดิมเป็นขาลง) จะตีเป็น "BOS" (ยืนยันโครงสร้างขาลง)
มีการสร้าง line.new และ label.new เพื่อวาดเส้นและป้ายกำกับ
structureDirection จะถูกอัปเดตเป็น 1 (Bullish)
structureHighStartIndex, structureLowStartIndex, structureHigh, structureLow จะถูกอัปเดตเพื่อกำหนดโครงสร้างใหม่
else if(isStructureHighBroken and is_bullish_macd_cross): เช่นกันสำหรับขาขึ้น หากราคาทำลาย structureHigh (สัญญาณขาขึ้น) และ MACD Histogram เกิด Bullish Zero Cross (is_bullish_macd_cross เป็น true) อินดิเคเตอร์จะพิจารณาว่าเป็น Choch หรือ BoS
หาก structureDirection == 2 (เดิมเป็นขาลง) หรือ 0 (ยังไม่กำหนด) จะตีเป็น "CHoCH" (เปลี่ยนทิศทางโครงสร้างเป็นขาขึ้น)
หาก structureDirection == 1 (เดิมเป็นขาขึ้น) จะตีเป็น "BOS" (ยืนยันโครงสร้างขาขึ้น)
มีการสร้าง line.new และ label.new เพื่อวาดเส้นและป้ายกำกับ
structureDirection จะถูกอัปเดตเป็น 2 (Bearish)
structureHighStartIndex, structureLowStartIndex, structureHigh, structureLow จะถูกอัปเดตเพื่อกำหนดโครงสร้างใหม่
การลบเส้นเก่า: d.delete_line (หากไลบรารีทำงาน) จะถูกเรียกเพื่อลบเส้นและป้ายกำกับเก่าออกเมื่อจำนวนเกิน structHistoryNbr
Updating Structure High/Low (else block): หากไม่มีการ Break เกิดขึ้น แต่ราคาปัจจุบันสูงกว่า structureHigh หรือต่ำกว่า structureLow ในทิศทางที่สอดคล้องกัน (เช่น ยังคงเป็นขาขึ้นและทำ High ใหม่) structureHigh หรือ structureLow จะถูกอัปเดตเพื่อติดตาม High/Low ที่สุดของโครงสร้างปัจจุบัน
Current Structure Display:
หาก isCurrentStructToShow เป็น true อินดิเคเตอร์จะวาดเส้น structureHighLine และ structureLowLine เพื่อแสดงขอบเขตของโครงสร้างตลาดปัจจุบัน
Fibonacci Display:
หาก isFiboXToShow เป็น true อินดิเคเตอร์จะคำนวณและวาดเส้น Fibonacci Levels ต่างๆ (0.786, 0.705, 0.618, 0.5, 0.382) โดยอิงจาก structureHigh และ structureLow ของโครงสร้างตลาดปัจจุบัน
Alerts:
alertcondition: ใช้สำหรับตั้งค่า Alert ใน TradingView เมื่อเกิดสัญญาณ BOS หรือ CHOCH
plot(na):
plot(na) เป็นคำสั่งที่สำคัญในอินดิเคเตอร์ที่ไม่ได้ต้องการพล็อต Series ของข้อมูลบนกราฟ (เช่น ไม่ได้พล็อตเส้น EMA หรือ RSI) แต่ใช้วาดอ็อบเจกต์ (Line, Label, Box) โดยตรง
การมี plot(na) ช่วยให้ Pine Script รู้ว่าอินดิเคเตอร์นี้มีเอาต์พุตที่แสดงผลบนกราฟ แม้ว่าจะไม่ได้เป็น Series ที่พล็อตตามปกติก็ตาม
3. วิธีใช้งาน
คัดลอกโค้ดทั้งหมด ที่อยู่ในบล็อก immersive ด้านบน
ไปที่ TradingView และเปิดกราฟที่คุณต้องการ
คลิกที่เมนู "Pine Editor" ที่อยู่ด้านล่างของหน้าจอ
ลบโค้ดเดิมที่มีอยู่ และ วางโค้ดที่คัดลอกมา ลงไปแทน
คลิกที่ปุ่ม "Add to Chart"
อินดิเคเตอร์จะถูกเพิ่มลงในกราฟของคุณโดยอัตโนมัติ คุณสามารถคลิกที่รูปฟันเฟืองข้างชื่ออินดิเคเตอร์บนกราฟเพื่อเข้าถึงหน้าต่างการตั้งค่าและปรับแต่งตามความต้องการของคุณได้
Hello! I will explain the "SMC Structures and FVG + MACD" indicator you provided in detail, section by section, so you can fully understand how it works.This indicator combines the concepts of Smart Money Concept (SMC), which focuses on analyzing Market Structure and Fair Value Gaps (FVG), with the MACD indicator to serve as a filter or confirmation for Choch (Change of Character) and BoS (Break of Structure) signals.1. Overall PurposeThe main purposes of this indicator are:Identify Market Structure: Automatically draw lines and label Choch (Change of Character) and BoS (Break of Structure) on the chart.Integrate MACD Confirmation: Choch/BoS signals will only be considered when the MACD Histogram performs a cross (Zero Cross) in the corresponding direction.Display Fair Value Gap (FVG): If enabled, FVG boxes will be drawn on the chart.Display Fibonacci Levels: Calculate and display important Fibonacci levels based on the current market structure.Adapt to Timeframe: All calculations and displays will automatically adjust to the timeframe you are currently using.2. Code BreakdownThis code can be divided into the following main sections:2.1 Inputs (Settings)This section contains variables that you can adjust in the indicator's settings window (click the gear icon next to the indicator's name on the chart).MACD Settings:fast_len: Length of the Fast EMA for MACD (default 12)slow_len: Length of the Slow EMA for MACD (default 26)signal_len: Length of the Signal Line for MACD (default 9) = ta.macd(close, fast_len, slow_len, signal_len): Calculates the MACD Line, Signal Line, and Histogram using the closing price (close) and the specified lengths.is_bullish_macd_cross: Checks if the MACD Histogram crosses above the 0 line (from negative to positive).is_bearish_macd_cross: Checks if the MACD Histogram crosses below the 0 line (from positive to negative).Fear Value Gap (FVG) Settings:isFvgToShow: (Boolean) Enables/disables the display of FVG on the chart.bullishFvgColor: Color for Bullish FVG.bearishFvgColor: Color for Bearish FVG.mitigatedFvgColor: Color for FVG that has been mitigated.fvgHistoryNbr: Number of historical FVG to display.isMitigatedFvgToReduce: (Boolean) Enables/disables reducing the size of FVG when mitigated.Structures (โครงสร้างตลาด) Settings:isStructBodyCandleBreak: (Boolean) If true, the break must occur with the candle body closing above/below the Swing High/Low. If false, a wick break is sufficient.isCurrentStructToShow: (Boolean) Enables/disables the display of the current market structure lines (blue lines in the example image).pivot_len: Lookback length for identifying Pivot points (Swing High/Low). A smaller value captures smaller, more frequent swings; a larger value captures larger, more significant swings.bullishBosColor, bearishBosColor: Colors for bullish/bearish BOS lines and labels.bosLineStyleOption, bosLineWidth: Style (Solid, Dotted, Dashed) and width of BOS lines.bullishChochColor, bearishChochColor: Colors for bullish/bearish CHoCH lines and labels.chochLineStyleOption, chochLineWidth: Style (Solid, Dotted, Dashed) and width of CHoCH lines.currentStructColor, currentStructLineStyleOption, currentStructLineWidth: Color, style, and width of the current market structure lines.structHistoryNbr: Number of historical breaks (Choch/BoS) to display.Structure Fibonacci (from original code):A set of inputs to enable/disable, define values, colors, styles, and widths for various Fibonacci Levels (0.786, 0.705, 0.618, 0.5, 0.382) that will be calculated from the current market structure.2.2 Helper FunctionsgetLineStyle(lineOption): This function converts the selected string input (e.g., "─", "┈", "╌") into a line.style_ format understood by Pine Script.get_structure_highest_bar(lookback): This function attempts to find the Bar Index of the Swing High within the specified lookback period.get_structure_lowest_bar(lookback): This function attempts to find the Bar Index of the Swing Low within the specified lookback period.is_structure_high_broken(...): This function checks if the current price has broken above _structureHigh (Swing High), considering _highStructBreakPrice (closing price or high price depending on isStructBodyCandleBreak setting).FVGDraw(...): This function takes arrays of FVG Boxes, Types, Mitigation Status, and Labels to process and update the status of FVG (e.g., whether it's mitigated) and adjust the size/position of FVG Boxes and Labels on the chart.2.3 Global VariablesThese are variables declared with var, meaning their values are stored and updated on each bar (persists across bars).structureLines, structureLabels: Arrays to store line and label objects for Choch/BoS lines drawn on the chart.fvgBoxes, fvgTypes, fvgLabels, isFvgMitigated: Arrays to store FVG box data and their respective statuses.structureHigh, structureLow: Stores the price of the significant Swing High/Low of the current market structure.structureHighStartIndex, structureLowStartIndex: Stores the Bar Index of the start point of the significant Swing High/Low.structureDirection: Stores the status of the market structure direction (1 = Bullish, 2 = Bearish, 0 = Undefined).fiboXPrice, fiboXStartIndex, fiboXLine, fiboXLabel: Variables to store data and objects for Fibonacci Levels.isBOSAlert, isCHOCHAlert: (Boolean) Used to trigger alerts in TradingView (if alerts are configured).2.4 FVG ProcessingThis section checks the conditions for FVG formation (Bullish FVG: high < low , Bearish FVG: low > high ).If FVG occurs and isFvgToShow is true, a new box and label are created to display the FVG on the chart.fvgBoxes and fvgLabels are managed to limit the number of FVG displayed according to fvgHistoryNbr and remove older FVG.The FVGDraw function is called to update the FVG status (e.g., whether it's mitigated) and adjust its display.2.5 Structures ProcessingInitialization: At bar_index == 0 (the first bar of the chart), structureHigh, structureLow, structureHighStartIndex, and structureLowStartIndex are initialized.Finding Current High/Low: highest, highestBar, lowest, lowestBar are used to find the highest/lowest price and its Bar Index of it in the last 10 bars (or all bars if the chart is shorter than 10 bars).Calculating Structure Max/Min Bar: structureMaxBar and structureMinBar use get_structure_highest_bar and get_structure_lowest_bar functions to find the Bar Index of the true Swing High/Low (not just the highest/lowest in the lookback but a complete Pivot point).Break Price: lowStructBreakPrice and highStructBreakPrice will be the closing price (close) or the Low/High price, depending on the isStructBodyCandleBreak setting.isStuctureLowBroken / isStructureHighBroken: These conditions check if the price has broken structureLow or structureHigh, considering the break price, previous bar prices, and the Bar Index of the structure's starting point.Choch/BoS Logic (Key Integration with MACD):if(isStuctureLowBroken and is_bearish_macd_cross): This is where MACD plays a role. If the price breaks structureLow (bearish signal) AND the MACD Histogram performs a Bearish Zero Cross (is_bearish_macd_cross is true), the indicator will consider it a Choch or BoS.If structureDirection == 1 (previously bullish) or 0 (undefined), it will be labeled "CHoCH" (changing structure direction to bearish).If structureDirection == 2 (already bearish), it will be labeled "BOS" (confirming bearish structure).line.new and label.new are used to draw the line and label.structureDirection will be updated to 1 (Bullish).structureHighStartIndex, structureLowStartIndex, structureHigh, structureLow will be updated to define the new structure.else if(isStructureHighBroken and is_bullish_macd_cross): Similarly for bullish breaks. If the price breaks structureHigh (bullish signal) AND the MACD Histogram performs a Bullish Zero Cross (is_bullish_macd_cross is true), the indicator will consider it a Choch or BoS.If structureDirection == 2 (previously bearish) or 0 (undefined), it will be labeled "CHoCH" (changing structure direction to bullish).If structureDirection == 1 (already bullish), it will be labeled "BOS" (confirming bullish structure).line.new and label.new are used to draw the line and label.structureDirection will be updated to 2 (Bearish).structureHighStartIndex, structureLowStartIndex, structureHigh, structureLow will be updated to define the new structure.Deleting Old Lines: d.delete_line (if the library works) will be called to delete old lines and labels when their number exceeds structHistoryNbr.Updating Structure High/Low (else block): If no break occurs, but the current price is higher than structureHigh or lower than structureLow in the corresponding direction (e.g., still bullish and making a new high), structureHigh or structureLow will be updated to track the highest/lowest point of the current structure.Current Structure Display:If isCurrentStructToShow is true, the indicator draws structureHighLine and structureLowLine to show the boundaries of the current market structure.Fibonacci Display:If isFiboXToShow is true, the indicator calculates and draws various Fibonacci Levels (0.786, 0.705, 0.618, 0.5, 0.382) based on the structureHigh and structureLow of the current market structure.Alerts:alertcondition: Used to set up alerts in TradingView when BOS or CHOCH signals occur.plot(na):plot(na) is an important statement in indicators that do not plot data series directly on the chart (e.g., not plotting EMA or RSI lines) but instead draw objects (Line, Label, Box).Having plot(na) helps Pine Script recognize that this indicator has an output displayed on the chart, even if it's not a regularly plotted series.3. How to UseCopy all the code in the immersive block above.Go to TradingView and open your desired chart.Click on the "Pine Editor" menu at the bottom of the screen.Delete any existing code and paste the copied code in its place.Click the "Add to Chart" button.The indicator will be added to your chart automatically. You can click the gear icon next to the indicator's name on the chart to access the settings window and customize it to your needs.I hope this explanation helps you understand this indicator in detail. If anything is unclear, or you need further adjustments, please let me know.
ENIGMA 369 ENIGMA 369 is a unique Pine Script indicator that combines two complementary trading systems: Break of Structure (BOS) Detection and Session-Based Sniper Signals.
Designed to help traders identify market structure shifts and potential intraday setups, it overlays on the chart to highlight key levels and momentum-driven opportunities. The indicator’s originality lies in its integration of pattern-based BOS analysis (inspired by Smart Money concepts) with time- and trend-filtered Sniper signals, creating a cohesive tool for both swing and intraday trading.
Unlike standalone breakout or scalping indicators, ENIGMA 369 uses:
BOS Logic: A specific two-candle pattern sequence to detect structural shifts, filtered by ATR for significance.
Sniper Logic: Momentum-based signals during high-volatility sessions, optionally aligned with EMA trends.
This synergy allows traders to assess market direction strategically (via BOS) and time entries tactically (via Sniper), all within one indicator.
What It Does
ENIGMA 369 performs two distinct functions:
Break of Structure (BOS) Detection:
Identifies potential support/resistance levels using BullBear (bullish candle followed by bearish) and BearBull (bearish followed by bullish) candle pairs.
Confirms breakouts when price sustains above (bullish) or below (bearish) these levels for a set number of bars.
Draws horizontal lines at confirmed breakout levels, which persist until price crosses a user-defined buffer zone.
Sniper Momentum Signals:
Detects buy/sell setups during user-specified trading sessions (e.g., London/US), based on candle momentum (close relative to midpoint, higher highs/lower lows).
Optionally filters signals with an EMA to align with the broader trend.
Plots lines at the candle’s high/low and 50% wick levels, serving as reference points for entries or stops, removed when price crosses them.
How It Works
ENIGMA 369 relies on price action, market timing, and trend context to generate signals. Here’s how each component operates:
BOS Logic:
Pattern Detection: Scans for two-candle patterns where the first candle is significant (size exceeds an ATR-based threshold) and the second opposes it. For example, a BullBear pair marks the first candle’s high as a potential resistance.
ATR Filter: Uses the Average True Range (default: 14 periods) to ensure the first candle’s range or body is substantial, reducing noise. Users can adjust the ATR multiplier (default: 0.5).
Confirmation: Requires price to close above/below the stored level for a user-defined number of bars (default: 1) to confirm a breakout.
Line Management: Plots green (bullish) or red (bearish) lines at confirmed levels, extending for a set number of bars (default: 10). Lines are deleted if price crosses a buffer (percentage of price or ATR-based, default: 0.1).
Visualization: Optionally highlights pattern candles with transparent green/red backgrounds.
Sniper Logic:
Momentum Signals: Identifies buy signals when a candle closes above its midpoint (high+low)/2 and has a lower low than the prior candle, indicating potential bullish momentum. Sell signals require a close below the midpoint and a higher high.
Session Filter: Limits signals to user-defined London/US session hours (default: 1-23 UTC, adjustable to specific hours like 7-11 UTC for London).
EMA Filter: Optionally uses a 50-period EMA (adjustable) to ensure buy signals occur in uptrends (rising EMA) and sell signals in downtrends (falling EMA).
Line Plotting: Draws blue lines for buy signals (at the low and 50% of the lower wick) and orange lines for sell signals (at the high and 50% of the upper wick). Lines extend right until price crosses them, managed via arrays for efficiency.
Dynamic Removal: Lines are automatically deleted when price breaches them, reflecting changing market conditions.
Why Combine BOS and Sniper?
The integration of BOS and Sniper logic is purposeful and synergistic:
BOS provides a strategic view by identifying structural shifts, helping traders understand the market’s directional bias (e.g., bullish after a confirmed high breakout).
Sniper offers tactical entry points within these trends, focusing on high-volatility sessions where momentum is likely to drive clear moves.
Together, they enable traders to align short-term trades with long-term structure, reducing the risk of trading against the trend. For example, a trader can wait for a bullish BOS confirmation before taking Sniper buy signals, enhancing setup reliability.
This combination is original because it merges Smart Money-inspired BOS detection with a session-based momentum system, a pairing not commonly found in single indicators. It avoids redundant mashups by ensuring each component serves a distinct yet complementary role.
How to Use It
Setup:
Apply ENIGMA 369 to a TradingView chart (Pine Script v5). The chart shown here uses a clean H1 candlestick setup to highlight BOS and Sniper outputs clearly.
Customize settings:
BOS:
ATR Period (default: 14), Min Candle Size (default: 0.5x ATR): Adjust for pattern sensitivity.
Confirmation Bars (default: 1): Set for faster/slower breakouts.
Buffer Type (Percentage/ATR), Buffer Zone Value (default: 0.1): Control line deletion.
Show Lines (default: true), Highlight Candle Pairs (default: false): Enable visuals.
Customize line colors (green/red) and width/length.
Sniper:
London/US Start/End Hours: Set to match your asset’s volatility (e.g., 7-11 UTC for London forex).
EMA Filter (default: true), EMA Period (default: 50): Enable for trend alignment.
Customize line styles (Solid/Dotted/Dashed) and colors (blue/orange) to distinguish from BOS.
Suggested timeframes: H1-H4 for BOS (swing trading), M5-M15 for Sniper (intraday).
Trading with BOS:
Monitor for green (bullish) or red (bearish) lines indicating confirmed breakouts.
Use lines as support/resistance:
Bullish BOS: Consider longs above the line, with stops below the line or buffer.
Bearish BOS: Consider shorts below the line, with stops above the line or buffer.
Line deletion signals a potential reversal or level invalidation.
Trading with Sniper:
Look for blue (buy) or orange (sell) lines during active sessions:
Buy: Enter long at the low or 50% wick line, with stops below the low and targets at resistance.
Sell: Enter short at the high or 50% wick line, with stops above the high and targets at support.
Use EMA filter to avoid counter-trend signals.
Lines disappear when crossed, indicating the setup’s completion or invalidation.
Alerts:
Set alerts for:
“Bullish/Bearish BOS Confirmed” for structural shifts.
“Sniper Buy/Sell Alert” for intraday setups.
Combine with volume, key levels, or news for confirmation.
Best Practices:
Use BOS to confirm trend direction before taking Sniper signals.
Test settings on your asset/timeframe via backtesting.
Apply stop-losses and risk-reward ratios (e.g., 1:2) for discipline.
The chart example shows BOS lines (green/red) and Sniper lines (blue/orange) on an H1 chart, ensuring clarity.
Underlying Concepts
Market Structure (BOS): Identifies turning points where supply/demand shifts, using two-candle patterns to mark significant levels, similar to order block concepts.
Momentum and Timing (Sniper): Targets entries during high-liquidity sessions, using candle midpoint and wick analysis to capture momentum-driven moves.
Trend Context: EMA ensures signals align with the market’s direction, reducing false positives.
Price Action: Both systems rely on raw price behavior, avoiding lagging oscillators for timely signals.
Limitations
BOS may lag in fast markets; reduce confirmation bars for scalping.
Sniper signals depend on session settings; ensure alignment with your asset’s volatility.
Multiple lines may clutter charts; adjust colors/styles for clarity.
Not a standalone system; combine with other analysis for best results.
Disclaimer
ENIGMA 369 is a tool to identify potential trading setups, not a guaranteed profit system. Past performance does not predict future results. Backtest thoroughly and use with proper risk management.
Conclusion
ENIGMA 369 offers a structured approach to trading by combining BOS’s structural insights with Sniper’s precise, session-based entries. Its unique integration makes it suitable for traders seeking to align strategic and tactical decisions. Customize it to your style, test it rigorously, and use it to enhance your market analysis.
Smart Money Concept [TradingFinder] Major OB + FVG + Liquidity🔵 Introduction
"Smart Money" refers to funds under the control of institutional investors, central banks, funds, market makers, and other financial entities. Ordinary people recognize investments made by those who have a deep understanding of market performance and possess information typically inaccessible to regular investors as "Smart Money".
Consequently, when market movements often diverge from expectations, traders identify the footprints of smart money. For example, when a classic pattern forms in the market, traders take short positions. However, the market might move upward instead. They attribute this contradiction to smart money and seek to capitalize on such inconsistencies in their trades.
The "Smart Money Concept" (SMC) is one of the primary styles of technical analysis that falls under the subset of "Price Action". Price action encompasses various subcategories, with one of the most significant being "Supply and Demand", in which SMC is categorized.
The SMC method aims to identify trading opportunities by emphasizing the impact of large traders (Smart Money) on the market, offering specific patterns, techniques, and trading strategies.
🟣 Key Terms of Smart Money Concept (SMC)
• Market Structure (Trend)
• Change of Character (ChoCh)
• Break of Structure (BoS)
• Order Blocks (Supply and Demand)
• Imbalance (IMB)
• Inefficiency (IFC)
• Fair Value Gap (FVG)
• Liquidity
• Premium and Discount
🔵 How Does the "Smart Money Concept Indicator" Work?
🟣 Market Structure
a. Accumulation
b. Market-Up
c. Distribution
d. Market-Down
a) Accumulation Phase : During the accumulation period, typically following a downtrend, smart money enters the market without significantly affecting the pricing trend.
b) Market-Up Phase : In this phase, the price of an asset moves upward from the accumulation range and begins to rise. Usually, the buying by retail investors is the main driver of this trend, and due to positive market sentiment, it continues.
c) Distribution Phase : The distribution phase, unlike the accumulation stage, occurs after an uptrend. In this phase, smart money attempts to exit the market without causing significant price fluctuations.
d) Market-Down Phase : In this stage, the price of an asset moves downward from the distribution phase, initiating a prolonged downtrend. Smart money liquidates all its positions by creating selling pressure, trapping latecomer investors.
The result of these four phases in the market becomes the market trend.
Types of Trends in Financial Markets :
a. Up-Trend
b. Down Trend
c. Range (No Trend)
a) Up-Trend : The market breaks consecutive highs.
b) Down Trend : The market breaks consecutive lows.
c) No Trend or Range : The market oscillates within a range without breaking either highs or lows.
🟣 Change of Character (ChoCh)
The "ChoCh" or "Change of Character" pattern indicates an initial change in order flow in financial markets. This structural change occurs when a major pivot in the opposite direction of the market trend fails. It signals a potential change in the market trend and can serve as a signal for short-term or long-term trend changes in a trading symbol.
🟣 Break of Structure (BoS)
The "BoS" or "Break of Structure" pattern indicates the continuation of the trend in financial markets. This structure forms when, in an uptrend, the price breaks its ceiling or, in a downtrend, the price breaks its floor.
🟣 Order Blocks (Supply and Demand)
Order blocks consist of supply and demand areas where the likelihood of price reversal is higher. There are six order blocks in this indicator, categorized based on their origin and formation reasons.
a. Demand Main Zone, "ChoCh" Origin.
b. Demand Sub Zone, "ChoCh" Origin.
c. Demand All Zone, "BoS" Origin.
d. Supply Main Zone, "ChoCh" Origin.
e. Supply Sub Zone, "ChoCh" Origin.
f. Supply All Zone, "BoS" Origin.
🟣 FVG | Inefficiency | Imbalance
These three terms are almost synonymous. They describe the presence of gaps between consecutive candle shadows. This inefficiency occurs when the market moves rapidly. Primarily, imbalances and these rapid movements stem from the entry of smart money and the imbalance between buyer and seller power. Therefore, identifying these movements is crucial for traders.
These areas are significant because prices often return to fill these gaps or even before they occur to fill price gaps.
🟣 Liquidity
Liquidity zones are areas where there is a likelihood of congestion of stop-loss orders. Liquidity is considered the driving force of the entire market, and market makers may manipulate the market using these zones. However, in many cases, this does not happen because there is insufficient liquidity in some areas.
Types of Liquidity in Financial Markets :
a. Trend Lines
b. Double Tops | Double Bottoms
c. Triple Tops | Triple Bottoms
d. Support Lines | Resistance Lines
All four types of liquidity in this indicator are automatically identified.
🟣 Premium and Discount
Premium and discount zones can assist traders in making better decisions. For instance, they may sell positions in expensive ranges and buy in cheaper ranges. The closer the price is to the major resistance, the more expensive it is, and the closer it is to the major support, the cheaper it is.
🔵 How to Use
🟣 Change of Character (ChoCh) and Break of Structure (BoS)
This indicator detects "ChoCh" and "BoS" in both Minor and Major states. You can turn on the display of these lines by referring to the last part of the settings.
🟣 Order Blocks (Supply and Demand)
Order blocks are Zones where the probability of price reversal is higher. In demand Zones you can buy opportunities and in supply Zones you can check sell opportunities.
The "Refinement" feature allows you to adjust the width of the order block according to your strategy. There are two modes, "Aggressive" and "Defensive," in the "Order Block Refine". The difference between "Aggressive" and "Defensive" lies in the width of the order block.
For risk-averse traders, the "Defensive" mode is suitable as it provides a lower loss limit and a greater reward-to-risk ratio. For risk-taking traders, the "Aggressive" mode is more appropriate. These traders prefer to enter trades at higher prices, and this mode, which has a wider order block width, is more suitable for this group of individuals.
🟣 Fair Value Gap (FVG) | Imbalance (IMB) | Inefficiency (IFC)
In order to identify the "fair value gap" on the chart, it must be analyzed candle by candle. In this process, it is important to pay attention to candles with a large size, and a candle and a candle should be examined before that.
Candles before and after this central candle should have long shadows and their bodies should not overlap with the central candle body. The distance between the shadows of the first and third candles is known as the FVG range.
These areas work in two ways :
• Supply and demand area : In this case, the price reacts to these areas and the trend is reversed.
• Liquidity zone : In this scenario, the price "fills" the zone and then reaches the order block.
Important note : In most cases, the FVG zone of very small width acts as a supply and demand zone, while the zone of significant width acts as a liquidity zone and absorbs price.
When the FVG filter is activated, the FVG regions are filtered based on the specified algorithm.
FVG filter types include the following :
1. Very Aggressive Mode : In addition to the initial condition, an additional condition is considered. For bullish FVG, the maximum price of the last candle must be greater than the maximum price of the middle candle.
Similarly, for a bearish FVG, the minimum price of the last candle must be lower than the minimum price of the middle candle. This mode removes the minimum number of FVGs.
2. Aggressive : In addition to the very aggressive condition, the size of the middle candle is also considered. The size of the center candle should not be small and therefore more FVGs are removed in this case.
3. Defensive : In addition to the conditions of the very aggressive mode, this mode also considers the size of the middle pile, which should be relatively large and make up the majority of the body.
Also, to identify bullish FVGs, the second and third candles must be positive, while for bearish FVGs, the second and third candles must be negative. This mode filters out a significant number of FVGs and keeps only those of good quality.
4. Very Defensive : In addition to the conditions of the defensive mode, in this mode the first and third candles should not be very small-bodied doji candles. This mode filters out most FVGs and only the best quality ones remain.
🟣 Liquidity
These levels are where traders intend to exit their trades. "Market makers" or smart money usually accumulate or distribute their trading positions near these levels, where many retail traders have placed their "stop loss" orders. When liquidity is collected from these losses, the price often reverses.
A "Stop hunt" is a move designed to offset liquidity generated by established stop losses. Banks often use major news events to trigger stop hunts and capture liquidity released into the market. For example, if they intend to execute heavy buy orders, they encourage others to sell through stop-hots.
Consequently, if there is liquidity in the market before reaching the order block area, the validity of that order block is higher. Conversely, if the liquidity is close to the order block, that is, the price reaches the order block before reaching the liquidity limit, the validity of that order block is lower.
🟣 Alert
With the new alert functionality in this indicator, you won't miss any important trading signals. Alerts are activated when the price hits the last order block.
1. It is possible to set alerts for each "symbol" and "time frame". The system will automatically detect both and include them in the warning message.
2. Each alert provides the exact date and time it was triggered. This helps you measure the timeliness of the signal and evaluate its relevance.
3. Alerts include target order block price ranges. The "Proximal" level represents the initial price level strike, while the "Distal" level represents the maximum price gap in the block. These details are included in the warning message.
4. You can customize the alert name through the "Alert Name" entry.
5. Create custom messages for "long" and "short" alerts to be sent with notifications.
🔵 Setting
a. Pivot Period of Order Blocks Detector :
Using this parameter, you can set the zigzag period that is formed based on the pivots.
b. Order Blocks Validity Period (Bar) :
You can set the validity period of each Order Block based on the number of candles that have passed since the origin of the Order Block.
c. Demand Main Zone, "ChoCh" Origin :
You can control the display or not display as well as the color of Demand Main Zone, "ChoCh" Origin.
d. Demand Sub Zone, "ChoCh" Origin :
You can control the display or not display as well as the color of Demand Sub Zone, "ChoCh" Origin.
e. Demand All Zone, "BoS" Origin :
You can control the display or not display as well as the color of Demand All Zone, "BoS" Origin.
f. Supply Main Zone, "ChoCh" Origin :
You can control the display or not display as well as the color of Supply Main Zone, "ChoCh" Origin.
g. Supply Sub Zone, "ChoCh" Origin :
You can control the display or not display as well as the color of Supply Sub Zone, "ChoCh" Origin.
h. Supply All Zone, "BoS" Origin :
You can control the display or not display as well as the color of Supply All Zone, "BoS" Origin.
i. Refine Demand Main : You can choose to be refined or not and also the type of refining.
j. Refine Demand Sub : You can choose to be refined or not and also the type of refining.
k. Refine Demand BoS : You can choose to be refined or not and also the type of refining.
l. Refine Supply Main : You can choose to be refined or not and also the type of refining.
m. Refine Supply Sub : You can choose to be refined or not and also the type of refining.
n. Refine Supply BoS : You can choose to be refined or not and also the type of refining.
o. Show Demand FVG : You can choose to show or not show Demand FVG.
p. Show Supply FVG : You can choose to show or not show Supply FVG
q. FVG Filter : You can choose whether FVG is filtered or not. Also specify the type of filter you want to use.
r. Show Statics High Liquidity Line : Show or not show Statics High Liquidity Line.
s. Show Statics Low Liquidity Line : Show or not show Statics Low Liquidity Line.
t. Show Dynamics High Liquidity Line : Show or not show Dynamics High Liquidity Line.
u. Show Dynamics Low Liquidity Line : Show or not show Dynamics Low Liquidity Line.
v. Statics Period Pivot :
Using this parameter, you can set the Swing period that is formed based on Static Liquidity Lines.
w. Dynamics Period Pivot :
Using this parameter, you can set the Swing period that is formed based Dynamics Liquidity Lines.
x. Statics Liquidity Line Sensitivity :
is a number between 0 and 0.4. Increasing this number decreases the sensitivity of the "Statics Liquidity Line Detection" function and increases the number of lines identified. The default value is 0.3.
y. Dynamics Liquidity Line Sensitivity :
is a number between 0.4 and 1.95. Increasing this number increases the sensitivity of the "Dynamics Liquidity Line Detection" function and decreases the number of lines identified. The default value is 1.
z. Alerts Name : You can customize the alert name using this input and set it to your desired name.
aa. Alert Demand Main Mitigation :
If you want to receive the alert about Demand Main 's mitigation after setting the alerts, leave this tick on. Otherwise, turn it off.
bb. Alert Demand Sub Mitigation :
If you want to receive the alert about Demand Sub's mitigation after setting the alerts, leave this tick on. Otherwise, turn it off.
cc. Alert Demand BoS Mitigation :
If you want to receive the alert about Demand BoS's mitigation after setting the alerts, leave this tick on. Otherwise, turn it off.
dd. Alert Supply Main Mitigation :
If you want to receive the alert about Supply Main's mitigation after setting the alerts, leave this tick on. Otherwise, turn it off.
ee. Alert Supply Sub Mitigation :
If you want to receive the alert about Supply Sub's mitigation after setting the alerts, leave this tick on. Otherwise, turn it off.
ff. Alert Supply BoS Mitigation :
If you want to receive the alert about Supply BoS's mitigation after setting the alerts, leave this tick on. Otherwise, turn it off.
gg. Message Frequency :
This parameter, represented as a string, determines the frequency of announcements. Options include: 'All' (triggers the alert every time the function is called), 'Once Per Bar' (triggers the alert only on the first call within the bar), and 'Once Per Bar Close' (activates the alert only during the final script execution of the real-time bar upon closure). The default setting is 'Once per Bar'.
hh. Show Alert time by Time Zone :
The date, hour, and minute displayed in alert messages can be configured to reflect any chosen time zone. For instance, if you prefer London time, you should input 'UTC+1'. By default, this input is configured to the 'UTC' time zone.
ii. Display More Info : The 'Display More Info' option provides details regarding the price range of the order blocks (Zone Price), along with the date, hour, and minute. If you prefer not to include this information in the alert message, you should set it to 'Off'.
You also have access to display or not to display, choose the Style and Color of all the lines below :
a. Major Bullish "BoS" Lines
b. Major Bearish "BoS" Lines
c. Minor Bullish "BoS" Lines
d. Minor Bearish "BoS" Lines
e. Major Bullish "ChoCh" Lines
f. Major Bearish "ChoCh" Lines
g. Minor Bullish "ChoCh" Lines
h. Minor Bearish "ChoCh" Lines
i. Last Major Support Line
j. Last Major Resistance Line
k. Last Minor Support Line
l. Last Minor Resistance Line
Smart Structure Breaks & Order BlocksOverview (What it does)
The indicator “Smart Structure Breaks & Order Blocks” detects market structure using swing highs and lows, identifies Break of Structure (BOS) events, and automatically draws order blocks (OBs) from the origin candle. These zones extend to the right and change color/outline when mitigated or invalidated. By formalizing and automating part of discretionary analysis, it provides consistent zone recognition.
Main Components
Swing Detection: ta.pivothigh/ta.pivotlow identify confirmed swing points.
BOS Detection: Determines if the recent swing high/low is broken by close (strict mode) or crossover.
OB Creation: After a BOS, the opposite candle (bearish for bullish BOS, bullish for bearish BOS) is used to generate an order block zone.
Zone Management: Limits the number of zones, extends them to the right, and tracks tagged (mitigated) or invalidated states.
Input Parameters
Left/Right Pivot (default 6/6): Number of bars required on each side to confirm a swing. Higher values = smoother swings.
Max Zones (default 4): Maximum zones stored per direction (bull/bear). Oldest zones are overwritten.
Zone Confirmation Lookback (default 3): Ensures OB origin candle validity by checking recent highs/lows.
Show Swing Points (default ON): Displays triangles on swing highs/lows.
Require close for BOS? (default ON): Strict BOS (close required) vs loose BOS (line crossover).
Use candle body for zones (default OFF): Zones drawn from candle body (ON) or wick (OFF).
Signal Definition & Logic
Swing Updates: Latest confirmed pivots update lastHighLevel / lastLowLevel.
BOS (Break of Structure):
Bullish – close breaks last swing high.
Bearish – close breaks last swing low.
Only one valid BOS per swing (avoids duplicates).
OB Detection:
Bullish BOS → previous bearish candle with lowest low forms the OB.
Bearish BOS → previous bullish candle with highest high forms the OB.
Zones: Bull = green, Bear = red, semi-transparent, extended to the right.
Zone States:
Mitigated: Price touches the zone → border highlighted.
Invalidated:
Bull zone → close below → turns red.
Bear zone → close above → turns green.
Chart Appearance
Swing High: red triangle above bar
Swing Low: green triangle below bar
Bull OB: green zone (border highlighted on touch)
Bear OB: red zone (border highlighted on touch)
Invalid Zones: Bull zones turn reddish, Bear zones turn greenish
Practical Use (Trading Assistance)
Trend Following Entries: Buy pullbacks into green OBs in uptrends, sell rallies into red OBs in downtrends.
Focus on First Touch: First mitigation after BOS often has higher reaction probability.
Confluence: Combine with higher timeframe trend, volume, session levels, key price levels (previous highs/lows, VWAP, etc.).
Stops/Targets:
Bull – stop below zone, partial take profit at swing high or resistance.
Bear – stop above zone, partial take profit at swing low or support.
Parameter Tuning (per market/timeframe)
Pivot (6/6 → 4/4/8/8): Lower for scalping (3–5), medium for day trading (5–8), higher for swing trading (8–14). Increase to reduce noise.
Strict Break: ON to reduce false breaks in ranging markets; OFF for earlier signals.
Body Zones: ON for assets with long wicks, OFF for cleaner OBs in liquid instruments.
Zone Confirmation (default 3): Increase for stricter OB origin, fewer zones.
Max Zones (default 4 → 6–10): Increase for higher volatility, decrease to avoid clutter.
Strengths
Standardizes BOS and OB detection that is usually subjective.
Tracks mitigation and invalidation automatically.
Adaptable: allows body/wick zone switching for different instruments.
Limitations
Pivot-based: Signals appear only after pivots confirm (slight lag).
Zones reflect past balance: Can fail after new events (news, earnings, macro data).
Range-heavy markets: More false BOS; consider stricter settings.
Backtesting: This script is for drawing/visual aid; trading rules must be defined separately.
Workflow Example
Identify higher timeframe trend (4H/Daily).
On lower TF (15–60m), wait for BOS and new OB.
Enter on first mitigation with confirmation candle.
Stop beyond zone; targets based on R multiples and swing points.
FAQ
Q: Why are zones invalidated quickly?
A: Flow reversal after BOS. Adjust pivots higher, enable Strict mode, or switch to Body zones to reduce noise.
Q: What does “tagged” mean?
A: Price touched the zone once = mitigated. Implies some orders in that zone may have been filled.
Q: Body or Wick zones?
A: Wick zones are fine in clean markets. For volatile pairs with long wicks, body zones provide more realistic areas.
Customization Tips (Code perspective)
Zone storage: Currently ring buffer ((idx+1) % zoneLimit). Could prioritize keeping unmitigated zones.
Automated testing: Add strategy.entry/exit for rule-based backtests.
Multi-timeframe: Use request.security() for higher timeframe swings/BOS.
Visualization: Add labels for BOS bars, tag zones with IDs, count touches.
Summary
This indicator formalizes the cycle Swing → BOS → OB creation → Mitigation/Invalidation, providing consistent structure analysis and zone tracking. By tuning sensitivity and strictness, and combining with higher timeframe context, it enhances pullback/continuation trading setups. Always combine with proper risk management.
FVG Radar [Mr_Rakun]The FVG Radar indicator is designed to automatically detect Fair Value Gaps (FVG) on your TradingView chart. It visually highlights bullish and bearish gaps with colored boxes and provides alerts when specific conditions are met.
How It Works
Fair Value Gap (FVG) Detection:
The script identifies gaps based on previous price action. A bullish FVG is recognized when there is a gap below a higher low candle, and a bearish FVG when there is a gap above a lower high candle.
Radar Area:
A yellow “Radar Area” box is drawn on the chart using upper and lower bands defined as a percentage above and below the current price. This area helps you visualize where the price is relative to these bands.
Alerts:
Alerts are triggered based on user-defined conditions:
When price crosses half of the gap (if the "Clear FVG When Price Reaches Half" option is enabled).
When price fully fills the gap (if the option is disabled).
The alert will only be activated after waiting a specified number of bars post-gap formation (as set by the "Wait X Bars After FVG Formation" parameter).
Input Parameters
Radar Upper Band (%):
Sets the upper threshold percentage relative to the current price for the radar area.
Radar Lower Band (%):
Sets the lower threshold percentage relative to the current price for the radar area.
Minimum FVG Size (%):
Determines the minimum size (as a percentage) for a gap to be recognized as a valid FVG.
Clear FVG When Price Reaches Half:
If enabled, the FVG will be cleared when the price reaches the midpoint of the gap. If disabled, the entire gap must be filled before it is cleared.
Wait X Bars After FVG Formation:
Specifies the number of bars to wait after an FVG is detected before triggering an alert. This delay helps to avoid premature alerts.
Bullish and Bearish FVG Colors and Opacity:
Customize the appearance of the FVG boxes for bullish (green) and bearish (red) gaps, including the opacity of these visual elements.
How to Use
Add the Indicator:
Load the FVG Radar indicator on your TradingView chart.
Customize Settings:
Adjust the input parameters based on your trading style and the market’s volatility. The radar area settings help you set your own visual reference for price deviations.
Monitor the Chart:
Watch for the colored boxes that represent FVGs. The boxes will display the size of the gap as a percentage.
Respond to Alerts:
When an alert is triggered after the specified number of bars, it indicates that the price has interacted with the gap. Use this information to guide your trading decisions.
Türkçe --------------------------------------------
FVG Radar göstergesi, TradingView grafiğinizde Fair Value Gap (FVG) – yani adil değer boşluklarını – otomatik olarak tespit etmek için tasarlanmıştır. Bu boşluklar, yükseliş ve düşüş boşluklarını farklı renkli kutularla vurgular ve belirli koşullar sağlandığında uyarılar verir.
Nasıl Çalışır
Fair Value Gap (FVG) Tespiti:
Gösterge, önceki fiyat hareketlerine dayalı olarak boşlukları belirler. Yükseliş boşluğu, düşük seviyenin yukarıdaki mumun altındaki boşlukla oluştuğu durumlarda; düşüş boşluğu ise, yüksek seviyenin aşağıdaki mumun üstünde boşluk oluştuğunda tespit edilir.
Radar Alanı:
Grafikte, mevcut fiyata göre belirlenen üst ve alt yüzde bantlarına dayalı olarak sarı renkte “Radar Alanı” kutusu çizilir. Bu alan, fiyatın bu bantlara göre nerede olduğunu görsel olarak anlamanıza yardımcı olur.
Uyarılar:
Kullanıcının belirlediği koşullara göre uyarılar verilir:
Fiyat, boşluğun yarısına ulaştığında (eğer "FVG'nin yarısına ulaştığında temizle" seçeneği etkinse).
Fiyat boşluğu tamamen doldurduğunda (seçenek devre dışı bırakıldığında).
Uyarı, boşluk oluşumundan sonra belirlenen bar sayısı kadar bekledikten sonra tetiklenir ("FVG Oluşumundan Sonra X Bar Bekle" parametresi).
Giriş Parametreleri
Radar Upper Band (%):
Mevcut fiyata göre radar alanı için üst eşik yüzdesini ayarlar.
Radar Lower Band (%):
Mevcut fiyata göre radar alanı için alt eşik yüzdesini ayarlar.
Minimum FVG Size (%):
Bir boşluğun geçerli bir FVG olarak tanınabilmesi için gereken minimum boyutu (yüzde olarak) belirler.
FVG'nin yarısına ulaştığında temizle:
Etkinse, fiyat boşluğun orta noktasına ulaştığında boşluk temizlenir. Devre dışı bırakılırsa, boşluğun tamamen doldurulması gerekir.
FVG Oluşumundan Sonra X Bar Bekle:
Bir FVG tespit edildikten sonra uyarı tetiklenmeden önce beklenmesi gereken bar sayısını belirler. Bu gecikme, erken uyarıların önüne geçmeyi amaçlar.
Yükseliş ve Düşüş FVG Renkleri ve Opaklık:
Yükseliş boşlukları (yeşil) ve düşüş boşlukları (kırmızı) için kutuların görünümünü ve opaklığını özelleştirmenize olanak tanır.
Nasıl Kullanılır
Göstergeyi Ekleyin:
FVG Radar göstergesini TradingView grafiğinize ekleyin.
Ayarları Özelleştirin:
Ticaret tarzınıza ve piyasanın oynaklığına göre giriş parametrelerini ayarlayın. Radar alanı ayarları, fiyat sapmalarını kendi görsel referansınızla tanımlamanıza yardımcı olur.
Grafiği İzleyin:
FVG’leri temsil eden renkli kutuları takip edin. Kutular, boşluğun yüzdelik büyüklüğünü gösterecektir.
Uyarılara Tepki Verin:
Belirlenen bar sayısı sonrasında tetiklenen uyarı, fiyatın boşluk ile etkileşime girdiğini gösterir. Bu bilgiyi, ticaret kararlarınızı yönlendirmek için kullanın.
Market RhythmMarket Rhythm
Overview
If you’re a price-action enthusiast who loves to stay on top of structural shifts in the market, Market Rhythm is here to supercharge your charting experience! This script automatically identifies swing points (HH, LH, HL, LL), detects breaks of structure (BOS), flags changes of character (CHoCH), and offers an optional Trade Tip to guide your next move. It also provides a sleek table summarizing the latest signals so you can confirm momentum or pivot-based ideas at a glance.
What It Does
Swing Detection
Spots the last few pivot highs and lows on your chart.
Labels them as HH (Higher High), LH (Lower High), HL (Higher Low), or LL (Lower Low).
You can display all identified swings or only the most recent ones.
Adaptive Swing Logic
Optionally invert your swing lengths when the script detects a bearish trend, allowing it to adapt pivot detection automatically.
This means if the market flips to a downtrend, pivot detection reconfigures itself in real time.
Break of Structure (BOS)
If price breaks above the previous swing high or below the previous swing low, the script prints a BOS line on the chart.
You can choose whether to confirm breakouts via candle closes or wicks.
CHoCH (Change of Character)
When a BOS flips from bullish to bearish (or vice versa) against the prior direction, it’s renamed CHoCH for added clarity.
Color-coded lines and labels let you instantly see if the market’s “character” is reversing.
Optional Trade Tip
The script can suggest “Look for Long” or “Look for Short” based on your last pivot type and overall trend direction.
This “Trade Tip” is completely optional: enable or disable it in the settings, and the table reconfigures itself automatically.
Information Table
A compact on-chart table gives you an at-a-glance summary of:
Trend – Are we bullish, bearish, or uncertain?
Last BOS – If there’s a recent break of structure, how many bars ago did it happen?
Last CHoCH – If the market made a sudden reversal, how many bars back?
Trade Tip (Optional) – Summarizes whether conditions favor a long or short setup, or if it’s best to wait.
Alerts
Built-in alert conditions let you know when a BOS or CHoCH happens (bullish or bearish).
Turn them on to receive notifications without staring at the screen all day.
Chart Elements
Swing Labels: “HH,” “LH,” “HL,” “LL” near the pivot bars.
BOS & CHoCH Lines: Solid/dashed/dotted lines drawn across your chart, marking the level of structure that got broken.
Color Codes: Bullish signals are tinted in blue-ish tones, bearish signals in pink/purple-ish tones, making it easy to parse your chart visually.
Trade Tip Row: If enabled, instantly highlights “Look for Long” or “Look for Short” in a color-coded cell (blue for long, purple for short, gray if none).
Key Settings
Swing Points
Swing Points Display: Show all pivots, only the last set, or no pivots at all.
Invert Right Swing in Bearish Trend: Automatically swap your “Right Swing Length (High)” and “Right Swing Length (Low)” once the script detects a bearish trend (signaled by the most recent CHoCH).
Left Swing Length / Right Swing Length High/Low: Control how sensitive pivot detection is for highs vs. lows.
Pivot Source: Decide if your pivots are based on candle closes or wicks.
BOS Settings
Show BOS: Hide or reveal the Break of Structure lines entirely.
BOS Confirmation: Candle closes or wicks needed for a “true” breakout.
Line Style / Width / Color: Customize the BOS lines to your liking.
Show Only Last BOS: Show only the freshest BOS or keep historical ones on the chart.
CHoCH Settings
Show CHoCH: Rename the first opposite BOS to CHoCH if desired.
Bullish/Bearish Colors: Pick your favorite color theme for CHoCH lines.
Line Style / Width / Show Only Last CHoCH: Similar customizing options as BOS lines.
Table Settings
Show Table: Toggle the entire summary table on/off.
Position & Text Size: Choose table location (top-left, bottom-right, etc.) and text size (small to huge).
Show 'Trade Tip' row: Decide whether to add a fourth row that suggests potential trade direction. If disabled, the table has only three rows (Trend, Last BOS, and Last CHoCH).
Alerts
Several alert conditions are built in (e.g., “Bullish BOS Alert,” “Bearish BOS Alert,” “CHoCH Alert,” etc.), so you can set notifications for real-time structural shifts.
Why You’ll Love It
Visual Clarity: No more guesswork on which pivot was broken or whether a CHoCH just took place—color-coded lines and labels handle it.
Flexible Pivot Logic: Candle closes vs. wicks, separate right swing lengths for highs and lows, and an adaptive approach if the market goes bearish.
Quick Glance Table: Summaries of the latest signals keep you in the loop without cluttering your chart.
Trade Tip Option: Let the script gently nudge you toward potential bullish or bearish setups—only if you want it to!
Alerts for Everything: BOS and CHoCH can trigger alerts so you never miss a key structural change.
Give Market Rhythm a go, and watch your chart transform into a dynamic story of structure breaks, pivot swings, and potential trade cues. Whether you’re a short-term scalper or a higher-timeframe swing trader, this tool aims to simplify your analysis and keep you laser-focused on what matters.
RunRox - Backtesting System (ASMC)Introducing RunRox - Backtesting System (ASMC), a specially designed backtesting system built on the robust structure of our Advanced SMC indicator. This innovative tool evaluates various Smart Money Concept (SMC) trading setups and serves as an automatic optimizer, displaying which entry and exit points have historically shown the best results. With cutting-edge technology, RunRox - Backtesting System (ASMC) provides you with effective strategies, maximizing your trading potential and taking your trading to the next level
🟠 HOW OUR BACKTESTING SYSTEM WORKS
Our backtesting system for the Advanced SMC (ASMC) indicator is meticulously designed to provide traders with a thorough analysis of their Smart Money Concept (SMC) strategies. Here’s an overview of how it works:
🔸 Advanced SMC Structure
Our ASMC indicator is built upon an enhanced SMC structure that integrates the Institutional Distribution Model (IDM), precise retracements, and five types of order blocks (CHoCH OB, IDM OB, Local OB, BOS OB, Extreme OB). These components allow for a detailed understanding of market dynamics and the identification of key trading opportunities.
🔸 Data Integration and Analysis
1. Historical Data Testing:
Our system tests various entry and exit points using historical market data.
The ASMC indicator is used to simulate trades based on predefined SMC setups, evaluating their effectiveness over a specified time period.
Traders can select different parameters such as entry points, stop-loss, and take-profit levels to see how these setups would have performed historically.
2. Entry and Exit Events:
The backtester can simulate trades based on 12 different entry events, 14 target events, and 14 stop-loss events, providing a comprehensive testing framework.
It allows for testing with multiple combinations of entry and exit strategies, ensuring a robust evaluation of trading setups.
3. Order Block Sensitivity:
The system uses the sensitivity settings from the ASMC indicator to determine the most relevant order blocks and fair value gaps (FVGs) for entry and exit points.
It distinguishes between different types of order blocks, helping traders identify strong institutional zones versus local zones.
🔸 Optimization Capabilities
1. Auto-Optimizer:
The backtester includes an auto-optimizer feature that evaluates various setups to find those with the best historical performance.
It automatically adjusts parameters to identify the most effective strategies for both trend-following and counter-trend trading.
2. Stop Loss and Take Profit Optimization:
It optimizes stop-loss and take-profit levels by testing different settings and identifying those that provided the best historical results.
This helps traders refine their risk management and maximize potential returns.
3. Trailing Stop Optimization:
The system also optimizes trailing stops, ensuring that traders can maximize their profits by adjusting their stops dynamically as the market moves.
🔸 Comprehensive Reporting
1. Performance Metrics:
The backtesting system provides detailed reports, including key performance metrics such as Net Profit, Win Rate, Profit Factor, and Max Drawdown.
These metrics help traders understand the historical performance of their strategies and make data-driven decisions.
2. Flexible Settings:
Traders can adjust initial balance, commission rates, and risk per trade settings to simulate real-world trading conditions.
The system supports testing with different leverage settings, allowing for realistic assessments even with tight stop-loss levels.
🔸 Conclusion
The RunRox Backtesting System (ASMC) is a powerful tool for traders seeking to validate and optimize their SMC strategies. By leveraging historical data and sophisticated optimization algorithms, it provides insights into the most effective setups, enhancing trading performance and decision-making.
🟠 HERE ARE THE AVAILABLE FEATURES
Historical backtesting for any setup – Select any entry point, exit point, and various stop-loss options to see the results of your setup on historical data.
Auto-optimizer for finding the best setups – The indicator displays settings that have shown the best results historically, providing valuable insights.
Auto-optimizer for counter-trend setups – Discover entry and exit points for counter-trend trading based on historical performance.
Auto-optimizer for stop-loss – The indicator shows stop-loss points that have been most effective historically.
Auto-optimizer for take-profit – The indicator identifies take-profit points that have performed well in historical trading data.
Auto-optimizer for trailing stop – The indicator presents trailing stop settings that have shown the best historical results.
And much more within our indicator, all of which we will cover in this post. Next, we will showcase the possible entry points, targets, and stop-loss options available for testing your strategies
🟠 ENTRY SETTINGS
12 Event Triggers for Trade Entry
Extr. ChoCh OB
Extr. ChoCh FVG
ChoCh
ChoCh OB
ChoCh FVG
IDM OB
IDM FVG
BoS FVG
BoS OB
BoS
Extr. BoS FVG
Extr. BoS OB
3 Trade Direction Options
Long Only: Enter long positions only
Short Only: Enter short positions only
Long and Short: Enter both long and short positions based on trend
3 Levels for Order Block/FVG Entries
Beginning: Enter the trade at the first touch of the Order Block/FVG
Middle: Enter the trade when the middle of the Order Block/FVG is reached
End: Enter the trade upon full filling of the Order Block/FVG
*Three levels work only for Order Blocks and FVG. For trade entries based on BOS or CHoCH, these settings do not apply as these parameters are not available for these types of entries
You can choose any combination of trade entries imaginable.
🟠 TARGET SETTINGS
14 Target Events, Including Fixed % and Fixed RR (Risk/Reward):
Fixed - % change in price
Fixed RR - Risk Reward per trade
Extr. ChoCh OB
Extr. ChoCh FVG
ChoCh
ChoCh OB
ChoCh FVG
IDM OB
IDM FVG
BoS FVG
BoS OB
BoS
Extr. BoS FVG
Extr. BoS OB
3 Levels of Order Block/FVG for Target
Beginning: Close the trade at the first touch of your target.
Middle: Close the trade at the midpoint of your chosen target.
End: Close the trade when your target is fully filled.
Customizable Parameters
Easily set your Fixed % and Fixed RR targets with a user-friendly input field. This field works only for the Fixed and Fixed RR entry parameters. When selecting a different entry point, this field is ignored
Choose any combination of target events to suit your trading strategy.
🟠 STOPLOSS SETTINGS
14 Possible StopLoss Events Including Entry Orderblock/FVG
Fixed - Fix the loss on the trade when the price moves by N%
Entry Block
Extr. ChoCh OB
Extr. ChoCh FVG
ChoCh
ChoCh OB
ChoCh FVG
IDM OB
IDM FVG
BoS FVG
BoS OB
BoS
Extr. BoS FVG
Extr. BoS OB
3 Levels for Order Blocks/FVG Exits
Beginning: Exit the trade at the first touch of the order block/FVG.
Middle: Exit the trade at the middle of the order block/FVG.
End: Exit the trade at the full completion of the order block/FVG.
Dedicated Field for Setting Fixed % Value
Set a fixed % value in a dedicated field for the Fixed parameter. This field works only for the Fixed parameter. When selecting other exit parameters, this field is ignored.
🟠 ADDITIONAL SETTINGS
Trailing Stop, %
Set a Trailing Stop as a percentage of your trade to potentially increase profit based on historical data.
Move SL to Breakeven, bars
Move your StopLoss to breakeven after exiting the entry zone for a specified number of bars. This can enhance your potential WinRate based on historical performance.
Skip trade if RR less than
This feature allows you to skip trades where the potential Risk-to-Reward ratio is less than the number set in this field.
🟠 EXAMPLE OF MANUAL SETUP
For example, let me show you how it works on the chart. You select entry parameters, stop loss parameters, and take profit parameters for your trades, and the strategy automatically tests this setup on historical data, allowing you to see the results of this strategy.
In the screenshot above, the parameters were as follows:
Trade Entry: CHoCH OB (Beginning)
Stop Loss: Entry Block
Take Profit: Break of BOS
The indicator will automatically test all possible trades on the chart and display the results for this setup.
🟠 AUTO OPTIMIZATION SETTINGS
In the screenshot above, you can see the optimization table displaying various entry points, exits, and stop-loss settings, along with their historical performance results and other parameters. This feature allows you to identify trading setups that have shown the best historical outcomes.
This functionality will enhance your trading approach, providing you with valuable insights based on historical data. You’ll be aware of the Smart Money Concept settings that have historically worked best for any specific chart and timeframe.
Our indicator includes various optimization options designed to help you find the most effective settings based on historical data. There are 5 optimization modes, each offering unique benefits for every trader
Trend Entry - Optimization of the best settings for trend-following trades. The strategy will enter trades only in the direction of the trend. If the trend is upward, it will look for long entry points and vice versa.
Counter Trend Entry - Finding setups against the trend. If the trend is upward, the script will search for short entry points. This is the opposite of trend entry optimization.
Stop Loss - Identifying stop-loss points that showed the best historical performance for the specific setup you have configured. This helps in finding effective exit points to minimize losses.
Take Profit - Determining targets for the configured setup based on historical performance, helping to identify potentially profitable take profit levels.
Trailing Stop - Finding optimal percentages for the trailing stop function based on historical data, which can potentially increase the profit of your trades.
Ability to set parameters for auto-optimization within a specified range. For example, if you choose FixRR TP from 1 to 10, the indicator will automatically test all possible Risk Reward Take Profit variations from 1 to 10 and display the results for each parameter individually.
Ability to set initial deposit parameters, position commissions, and risk per trade as a fixed percentage or fixed amount. Additionally, you can set the maximum leverage for a trade.
There are times when the stop loss is very close to the entry point, and adhering to the risk per trade values set in the settings may not allow for such a loss in any situation. That’s why we added the ability to set the maximum possible leverage, allowing you to test your trading strategy even with very tight stop losses.
Duplicated Smart Money Structure settings from our Advanced SMC indicator that you can adjust to match your trading style flexibly. All these settings will be taken into account during the optimization process or when manually calculating settings.
Additionally, you can test your strategy based on higher timeframe order blocks. For example, you can test a strategy on a 1-minute chart while displaying order blocks from a 15-minute timeframe. The auto-optimizer will consider all these parameters, including higher timeframe order blocks, and will enter trades based on these order blocks.
Highly flexible dashboard and results optimization settings allow you to display the tables you need and sort results by six different criteria: Profit Factor, Profit, Winrate, Max Drawdown, Wins, and Trades. This enables you to find the exact setup you desire, based on these comprehensive data points.
🟠 ALERT CUSTOMIZATION
With this indicator, you can set up buy and sell alerts based on the test results, allowing you to create a comprehensive trading strategy. This feature enables you to receive real-time signals, making it a powerful tool for implementing your trading strategies.
🟠 STRATEGY PROPERTIES
For backtesting, we used realistic initial data for entering trades, such as:
Starting balance: $1000
Commission: 0.01%
Risk per trade: 1%
To ensure realistic data, we used the above settings. We offer two methods for calculating your order size, and in our case, we used a 1% risk per trade. Here’s what it means:
Risk per trade: This is the maximum loss from your deposit if the trade goes against you. The trade volume can change depending on your stop-loss distance from the entry point. Here’s the formula we use to calculate the possible volume for a single trade:
1. quantity = percentage_risk * balance / loss_per_1_contract (incl. fee)
Then, we calculate the maximum allowed volume based on the specified maximum leverage:
2. max_quantity = maxLeverage * balance / entry_price
3. If quantity < max_quantity, meaning the leverage is less than the maximum allowed, we keep quantity. If quantity > max_quantity, we use max_quantity (the maximum allowed volume according to the set leverage).
This way, depending on the stop-loss distance, the position size can vary and be up to 100% of your deposit, but the loss in each trade will not exceed the set percentage, which in our case is 1% for this backtest. This is a standard risk calculation method based on your stop-loss distance.
🔸 Statistical Significance of Trade Data
In our strategy, you may notice there weren’t enough trades to form statistically significant data. This is inherent to the Smart Money Concept (SMC) strategy, where the focus is not on the number of trades but rather on the risk-to-reward ratio per trade. In SMC strategies, it’s crucial to avoid taking numerous uncertain setups and instead perform a comprehensive analysis of the market situation.
Therefore, our strategy results show fewer than 100 trades. It’s important to understand that this small sample size isn’t statistically significant and shouldn’t be relied upon for strategy analysis. Backtesting with a small number of trades should not be used to draw conclusions about the effectiveness of a strategy.
🔸 Versatile Use Cases
The methods of using this indicator are numerous, ranging from identifying potentially the best-performing order blocks on the chart to creating a comprehensive trading strategy based on the data provided by our indicator. We believe that every trader will find a valuable application for this tool, enhancing their entry and exit points in trades.
Disclaimer
Past performance is not indicative of future results. The results shown by this indicator do not guarantee similar outcomes in the future. Use this tool as part of a comprehensive trading strategy, considering all market conditions and risks.
How to access
For access to this indicator, please read the author’s instructions below this post
[GetSparx] Lacuna Pro⚡ Lacuna Pro – Institutional Liquidity Framework
This indicator is a premium Smart Money Concepts (SMC) trading toolkit designed to help traders identify high-probability entry and exit zones by visualizing real-time market inefficiencies. It combines Fair Value Gaps (FVGs), Break of Structure (BOS), Change of Character (CHoCH), and Supply & Demand Zones into a unified, configurable framework.
Unlike many public indicators that simply "overlay concepts", this indicator implements strict internal validation to filter out noise and provide only institutional-grade levels — making it a valuable execution layer for SMC-based strategies.
🧠 What the Script Does – and Why the Combination Matters
This is more than just a combination of known SMC tools — it's a complete workflow assistant:
-FVGs highlight where liquidity is likely resting due to institutional imbalance.
-BOS & CHoCH define structural context: whether the market is trending or shifting.
-Supply & Demand Zones show where institutions are likely to react.
-Each component works together to create a layered confluence system:
-FVG inside a Demand Zone after a Bullish CHoCH → High-probability Long Setup
-Bearish BOS into a Supply Zone + fresh Bearish FVG → High-probability Short Setup
📘 Core Concepts Explained
Fair Value Gap (FVG)
FVGs occur when price moves with strong momentum and leaves a gap between candles — suggesting inefficiency. Bullish FVGs lie below price; bearish ones above. Price often returns to these levels before continuing.
An FVG is detected when a three-candle sequence reveals a price imbalance:
- Bullish : Candle 2’s low is higher than Candle 1’s high
- Bearish : Candle 2’s high is lower than Candle 1’s low
These setups indicate a sudden burst of institutional momentum, often causing price to revisit the gap for rebalancing.
Break of Structure (BOS)
A BOS signals trend continuation when price breaks the previous swing high or low in the direction of the current trend.
The script uses a 3-bar pivot system to detect local swing highs and lows — a swing high forms when the highest candle is flanked by two lower highs on each side (and vice versa for swing lows).
A BOS is confirmed when price closes beyond the most recent swing point in alignment with the current trend direction.
Change of Character (CHoCH)
A CHoCH signals a potential trend reversal by breaking a structure level in the opposite direction of the prevailing trend.
It is detected when price breaks the most recent opposing swing and simultaneously flips the internal trend state.
CHoCH events always take precedence over BOS to avoid conflicting signals.
The internal trend engine ensures that these structural shifts are valid and not caused by random volatility.
Supply & Demand Zones
These zones mark institutional interest and are formed using precise price action rules — not arbitrary support/resistance.
A valid zone begins when a small-bodied base candle (such as a star or doji) appears at a local swing point. This candle must be followed by a strong impulse candle — either a bullish engulfing (for demand) or bearish breakout (for supply).
- Demand Zone : From the base candle's low to the impulse candle's high
- Supply Zone : From the base candle's high to the impulse candle's low
These zones represent likely institutional entries or exits, often acting as magnets or rejection areas. Once price decisively breaks through a zone, it is automatically removed — keeping the chart clean and relevant.
Zone Detection Logic – When a Zone Is Drawn or Skipped
Below are the precise rules used to determine whether a Supply or Demand Zone is valid and shown on the chart
A Supply or Demand Zone is only drawn if all of the following conditions are met:
-A small-bodied base candle forms at a local high or low (body size below threshold)
-The base candle is followed by a strong impulse candle (engulfing or breakout)
-The impulse direction matches the expected context (e.g., bearish impulse from swing high = Supply)
-The candle wicks do not invalidate the structure (e.g., no long opposing wick that retraces the move)
-The zone meets the minimum size threshold based on % or ATR filter
If any of these criteria are not satisfied, the zone is skipped to avoid false or weak levels.
This ensures only clean, institutional-grade Supply & Demand Zones are shown on the chart.
(e.g. small-bodied star + bullish engulfing at swing low = Demand Zone, or bearish breakout at swing high = Supply Zone).
🔍 Core Functionality & Original Features
1. 📉 Fair Value Gaps (FVGs) – Dynamic, Validated, and Clean
Unlike scripts that draw every gap, this script applies strict quality control to ensure only meaningful FVGs appear:
Minimum Threshold Filtering
Filters out small or noisy gaps by requiring each FVG to exceed a % or ATR-based size threshold. Prevents micro-gap clutter on lower timeframes.
Momentum Candle Verification
Requires a strong middle candle (candle 2) between two extremes. Large opposing wicks invalidate the setup.
Partial Fill Adjustment
When price partially fills a gap, the FVG box automatically shrinks to show only the remaining imbalance. If fully filled, the box is removed.
Multi-Timeframe Overlays
View institutional gaps from 15m, 1H, 4H, or Daily overlaid onto any chart for top-down analysis and entry refinement.
2. 🧱 Structural Shifts – BOS & CHoCH
Structural logic is built around pivot detection with real-time trend state awareness:
Pivot Logic (Customizable Strength)
Local highs/lows are detected using pivot length (default: 3 bars left/right). Breaks are only confirmed if they align with the internal trend state.
BOS = Continuation
Breaks a swing in trend direction (e.g., HL → HH → BOS at previous HH)
CHoCH = Reversal
Breaks a structure against trend (e.g., HH → HL → break of HL = Bearish CHoCH)
Conflict Resolution
If both BOS and CHoCH could trigger, CHoCH takes priority. This avoids false positives and ensures a single, clear structure signal per swing.
Styling & Visibility
All structure lines and labels are customizable — colors, line style (solid/dashed), and which signals to display (BOS/CHoCH/both).
3. 🧠 Supply & Demand Zones – Smart Detection & Maintenance
These zones are generated using strict price action logic, not arbitrary support/resistance lines:
-Formation Conditions
-Small-bodied "base candle" at a local high/low
-Followed by an impulse candle (bullish/bearish engulfing or breakout)
-Zone Bounds
- Demand : From base candle low to impulse high
- Supply : From base candle high to impulse low
Automatic Cleanup
Once price decisively pierces a zone, it’s automatically removed from the chart. This keeps the display relevant and clutter-free.
Multi-Timeframe Zones
Toggle zones from your current timeframe or overlay from 1H, 4H, and Daily — ideal for confluence stacking.
Zone Compression Filtering
Optional compression % ensures overlapping zones are combined logically to reduce redundancy.
🧩 How It Works Together – Practical Usage Flow
This indicator is designed to follow a structured workflow used by institutional-style traders:
Trend Structure
Identify trend using BOS and CHoCH on your timeframe.
Liquidity Zones
Look for supply/demand zones aligning with the structural bias.
Execution Areas
Wait for an unfilled FVG in confluence with the above conditions.
📸 Screenshot Captions
Screenshot 1: CHoCH + Demand Zone + Bullish FVG
📌 Reversal Setup with Confluence
A Bullish CHoCH confirms a structural shift. Price enters a Demand Zone and reacts from an unfilled Bullish FVG, creating a high-probability long opportunity.
Screenshot 2: Bearish BOS + FVG Fill
📌 Trend Continuation Confirmation
Price breaks a swing low, triggering a Bearish BOS. A Bearish FVG forms and price returns to fill it before continuing lower — validating the trend and the gap.
Screenshot 3: Multi-Timeframe Overlay (FVGs from 1H and 4H)
📌 Top-Down Liquidity Mapping
Overlaid 1H and 4H FVGs provide institutional-level insight on lower timeframes. Combined with structure signals, this supports precise entry alignment across timeframes.
As price partially fills a bullish gap, the FVG box auto-adjusts to show only the remaining imbalance. Fully filled zones are automatically removed, keeping the chart clean.
Screenshot 4: Supply Zone Rejection
📌 Institutional Supply in Action
Price enters a Supply Zone formed from a base candle + bearish impulse. A sharp rejection confirms active sell-side interest at this level. Zone opgevuld box verdwijnt
Screenshot 5: Bullish BOS + Internal Trend Logic
📌 Trend Continuation with Structure Awareness
A Higher Low forms, followed by a Higher High, triggering a Bullish BOS. The internal trend engine confirms direction and filters false reversals.
Screenshot 6: Zone Compression Logic
📌 Smart Zone Consolidation
Closely overlapping supply zones are merged using compression logic to prevent clutter. Only the strongest institutional levels remain visible.
⚙ Full Customization Panel
You can configure:
-FVG display per timeframe + color scheme
-BOS/CHoCH styling, label text, and detection toggles
-Zone settings: visibility, compression %, length
-Auto-cleanup behavior for FVGs and zones
🔐 Why Invite-Only?
This indicator contains original logic not available in public indicators, including:
-Momentum-candle verified FVGs
-Real-time partial fill trimming
-Auto-removal of invalidated structure/zones
-Conflict-aware BOS/CHoCH logic
-Multi-timeframe overlays with internal state tracking
-Proprietary compression-based zone filtering
This script is part of a private paid offering. It is not based on reused or repackaged educational code. The logic and structure management are exclusive to this implementation.
⚠ Disclaimer
This tool is for educational and analytical use only. It does not provide financial advice or trading signals. Always use proper risk management and do your own due diligence.
Radi IQ [TradingIQ]Introducing "Radi IQ".
Radi IQ is a comprehensive market structure indicator designed to provide traders with a detailed view of key price levels and market behavior. It combines several analytical methods—including internal and external structure analysis, fair value gaps, order blocks, breaker blocks, rejection blocks, premium discount zones, equal levels, directional liquidity grabs, and trend meters —to help users better understand areas of support and resistance, potential turning points, and liquidity events in the market.
Key Components and Their Functions
Market Structure Analysis
Internal and External Structure : The indicator evaluates market structure on two levels. The internal analysis focuses on immediate price action (e.g., recent support/resistance and swing points), while the external analysis uses a higher timeframe to provide context. This dual approach helps to confirm the strength of key levels by comparing short-term moves with the broader market trend.
Break of Structure (BoS) and Change of Character (CHoCH) : These signals highlight moments when the market shifts its behavior. A BoS indicates that a previous level of support or resistance has been overcome, while a CHoCH signals a change in the market’s character. Both are marked clearly on the chart using distinct color codes.
Break of Structure + (BoS+) and Change of Character + (CHoCH+) : These signals highlight moments when the market shifts its behavior and is confirmed by prior price action. A BoS + indicates that a previous level of support or resistance has been overcome, while price action achieves higher highs and higher lows (resistance break) or lower highs and lower lows (support break). CHoCH + signals a change in the market’s character when supported by prior price action - lower highs for a support break and higher lows for a resistance break.
BoS and CHoCH
The image above shows BoS and CHoCH identified on the price chart, and explains what each signifies.
A Break Of Structure (BoS) occurs when price decisively moves beyond a previously established support or resistance level. It indicates that the current trend or market pattern is being challenged, and the market may be ready to change direction.
A Change of Character (CHoCH) describes a shift in how the market behaves. A CHoCH occurs when, in an uptrend, a previously established support level breaks, or in a downtrend, a previously established resistance level breaks.
This break indicates that the market's typical structure is shifting, suggesting that the current trend may be losing its strength and that a reversal or a new trend could be developing.
CHoCH+
The image above explains CHoCH+ and how it forms, while highlighting an instance where a downside CHoCH+ formed following lower highs.
A Change of Character + (CHoCH+) describes a shift in how the market behaves that is supported by prior price action. For support breaks, price must form lower highs before breaking support.
The image above explains CHoCH+ for resistance breaks, while highlighting an instance where a resistance point broke that was supported by prior price action.
BoS+
The image above explains BoS+ and how it forms, while highlighting an instance where an upside BoS+ formed following higher highs and higher lows.
A BoS+ resistance break requires higher highs and higher lows prior to the resistance point being closed over.
The image above explains BoS+ support break, while highlighting an instance where a downside BoS+ formed following lower highs and lower lows.
A BoS+ support break requires lower highs and lower lows prior to the support point being closed under.
Future BoS and CHoCH
Radi IQ also displays where the next BoS and CHoCH points are located.
The image above shows the feature in action. With this, traders will always know where the next key support/resistance breakpoints are before they actually occur.
Fair Value Gaps (FVG)
The indicator identifies gaps in the price where little or no trading occurred—known as fair value gaps. These gaps can act as temporary support or resistance and may indicate areas where the market is likely to correct. FVGs are displayed with clear color gradients that differentiate between upward and downward gaps.
The image above shows an identified upside FVG. In the image, the identified upside FVG acted as a support point for price.
The image above shows an identified downside FVG. In the image, the identified downside FVG acted as a resistance point for price.
Low Volume FVG
In addition to identifying trading FVGs - Radi IQ can also specifically detect low volume fair value gaps. Ideally, these fair value gaps will form inside a low volume node on a volume profile.
Low volume node FVGs are important because these are areas where very little trading occurred and is confirmable, indicating an imbalance in supply and demand. Since few trades took place there, the market often moves quickly through these zones when revisited, which can lead to rapid price changes. This "gap" in trading activity can serve as a signal for potential reversals or fast moves, offering opportunities to enter or exit positions based on expected market behavior.
The image above shows identified FVGs that formed on low volume.
Large Area FVGs
Radi IQ is also capable of filtering out “inconsequential” FVGs. With this, Radi IQ can be enabled to only mark FVGs that cover a wide price range.
The image above shows the feature enabled, and all identified FVGs formed with a wide price range.
Large Area FVGs and Low Volume FVGs Combined
Traders can also enable Radi IQ to only mark FVGs that form on low volume and have a wide price range - allowing traders to only identify the highest quality FVGs on the chart.
Order Blocks and Premium Discount Zones
Order Blocks: Radi IQ detects areas where large orders have previously been placed by institutional traders. These blocks can act as strong levels of support or resistance, and the indicator marks bullish and bearish order blocks with dedicated colors.
What is an order block?
Order blocks are clusters of orders that institutions have executed to enter or exit a market position. They typically form when there is a period of consolidation before a significant move. For example, the last bullish candle before a strong down move may indicate a supply order block, while the last bearish candle before a sharp rally might be considered a demand order block.
Why They Form:
Institutions don’t trade in small, sporadic amounts; they accumulate or distribute large volumes of an asset. To avoid slippage and minimize market impact, they execute these orders over a zone rather than at a single price point. This creates a recognizable “block” on the chart.
Order Block Identification Types
Strength Score
The “Strength Score” order block detection mode is a TradingIQ proprietary ranking system for identified order blocks.
Purpose
The purpose of the “Strength Score” ranking system is to determine the “strength” or significance of an order block and rate the zone’s likelihood to act as support/resistance when retested in the future.
The scoring system ranks from 0 - 10, with “0” indicating a “weak” score or low likelihood of acting as a key support/resistance level when retested in the future.
A rating of “5” indicates a “moderate” score, indicating that the order block has a moderate likelihood of acting as a key support/resistance level when retested in the future.
A rating of “10” indicates a “strong” score, indicating that the order block has a strong likelihood of acting as a key support/resistance level when retested in the future.
How It Works
The score is calculated by examining the price move following the formation of an order block. The stronger the price move after an order block forms - the higher the Strength Score.
The image above shows a bearish order block with a score of “5” identified on the chart. The order block successfully operates as a resistance point when retested.
The image above shows a bullish order block with a score of “5” identified on the chart. The order block successfully operates as a resistance point when retested.
Volume-Based
The volume-based order block detection method detects traditional order blocks, but goes one step further by identifying the highest concentration point of volume for the bar and drawing the order block around this concentration point.
Key features when using the volume-based order block detection method:
The top of the order block is anchored to the top of the highest volume concentration point of the bar
The bottom of the order block is anchored to the bottom of the highest volume concentration point of the bar
The total volume that went into creation of the order block is displayed on the chart
The total volume of the order block is recorded as a percentage relative to the total volume for all order blocks on the chart
The image above shows the detection method in action.
Breaker Blocks
A breaker block is a specific type of order block that gains significance when price breaks through it and then often retests the level as a new area of support or resistance. Essentially, it’s a zone where, after the initial break, the previous level (which once acted as strong support or resistance) flips roles. For example, in an uptrend, if the price falls below a key support level, that level can become a breaker block and act as resistance if the price tries to move back up. Conversely, in a downtrend, a broken resistance level can serve as new support. Traders monitor breaker blocks because they often mark a shift in market sentiment and can provide potential entry or exit points once the market re-engages with these levels.
The image above shows a breaker block above price acting as resistance.
The image above shows a breaker block below price acting as support.
Rejection Blocks
A rejection block is a price area where the market shows a strong unwillingness to move beyond a certain level. This typically happens when price approaches a specific level but then is quickly rejected, leading to a bounce in the opposite direction. In other words, a rejection block forms when traders' orders create a barrier, causing the price to reverse rather than break through. Traders watch these areas closely, as they often signal a strong concentration of supply or demand that could provide potential entry or exit points for trades.
The image above shows both a verified upside rejection block acting as resistance, and an untested downside rejection block.
Rejection blocks are expected to function as strong support/resistance points when retested in the future.
Premium Discount Zones
Premium Discount Zones : These zones reflect areas where price is trading above (premium) or below (discount) a fair value range. They help traders gauge whether the current market price is relatively high or low compared to historical averages.
Premium Discount Zones account for recent swing highs and lows to calculate a fair value along with discount and premium prices over an intermediate time window.
The image above shows the premium and discount price zones in action.
Equal Levels
The indicator also tracks and highlights equal levels, which occur when the market repeatedly tests the same price levels. Equal levels can reinforce the significance of a support or resistance area and are represented by their own set of color markers.
The image above shows Radi IQ distinguishing equal highs and equal lows.
Equal Highs
When you see two or more highs that are approximately the same, it suggests that the market is repeatedly rejecting attempts to push higher. This signals a strong resistance level where sellers (or stop-hunters) are active.
Equal Lows
Similarly, consecutive lows at the same level indicate strong support, where buyers step in consistently, preventing further decline.
Strong Highs and Lows
Strong High
A strong high is a price level where the market repeatedly fails to push higher. Typically, it’s characterized by:
Rejection: Price approaches the high but then reverses sharply, often leaving long upper wicks on the candlestick chart.
Consolidation: Multiple bars might show highs that are very close in value (often termed "equal highs"), indicating a well-established resistance zone.
Market Sentiment: This pattern suggests that sellers are actively defending that level, preventing further upward movement.
Strong Lows
Conversely, a strong low is a price level where the market repeatedly fails to break lower. It is identified by:
Bounce Back: Price touches the low and then rebounds sharply, often leaving long lower wicks.
Consistency: Multiple lows occur around the same level (sometimes referred to as "equal lows"), marking a solid support area.
Market Sentiment: This indicates that buyers are stepping in at that level, absorbing selling pressure and supporting the price.
The image above shows Radi IQ detecting both a strong high and strong low, while the detected strong low acts as support when retested.
Liquidity Grabs
Liquidity grabs occur when the market temporarily moves to absorb liquidity, often triggering stop-loss orders and leading to rapid price movements. Radi IQ flags these events by identifying conditions where price moves against recent pivots, helping traders spot potential liquidity-related reversals or breakouts.
The image above shows Radi IQ identifying both an upside liquidity grab and a downside liquidity grab.
Upside Liquidity Grab (Bearish)
An upside liquidity grab happens when the price moves above a well-known resistance area or recent high. This move is often short-lived.
Many traders place stop-loss orders or pending buy orders just above resistance levels. Institutional players may intentionally push price upward to trigger these orders, thereby “grabbing” the liquidity available at that level.
Downside Liquidity Grab (Bullish)
A downside liquidity grab is the mirror image: the price briefly dips below a key support level or recent low.
Traders often place stop-loss orders or pending sell orders just below support levels. An intentional drop below this support can trigger these stops, allowing institutional players to capture liquidity.
Multi-Timeframe Analysis and Swings
By using data from different timeframes, Radi IQ offers a broader perspective on market trends. It highlights significant swing highs and swing lows, providing visual cues that indicate the market’s directional bias. This feature assists traders in identifying both short-term opportunities and long-term trends.
The image above shows Radi IQ detecting higher swings and lower swings.
IQ Meters / Fibometer
IQ Meters (Fibometers) are a proprietary TradingIQ tool that allows traders to easily identify the highs and lows of the current trend and where current price is relative to these points.
The image above depicts the IQ Meters—an exclusive TradingIQ tool designed to help traders evaluate trend strength and retracement opportunities.
When the lower timeframe Zig Zag IQ and the higher timeframe Zig Zag IQ are out of sync (i.e., one is uptrending while the other is downtrending, with no active positions), the meters display a neutral color as shown in the image.
The key to using these meters is to identify trend unison and pinpoint key trend retracement entry opportunities. Fibonacci retracement levels for the current trend are interlaced along each meter, and the current price is converted to a retracement ratio of the trend.
These meters can mathematically determine where price stands relative to the larger and smaller trends, aiding in identifying entry opportunities.
The top of each meter indicates the highest price achieved during the current price move.
The bottom of each meter indicates the lowest price achieved during the current price move.
When both the larger and smaller trends are in sync and uptrending, or when a long position is active, the IQ meters turn green, indicating uptrend strength.
When both meters are green, it indicates uptrend strength as both the higher timeframe trend and lower timeframe trend are in unison. Look for price to retrace to key fibonacci retracement levels during this time period.
When both trends are in sync and downtrending, or when a short position is active, the IQ meters turn red, indicating downtrend strength.
When both meters are red, it indicates downtrend strength as both the higher timeframe trend and lower timeframe trend are in unison. Look for price to retrace to key fibonacci retracement levels during this time period.
Summary
Radi IQ serves as a robust, data-driven tool for traders who seek a deeper understanding of market structure. By integrating internal and external analysis, fair value gap detection, order block identification, premium discount zoning, equal level tracking, liquidity grabs and much more into one indicator, it offers a multi-layered view of the market. This helps traders not only recognize potential turning points and areas of market stress but also manage risk more effectively and plan their trades with greater precision. The indicator’s clear visual representation and dynamic updates make it a practical addition to any trader’s toolkit.
TrendPredator ESThe TrendPredator Essential (ES)
Stacey Burke, a seasoned trader and mentor, developed his trading system over the years, drawing insights from influential figures such as George Douglas Taylor, Tony Crabel, Steve Mauro, and Robert Schabacker. His popular system integrates select concepts from these experts into a consistent framework. While powerful, it is highly discretionary, requiring significant real-time analysis, which can be challenging for novice traders.
The TrendPredator ES indicator supports this approach by automating the essential analysis required to trade the system effectively and incorporating a mechanical bias and multi-timeframe concept.
It provides value to traders by significantly reducing the time needed for session preparation and offering relevant chart analysis and signals for live trading through real-time updates and a unique consolidated table format.
The Stacey Burke Master Pattern
Inspired by Taylor’s 3-day cycle and Steve Mauro’s work with “Beat the Market Maker,” Burke’s system views markets as cyclical, driven by the manipulative patterns of market makers. These patterns often trap traders at the extremes of moves above or below significant levels with peak formations, then reverse to utilize their liquidity, initiating the next phase. Breakouts away from these traps often lead to range expansions, as described by Tony Crabel and Robert Schabacker. After multiple consecutive breakouts, especially after the psychological number three, overextension might develop. A break in structure may then lead to reversals or pullbacks. Burke’s system is designed to track these cycles on the daily timeframe and provides signals and trade setups to navigate along them.
Bias Logic and Multi-Timeframe Concept
The indicator covers the basic signals of his system:
- First Red Day (FRD): Bearish break in structure, signalling weak longs in the market.
- First Green Day (FGD): Bullish break in structure signalling weak shorts in the markt.
- Three Days of Longs (3DL): Overextension signalling potential weak longs in the market.
- Three Days of Shorts (3DS): Overextension signalling potential weak shorts in the market.
- Inside Day (ID): Contraction, signalling potential impulsive reversal or range expansion move.
It enhances the original system by introducing:
Structured Bias Logic:
Tracks bias by following how price trades concerning the last previous candle high or low that was hit. For example if the high was hit, we are bullish above and bearish below.
- Bullish state: Breakout (BO), Fakeout Low (FOL)
- Bearish state: Breakdown (BD), Fakeout High (FOH)
Multi-Timeframe Perspective:
- Tracks all signals across H4, H8, D, W, and M timeframes, to look for alignment and follow trends and momentum in a mechanical way.
The indicator monitors the bias and signals of the system across all relevant timeframes and automates the related graphical chart analysis to generate the information needed for the trader to identify key setups. Additional to the SB pattern, the system helps to identify the higher timeframe situation and follow the moves driven by other timeframe traders.
Example: Full Bullish Cycle on the Daily Timeframe with Signals
- The Trap/Peak Formation
The market breaks down from a previous day’s and maybe week’s low—potentially after multiple breakdowns—but fails to move lower and pulls back up to form a peak formation low and closes as a first green day.
Signal: Bullish daily and weekly fakeout low; three consecutive breakdown days (1W Curr FOL, 1D Curr FOL, BO 3S).
- Pullback and Consolidation
The next day pulls further up after first green day signal, potentially consolidates inside the previous day’s range.
Signal: Fakeout low and first green day closing as an inside day (1D Curr IS, Prev FOL, First G).
- Range Expansion/Trend
The following day breaks up through the previous day’s high, launching a range expansion away from the trap.
Signal: Bullish daily breakout of an inside day (1D Curr BO, Prev IS).
- Overextension
After multiple consecutive breakouts, the market reaches a state of overextension, signalling a possible reversal or pullback.
Signal: Three days of breakout longs (1D Curr BO, Prev BO, BO 3L).
Note: This is only one possible scenario; there are many variations and combinations.
Example Chart: Full Bullish Cycle with Correlated Signals
Note: The signals shown along the move are manually added illustrations. The indicator shows these in realtime in the table at the bottom right. This is only one possible scenario; there are many variations and combinations.
Due to the fractal nature of markets, this cycle can be observed across timeframes. The strongest setups show multi-timeframe alignment. For example, a peak formation and potential reversal on the daily timeframe has high probability and follow-through if it also aligns with bearish signals on higher timeframes (e.g., weekly/monthly BD/FOH) and confirmation on lower timeframes (H4/H8 FOH/BD). With this perspective the system enables the trader to follow the trend and momentum and identify rollover points in a very differentiated way.
Detailed Features and Options
1. Historic Highs and Lows
Displays historic highs and lows per timeframe for added context, enabling users to track sequences over time.
Timeframes: H4, H8, D, W, M
Options: Customize for timeframes shown, number of historic candles per timeframe, colors, formats, and labels.
2. Previous High and Low Extensions
Displays extended previous levels (high, low, and close) for each timeframe to assess how price trades relative to these levels.
H4: P4H, P4L, P4C
H8: P8H, P8L, P8C
Daily: PDH, PDL, PDC
Weekly: PWH, PWL, PWC
Monthly: PMH, PML, PMC
Options: Fully customizable for timeframes shown, colors, formats, and labels.
3. Breach Lines
Tracks live market reactions (e.g., breakouts or fakeouts) per timeframe for the last previous high or low that was hit, highlighting these levels originating at the breached candle to indicate bias (color-coded).
Red: Bearish below
Green: Bullish above
H4: 4FOL, 4FOH, 4BO, 4BD
H8: 8FOL, 8FOH, 8BO, 8BD
D: dFOL, dFOH, dBO, dBD
W: wFOL, wFOH, wBO, wBD
M: mFOL, mFOH, mBO, mBD
Options: Fully customizable for timeframes shown, colors, formats, and labels.
4. Multi-Timeframe Table
Provides a real-time view of system signals, including:
Current Timeframe (Curr): Bias states.
- Breakout (green BO): Bullish after breaking above the previous high.
- Fakeout High (red FOH): Bearish after breaking above the previous high but pulling back down.
- Breakdown (red BD): Bearish after breaking below the previous low.
- Fakeout Low (green FOL): Bullish after breaking below the previous low but pulling back up.
- Inside (IS): Price trading neutral inside the previous range, taking the previous bias (color indicates the previous bias).
Previous Timeframe (Prev): Tracks last candle bias state and transitions dynamically.
- Bias for last candle: BO, FOH, BD, FOL in respective colors.
- Inside bar (yellow IS): Indicated as standalone signal.
Note: Also previous timeframes get constantly updated in real time to track the bias state in relation to the level that was hit. This means a BO can still lose the level and become a FOH, and vice versa, and a BD can still become a FOL, and vice versa. This is critical to see for example if traders that are trapped in that timeframe with a FOH or FOL are released. An inside bar stays fixed, though, since no level was hit in that timeframe.
Breakouts (BO): Breakout count 3 longs and 3 shorts.
- 3 Longs (red 3L): Bearish after three breakouts without hitting a previous low.
- 3 Shorts (green 3S): Bullish after three breakdowns without hitting a previous high.
First Countertrend Close (First): Tracks First Red or Green Day.
- First Green (G): After two consecutive red closes.
- First Red (R): After two consecutive green closes.
Options: Customizable font size and label colors.
Overall Options:
Toggle single feature groups on/off.
Customize H8 open/close time as an offset to UTC to be provider independent.
Colour settings for dark or bright backgrounds.
Using the Indicator for Trading
The automated analysis provided by the indicator can be used for thesis generation in preparation for a session as well as for live trading, leveraging the real-time updates. It is recommended to customize the settings accordingly, such as hiding the lower timeframes for thesis generation to keep the charts clean.
1. Setup Identification:
Follow the bias of daily and H8 timeframes. A setup always requires alignment of these.
Setup Types:
- Trend Trade: Trade in alignment with the previous day’s trend.
Example: Price above the previous day’s high → Focus on long setups (dBO, H8 FOL) until overextension or reversal signs appear (H8 BO 3L, First R).
- Reversal Trade: Identify reversal setups when lower timeframes show rollovers after higher timeframe weakness.
Example: Price below the previous day’s high after FOH → Look for reversal signals at the current high of day (H8 FOH, BO 3L, First R).
2. Context Assessment:
Evaluate alignment of higher timeframes (e.g., Month/Week, Week/Day). More alignment → Stronger setups. Conflicting situations → Setups invalidated.
3. Entry Confirmation:
Confirm entries based on H8 and H4 alignment and candle closes (e.g., M15 or M5 close after entering setup zone as confirmation).
Example Chart for Reversal Trade:
1. Setup Identification: FOH continuation after BO 3L overextension, confirmed by H8 FOH, First R.
2. Context Assessment: Month in FOL with bearish First R; Week in BO but bearishly overextended with BO 3L.
3. Entry Confirmation: H4 BD, M5 close.
Further recommendations:
- Higher timeframe context: TPO or volume profile indicators can be used to gain an even better overview.
- Entry confirmation: Momentum indicators like VWAP, Supertrend, or EMA are helpful for increasing precision. Additionally, tracking lower timeframe fakeouts can provide powerful confluence.
- Late session trading: Entries later in the session, such as during the 3rd hour of the NY session, offer better analysis and follow-through on setups.
Limitations:
Data availability using TradingView has its limitations. The indicator leverages only the real-time data available for the specific timeframe being used. This means it cannot access data from timeframes lower than the one displayed on the chart. For example, if you are on a daily chart, it cannot use H8 data. Additionally, on very low timeframes, the historical availability of data might be limited, making higher timeframe signals unreliable.
To address this, the indicator automatically hides the affected columns in these specific situations, preventing false signals.
Disclaimer
This indicator is for educational purposes only and does not guarantee profits.
None of the information provided shall be considered financial advice.
The indicator does not provide final buy or sell signals but highlights zones for potential setups.
Users are fully responsible for their trading decisions and outcomes.
Market Structure Overlay🚀 Market Structure Overlay Indicator 🚀
🔍 Overview
The Market Structure Overlay (MSO) is a sophisticated technical analysis tool created to analyze price action and understand market structure in a more precise way. It identifies Break of Structure (BOS), Market Structure Breaks (MSBs), Equal Highs (EQH), and Equal Lows (EQL) with meticulous precision by utilizing both wicks and closing prices for better accuracy. The MSO is suitable for all trading timeframes, providing traders with the flexibility to observe and trade on any scale, from intraday to long-term trends.
⚙️ How It Works
The MSO uses advanced logic to detect critical price levels that highlight structural changes in the market. It calculates swing highs and lows using user-defined settings, allowing for customization in market structure analysis. The indicator further highlights BOS and MSB levels by leveraging supply and demand detection, offering a comprehensive understanding of trend reversals and continuation points.
✨ Key features include:
📈 Bullish and Bearish BOS/MSB Lines: MSO differentiates between bullish and bearish structural events, which helps traders understand the prevailing trend and identify key pivot points.
🎨 Customizable Appearance: Traders can personalize line styles and colors for BOS/MSB, trendlines and EQH/EQL, making the tool integrate seamlessly into any chart setup.
🔄 Swing Length and Demand Memory Settings: MSO allows users to specify the swing length for BOS lookback and how many historical zones should be stored on the chart, enhancing control over how much data is analyzed visually.
📊 Market Structure Elements Explained
Break of Structure (BOS): A BOS occurs when the price breaks through a previous Higher High (HH) or Lower Low (LL), indicating a continuation of the current trend. It helps confirm the prevailing market direction.
Market Structure Break (MSB): occurs when a Higher Low (HL) or Lower High (LH) is broken, signaling a potential shift in the market trend. This typically marks the beginning of a trend reversal.
Equal Highs (EQH) and Equal Lows (EQL): These levels are areas of liquidity where previous highs or lows are tested again by the market, often signifying areas of accumulation or distribution. EQH and EQL are crucial for recognizing potential liquidity traps.
Trendlines: Trendlines are used to connect successive highs or lows, providing a visual representation of the current direction of the market. They help traders understand trend momentum and potential breakouts.
🔥 Key Features and Benefits
✅ Accurate Market Structure Detection
The Market Structure Overlay identifies Break of Structure (BOS) and Market Structure Breaks (MSB) events that indicate potential trend changes or continuations. The indicator also distinguishes between bullish and bearish market structures using color-coded lines and custom labels, which helps in immediately identifying market dynamics.
📊 Supply and Demand Zones for BOS/MSB Detection
The MSO uses Supply and Demand Zones as part of the detection logic for BOS and MSB. Although these zones are not directly plotted, they play a key role in determining when a significant structural break occurs. This unique approach enhances the accuracy of BOS and MSB identification, as it takes into account areas of accumulation or distribution that often serve as precursors to trend shifts.
🔍 Equal Highs and Lows Detection
The MSO features Equal Highs (EQH) and Equal Lows (EQL) detection, which is a significant indicator for liquidity zones where potential orders might be resting. These areas often trigger key price actions as they get tested or broken.
⚙️ Customizable Settings
Users can customize the indicator’s behavior, including choosing whether to use candle wicks or closing prices, setting swing lengths for identifying key levels, and specifying memory for storing past zones. This flexibility allows traders to adjust the indicator to suit their personal trading strategy and preferences.
⏱️ Multi-Timeframe Highs and Lows
The indicator includes multi-timeframe support for significant highs and lows (daily, weekly, monthly, yearly). This helps traders understand where they are in the larger market context, especially when making decisions during intra-session trading.
🔎 Precise Detection Approach
Unlike traditional market structure indicators that rely heavily on simple pivot points, the MSO employs a more advanced and precise detection mechanism for BOS and MSB. Traditional pivot points typically use a lookback function to identify highs and lows over a fixed period, which can lead to false signals due to market noise or temporary price fluctuations. In contrast, the MSO records and checks swing and interim points against stored memory, only signaling structural breaks after a thorough evaluation. This results in a non-repainting and highly accurate depiction of market structure, minimizing false alerts and providing traders with reliable insights based on price action that remains consistent once confirmed.
🎨 Visualization Options
The MSO uses color-coded BOS and MSB lines to easily differentiate between bullish and bearish scenarios. Users also have options to visualize equal highs/lows (EQH/EQL) to recognize potential liquidity points. A detailed breakdown of Supply and Demand Zones helps traders identify high-probability areas for entries and exits. Additionally, the indicator allows traders to toggle visibility of key elements, including trend lines, labels, and multi-timeframe levels.
📝 Summary
The Market Structure Overlay is an essential tool for understanding price behavior and structural shifts in any financial market. Its use of sophisticated logic to detect structural breaks, coupled with customizable visualizations, allows traders to gain a nuanced view of market dynamics. The supply and demand zones, together with the BOS, MSB, EQH, and EQL labels, provide a strong foundation for both trend-following and reversal trading strategies.
MSO is not just a tool for understanding market direction—it's designed to enhance decision-making by delivering reliable and actionable insights into market structure. This indicator provides a seamless blend of market theory with advanced technical features, making it a valuable asset for serious traders.
📊 Key Visual Examples:
📈 Bullish and Bearish BOS/MSB Lines
📸
🌀 Trendlines
📸
⚠️ Note:
This indicator should be used as part of a broader trading strategy. Always confirm your entries and exits with additional tools and analysis methods. 💡
Sweep2Trade Pro [CHE]Sweep2Trade Pro \ — Liquidity Sweep → Trend → Confirmation
Sweep2Trade Pro \ helps you catch high-probability reversals or continuations that start with a liquidity sweep, align with the T3 trend, and finalize with a structure confirmation (BOS). It’s designed to reduce noise, time your entries, and keep you out of weak, chop-driven signals.
What’s a “sweep”?
A liquidity sweep happens when price briefly breaks a prior swing high/low (where many stops sit), triggers those stops, and then snaps back. This “stop-hunt” creates liquidity for bigger players and often precedes a sharp move in the opposite direction if the break fails, or fuels continuation if structure actually shifts.
What’s a BOS (Break of Structure)?
A BOS is a price action event where the market takes out a recent swing level in the trend’s direction, signaling continuation and confirming that structure has shifted (bullish BOS through a recent swing high, bearish BOS through a recent swing low).
How the indicator works (at a glance)
1. Regime Filter (T3 + R²)
T3 Moving Average: A smoother, faster-responding moving average that aims to reduce lag while filtering noise, so trend direction changes are clearer.
R² (Coefficient of Determination): Measures how “linear” the recent price path is (0→1). Higher values = stronger, cleaner trend; lower values = more chop. Used here to allow trades only when trend quality exceeds a user-set threshold.
2. Sweep Detection
Bullish sweep: price pokes below a prior swing low and closes back above it.
Bearish sweep: price pokes above a prior swing high and closes back below it.
Lookback length is configurable.
3. Sequence Lock (built-in FSM)
The script manages state in phases so you don’t jump the gun:
Phase 1: Sweep detected → wait for T3 to turn in the corresponding direction.
Phase 2: T3 direction confirmed → show “SWEEP OK” and wait for final confirmation.
Trade Signal: Only fires if confirmation arrives before a timeout.
4. Confirmation Layer
BOS via wick or close (you choose),
Strong close toward the signal (top/bottom quartile of the candle),
Optional “close above/below T3” condition.
These checks help avoid weak sweeps that immediately fade.
5. Alerts & Visuals
“SWEEP OK” markers show when the sweep + T3 direction align.
Final BUY/SELL arrows appear only when the confirmation layer passes.
Ready-made alert conditions for automation.
What you can do with it
Time reversals after sweeps: Enter when a stop-hunt fades and structure confirms.
Ride continuations: Use BOS with the T3 trend to pyramid or re-enter with structure on your side.
Filter chop: Let R² gate entries to periods with cleaner directional drift.
Automate: Use the included alerts with your platform or webhook setup.
Inputs (key settings)
Regime Filter
T3 Length / Volume Factor: Controls smoothness and responsiveness. Smaller length → faster, more sensitive; higher volume factor → smoother curve.
R² Lookback & Threshold: Length of the linear fit window and the minimum “trend quality” required. Higher thresholds mean fewer, cleaner signals.
Sweep / Sequence
Swing Lookback: How far back to define the “reference” high/low for sweeps.
Timeout: Maximum bars allowed between phases to keep signals fresh.
Restart timeout on Phase 2: Optional safety so entries don’t go stale.
Confirmation
BOS Lookback: Micro-pivot window for structure breaks.
Wick vs Close BOS: Conservative traders may prefer close.
Require close above/below T3: Tightens confirmation with trend alignment.
Practical guide (quick start)
1. Timeframe & markets: Works across majors, indices, and crypto. Start with 5m–1h intraday or 1h–4h swing; adjust R² threshold upward on noisier pairs.
2. Entry recipe (Long):
Bullish sweep of a prior low → T3 turns up → BOS/strong close.
Optional: enable “close above T3” for extra confirmation.
3. Entry recipe (Short): Mirror the above.
4. Stops: Common choices are just beyond the sweep wick (tighter) or past the BOS invalidation (safer).
5. Targets: Previous structural levels, measured move, or a T3 trail (exit when price closes back through T3).
6. Avoid low-quality contexts: If R² is very low, market is likely ranging erratically—skip or widen filters.
Tips & best practices
Context first: The same sweep means different things in a strong trend vs. flat regime; that’s why the T3+R² filter exists.
BOS choice: Wick-based BOS is earlier but noisier; close-based BOS is slower but cleaner. Tune per market.
Backtest -> Forward test: Validate settings per symbol/timeframe; then paper trade before going live.
Risk: Fixed fractional risk with asymmetric R\:R (e.g., 1:1.5–1:3) generally performs better than “all-in” discretionary sizing.
Behind the scenes (for the curious)
T3 is a multi-stage EMA construction that produces a smooth curve with reduced lag versus simple/standard EMAs.
R² is the square of correlation (0–1). Here it’s used as a moving gauge of how well price aligns to a linear path—our “trend quality” dial.
Stop-hunts / sweeps are a recognized microstructure phenomenon where clustered stops provide the liquidity that fuels the next move.
Disclaimer
No indicator guarantees profits. Sweep2Trade Pro \ is a decision aid; always combine with solid risk management and your own judgment. Backtest, forward test, and size responsibly.
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Enhance your trading precision and confidence 🚀
Happy trading
Chervolino
Contrarian 100 MAPairs nicely with Enhanced-Stock-Ticker-with-50MA-vs-200MA located here:
Description
The Contrarian 100 MA is a sophisticated Pine Script v6 indicator designed for traders seeking to identify key market structure shifts and trend reversals using a combination of a 100-period Simple Moving Average (SMA) envelope and Inner Circle Trader (ICT) Break of Structure (BoS) and Market Structure Shift (MSS) logic. By overlaying a semi-transparent SMA-based shadow on the price chart and plotting bullish and bearish structure signals, this indicator helps traders visualize critical price levels and potential trend changes. It leverages higher timeframe (HTF) pivot points and dynamic logic to adapt to various chart timeframes, making it ideal for swing and contrarian trading strategies. Customizable colors, timeframes, and alert conditions enhance its versatility for manual and automated trading setups.
Key Features
SMA Envelope: Plots a 100-period SMA for high and low prices, creating a semi-transparent (50% opacity) purple shadow to highlight the price range and provide context for price movements.
ICT BoS/MSS Logic: Identifies Break of Structure (BoS) and Market Structure Shift (MSS) signals for both bullish and bearish conditions, based on HTF pivot points.
Dynamic Timeframe Support: Adjusts pivot detection based on user-selected HTF (default: 1D) and chart timeframe (1M, 5M, 15M, 30M, 1H, 4H, 1D), ensuring adaptability across markets.
Visual Signals: Draws dotted lines for BoS (bullish/bearish) and MSS (bullish/bearish) signals at pivot levels, with customizable colors for easy identification.
Contrarian Approach: Signals potential reversals by combining SMA context with ICT structure breaks, ideal for traders looking to capitalize on trend shifts.
Alert Conditions: Supports alerts for bullish/bearish BoS and MSS signals, enabling integration with TradingView’s alert system for automated trading.
Performance Optimization: Uses efficient pivot detection and line management to minimize resource usage while maintaining accuracy.
Technical Details
SMA Calculation:
Computes 100-period SMAs for high (smaHigh) and low (smaLow) prices.
Plots invisible SMAs (fully transparent) and fills the area between them with 50% transparent purple for visual context.
Pivot Detection:
Uses ta.pivothigh and ta.pivotlow to identify HTF swing points, with dynamic lookback periods (rlBars: 5 for daily, 2 for intraday).
Tracks pivot highs (pH, nPh) and lows (pL, nPl) using a custom piv type for price and time.
BoS/MSS Logic:
Bullish BoS: Triggered when price breaks above a pivot high in a bullish trend, drawing a line at the pivot level.
Bearish BoS: Triggered when price breaks below a pivot low in a bearish trend.
Bullish MSS: Occurs when price breaks a pivot high in a bearish trend, signaling a potential trend reversal.
Bearish MSS: Occurs when price breaks a pivot low in a bullish trend.
Lines are drawn using line.new with xloc.bar_time for precise alignment, styled as dotted with customizable colors.
HTF Integration: Fetches HTF close prices and pivot data using request.security with lookahead_on for accurate signal timing.
Line Management: Maintains an array of lines (lin), removing outdated lines when new MSS signals occur to keep the chart clean.
Pivot Reset: Clears broken pivots (e.g., when price exceeds a pivot high or falls below a pivot low) to ensure fresh signal generation.
How to Use
Add to Chart:
Copy the script into TradingView’s Pine Editor and apply it to your chart.
Configure Settings:
SMA Length: Adjust the SMA period (default: 100 bars) to suit your trading style.
Structure Timeframe: Set the HTF for pivot detection (default: 1D).
Chart Timeframe: Select the chart timeframe (1M, 5M, 15M, 30M, 1H, 4H, 1D) to adjust pivot sensitivity.
Colors: Customize bullish/bearish BoS and MSS line colors via input settings.
Interpret Signals:
Bullish BoS: White dotted line (default) at a broken pivot high in a bullish trend, indicating trend continuation.
Bearish BoS: White dotted line at a broken pivot low in a bearish trend.
Bullish MSS: White dotted line at a broken pivot high in a bearish trend, suggesting a reversal to bullish.
Bearish MSS: White dotted line at a broken pivot low in a bullish trend, suggesting a reversal to bearish.
Use the SMA shadow to gauge price position within the recent range.
Set Alerts:
Create alerts for bullish/bearish BoS and MSS signals using TradingView’s alert system.
Customize Visuals:
Adjust line colors or SMA fill transparency via TradingView’s settings for better visibility.
Example Use Cases
Swing Trading: Use MSS signals to enter trades at potential trend reversals, with the SMA envelope confirming price extremes.
Contrarian Trading: Capitalize on BoS and MSS signals to trade against prevailing trends, using the SMA shadow for context.
Automated Trading: Integrate BoS/MSS alerts with trading bots for systematic entries and exits.
Multi-Timeframe Analysis: Combine HTF signals (e.g., 1D) with lower timeframe charts (e.g., 1H) for precise entries.
Notes
Testing: Backtest the indicator on your chosen market and timeframe to validate performance.
Compatibility: Built for Pine Script v6 and tested on TradingView as of June 19, 2025.
Limitations: Signals rely on HTF pivot accuracy, which may lag in fast-moving markets. Adjust rlBars or timeframe for sensitivity.
Optional Enhancements: Consider uncommenting or adding a histogram for SMA divergence (e.g., smaHigh - smaLow) for additional insights.
Acknowledgments
This indicator combines ICT’s market structure concepts with a dynamic SMA envelope to provide a unique contrarian trading tool. Share your feedback or suggestions in the TradingView comments, and happy trading!
Timeframe Titans: Market Structure & MTF Order Blocks🟩 OVERVIEW
A combined market structure and order block indicator. Displays fractals, zigzags, Break Of Structure and Change Of Character lines. Shows order blocks on the chart and a higher timeframe.
Unique features include:
• The structure rules require counter fractals for BOS. This enables us to use more responsive fractal settings without creating excessive noise.
• Structure is strict. After the initial CHoCH there is always one and only one active CHoCH line.
• Order blocks can be filtered by market structure.
• Order blocks are based entirely on candle patterns (which appear to be unique among all the indicators we tested) instead of using pivots or other configurable calculations.
• Order blocks have separate mitigation levels, not merely the edge of the block, and being partially mitigated is a separate logical state.
🟩 WHAT IS MARKET STRUCTURE?
There are many ways to conceptualise and code market structure — the prevailing trend derived from important price levels. All of them start with identifying highs and lows in price, then use breaks of those levels to assign a trend.
This indicator displays the following market structure features:
• Williams Fractals to derive high and low pivots.
• Zigzag lines, which connect highs and lows.
• Break of Structure (BOS) lines, which are formed from the highest high in an *uptrend* or the lowest low in a *downtrend*. A break of a BOS line signals trend continuation.
• Change of Character (CHoCH) lines, which are formed from the highest high in a *downtrend* or the lowest low in an *uptrend*. A break of a CHoCH line signals trend reversal.
• Market structure bias, which is derived from the break of a CHoCH line. If a CHoCH line is broken to the upside, the trend is bullish, and if to the downside, bearish.
(For more details of the market structure features of this indicator, see the FEATURES OF THIS INDICATOR section.)
This definition of market structure implies that:
• There can only ever be one single active BOS line.
• There can only ever be one single active CHoCH line.
• A break of a BOS line creates a new CHoCH line.
• A break of a CHoCH line creates a new bias, a new BOS line, and a new CHoCH line.
• Before we can create a BOS, we need to know the bias, for which we need the CHoCH, for which we need BOS... just one of the chicken-vs-egg difficulties of coding market structure.
To understand how this indicator differs from other market structure indicators, see the COMPARISON WITH OTHER INDICATORS section.
🟩 WHAT ARE ORDER BLOCKS?
Order blocks are candle patterns that appear at highs and lows. The theory is that these areas are where many orders were filled — too many for the order book, causing an imbalance in buyers and sellers. As such, these areas can form support or resistance levels when price returns to them.
This indicator displays the following features related to order blocks:
• Imbalances, also called Fair Value Gaps.
• Order blocks of two different types (Imbalance Block and Standard Order Blocks)
(For more details of the order block features of this indicator, see the FEATURES OF THIS INDICATOR section.)
There are different patterns that can define order blocks, but the common element is that price should move vigorously away from the area after the pattern forms.
To understand how this indicator differs from other order block indicators, see the COMPARISON WITH OTHER INDICATORS section.
🟩 FEATURES OF THIS INDICATOR
Pivots
Shows Williams high and low fractals, with a configurable lookback. The pivots are always calculated, since they are the building block of all other market structure features. The pivot shape display can be turned on or off, and the display customised.
Zigzag
Draws lines between the highs and lows. The lines can be shown or hidden, and the colour and thickness configured.
Break of Structure
BOS lines are always calculated, but can be shown or hidden. The appearance can be customised. BOS lines are drawn from the candle that has the high or low that defines their level. They always extend until they are broken or the bias changes. The BOS lines have an optional, configurable label. When a BOS line is broken, an optional, configurable label is drawn on that bar.
Change of Character
CHoCH lines can be shown, hidden, and customised. CHoCH lines always extend until they are broken or a new CHoCH line is formed. CHoCH lines have optional labels. A different, customisable label is drawn when a CHoCH line is broken.
Market structure bias
Market structure bias is derived from the break of a CHoCH line. If a CHoCH line is broken to the upside, the trend is bullish, and if to the downside, bearish. The background is shaded a configurable colour based on the trend.
Imbalances
Imbalances are drawn in configurable colours. When they are mitigated, you can choose to change the colour, delete them, or leave them.
Order blocks
Two types of imbalance order blocks are displayed: Standard Order Blocks and Imbalance Blocks. They can be shown or hidden, and customised, independently.
Each order block has a mitigation line with configurable colours and style. If price exceeds the mitigation line, the order block is mitigated and is considered inactive.
The order blocks, or their labels, can be deleted when the order block is mitigated. If not deleted, their colour is changed and they no longer extend with each new bar.
Order blocks on the chart timeframe can be shown conditionally within the context of the market structure: you can choose to show:
• Pro-trend order blocks (bearish order blocks that were created in bearish market structure and vice-versa).
• Counter-trend order blocks (bearish order blocks that were created in bullish market structure and vice-versa).
• All order blocks.
Higher timeframe
Imbalances and order blocks can be independently shown and customised on a single higher timeframe. The HTF functions of this indicator do not repaint because they use confirmed data.
You can choose a custom, fixed higher timeframe, or an "Auto" mode where the script automatically chooses the higher timeframe based on the chart timeframe.
Script information messages
An optional table shows information about the script, including configuration problems, such as if a custom HTF is not actually higher than the chart timeframe.
🟩 HOW TO USE
There are very many ways to use market structure and order blocks in trading and we recommend you study extensively, and if possible get a trusted mentor.
Here is a random example we found on the recent GBPUSD chart. In the screenshot below, the left chart is at 30m and the right is at 5m. We've toggled various settings to make the chart clearer for demonstration purposes.
1 — We get a CHoCH break on the higher timeframe. So our bias (if we are trying to trade with the trend) is bearish. Now we look for some other confluence.
2 — Price revisits the top of the range and mitigates an imbalance block. It wicks the CHoCH (resetting it) but does not break it on close. The bearish market structure is thus preserved. For these reasons, we're thinking about a short, and we switch to the 5m chart on the right to find an entry. We've chosen a Custom HTF of 30m to match the left chart and we can see the mitigated HTF order block, marked "30m IB". We can see when price moves definitively out of the order block area to the downside.
3 — A bearish order block is formed and very quickly price comes back into it. We could enter a short here with a stop above the closest relevant fractal.
4 — Another bearish order block forms and price retests it. Another entry. Two previous 5m bullish order blocks at the bottom of the chart act as support. We could potentially close our short here.
5 — Another test of the same block, which was not mitigated the first time. Another potential short entry. As it happens, price makes a massive run lower here, such that we could trail our stop down one ATR above every single high fractal (marked out using manual rays and a public ATR indicator) for a good R:R, but that's not the point.
This is a made-up, retrofitted example with a fairly generic methodology. It's just to show how some of the features of this indicator could be used in trading:
• Market structure can give a bias. It can also mark interesting levels.
• Using multiple timeframes, while more complex, can level up your trading experience.
• Price trading back into order blocks can be a good R:R entry.
Your actual way of trading, your playbook of setups, your knowledge of your strengths and weakness as a trader, is your own.
🟩 LIMITATIONS
This indicator is intended for use on Forex markets, although order blocks and market structure do form on any reasonably liquid asset.
The HTF uses confirmed data, so you need to wait until the HTF bar is closed before the order block can form. Therefore it does not repaint, in the sense that people worry about repainting, of changing data in the past. We use the latest recommended method of fetching HTF data .
The market structure uses live chart data, so structure and order blocks that are created by conditions on an open realtime bar can appear and disappear as the current bar close changes. This is quite normal .
The Williams pivots are by definition only confirmed after a defined number of bars, and like everyone else we plot them offset into the past.
Similarly, we offset order blocks into the past so that they start on the candle that has the high or low that defines the order block, not the candle that created them. For HTF order blocks, we calculate the number of chart bars back assuming a 24-hour market, which gives accurate offsets only on Forex and other symbols that trade close to 24 hours each day.
🟩 COMPARISON WITH OTHER INDICATORS
There are a great number of market structure and order block indicators already published on TradingView. Since there are only a certain number of highs and lows on the chart from which to produce structure and order blocks, they all look somewhat similar. However, this indicator, written entirely from scratch without reference to the code of any other indicators, is unique and original in two kinds of ways: in patterns and in features.
PRECISE PATTERNS
We believe that edge in trading can be found in, amongst other things, precision in analysis. You can't truly trust your backtests if your system is not repeatable, and your system is repeatable only if its definitions are precise.
We trade with this indicator, and our students trade with it as well. Why did we spend months creating a new indicator instead of using one of the many existing ones, most of which are free and open source?
Because they are not quite how we wanted.
The indicator was created from our proprietary structure rules, which are based on the generally accepted understanding of market structure, with some specific tweaks.
To prepare this description (after the indicator is finished), we searched for "Market Structure", "CHoCH", and "SMC" and list below all popular (with over 3K boosts; excluding invite-only) indicators that show market structure with CHoCH (sometimes called MSS). We configured the settings to most closely match how our indicator works, added both indicators to the same chart, and looked for relevant differences.
The purpose of this section is not to try to say that this indicator is better than any other, but just that it is different. This difference is important for us and our students.
Indicator #1
As you can see, the indicator interpreted the first part of the chart as a downtrend, whereas ours interpreted it as an uptrend. The structure is completely different, because our Williams Fractal lookback is 2, and the minimum "Swing Points" value for Indicator #1 is 10. Although this indicator is deservedly popular, it isn't what we can use for the way we trade.
Indicator #2
Setting the "Zigzag Length" to 2 results in wildly different market structure, as shown below. For many fractals, this indicator does not place the zigzag at the highest high or lowest low, as ours does consistently. It does not highlight the trend in any way. It gives many Market Structure Breaks in a short period. Although it's again wildly popular, it doesn't match our way of encoding market structure.
Indicator #3
Again, setting the "Pivot lb" and "Pivot rb" inputs to 2 gives much too sensitive market structure. This is because this indicator does not require, as we do, a counter-fractal to form after a fractal in order to confirm a BOS. We believe that this rule gives less noisy structure while also being responsive. Most indicators attempt to compensate for this by having a much larger lookback period. While this does of course give fewer pivots and less noise, this is simply a different logic and gives different results. Note also that although this indicator correctly defines the first section of the chart as an uptrend, it does not draw a CHoCH line. As discussed above, our definition of market structure means that there should always be one and only one active CHoCH line, and we draw this at the earliest sensible opportunity.
Indicator #4
Again, the lack of any extra pivot confirmation logic means that this indicator creates different structure with the same lookback period. Also note the lack of initial CHoCH.
Indicator #5
The lowest lookback is 3, and so this indicator too gives very different structure.
Indicator #6
Of course, using a lookback of 2 gives different structure with this indicator too. For variety, here we show a lookback of 5, which is the lowest setting that returns significantly less noisy structure. You can see that the main CHoCH at the top of the chart is similar but not at the same place. Increasing the lookback does not ever result in a CHoCH at the same place, because the logic is simply different. When the lookback increases above 10, no CHoCH lines are drawn at the top at all.
Indicator #7
This indicator uses the highest/lowest price for the last 10 bars (fixed), along with some other bar conditions. You can see the resulting structure is quite different. Among other differences, it does not create a BOS at the top of the chart, even in an uptrend, and it does not create an opposing CHoCH when the existing CHoCH is broken.
Indicator #8
With "Custom" market structure and a length of 2, BOS and CHoCH lines are drawn by this indicator but in incongruous places.
Conclusion
Although we only illustrate the top few alternatives, we did check many, many others.
These market structure indicators may produce useful output, but their structure differs significantly from ours. We didn't even need to get into specific examples because the general approaches are so different. It is up to the user to decide which indicator, and which interpretation of market structure, best suits their needs.
ORDER BLOCKS
Continuing, we illustrate differences with the most popular order block indicators, trying to get them to match our order blocks. Note that some of these are also in the previous list as market structure indicators.
Order blocks are always formed at swings when price moves away with force, so they will be sort of the same across all the very many existing order block indicators. We are looking for precision and differentiation, as we did with market structure.
Indicator #1
This indicator does not have ability to display mitigated order blocks, only active ones. The order blocks do not match at all.
Indicator #2
With a period of 2, this indicator marks many of the same order blocks as ours. It doesn't extend the blocks, and doesn't mark them when mitigated. The logic for choosing the order block candle is also clearly different.
Indicator #3
Even with very sensitive settings, this indicator did not create as many order blocks as ours and they are quite different.
Indicator #4
Again you can see the logic for choosing candles and creating blocks is simply different. This indicator has inadequate protection against empty arrays, which causes runtime errors on charts with not much history (not a problem for Forex charts in general, but noticeable on the testing chart).
Indicator #5
We were unable to get the order blocks to extend with this indicator, although it should be possible. Anyway the blocks are wildly different.
Indicator #6
Even with the most sensitive settings, this indicator showed only one order block on our test chart.
Indicator #7
This indicator incorporates complex price action concepts. Nevertheless, the order blocks are very different indeed.
Indicator #8
This indicator forms quite different blocks to ours. It has several interesting settings including a choice of using the candle body or wick.
Indicator #9
We were not able to configure this indicator to produce the same order blocks as ours.
Indicator #10
On very sensitive settings, this indicator matches many of our order blocks, but at the same time many are different.
Conclusion
None of the indicators tested here (nor the many others we looked at previously) use the same logic as ours. The differences are so obvious that we don't have to call out individual blocks and analyse how they differ.
Fundamentally, other indicators seem to use variable precision for pivots in their order block detection calculations. Our order blocks are pure candle patterns with two different rulesets for Standard Order Blocks and Imbalance Order Blocks, and this logic does not change.
Note that our order blocks do not always automatically extend to the swing high or low, nor allow the user to choose the limit of the block, but use unique rules.
In summary, our indicator differs from other order block indicators in terms of fundamental detection logic, candle placement, boundary definition, mitigation levels, and logical states (see below).
UNIQUE COMBINATION OF FEATURES
In comparison to all other indicators we looked at, our indicator:
• Uses order blocks with three states: active, mitigated, and partially mitigated. Our mitigation lines for order blocks are rules-based. If price touches the mitigation line, the order block is considered fully mitigated. If price goes inside the order block but does not hit the mitigation line, it is only partially mitigated. These three states are visually distinguished.
• Has the most extensive visual customisation options of all those we looked at. We believe that being able to customise how you see indicator outputs is very important for reducing mental load while analysing and trading.
• Has a unique feature that combines market structure and order blocks, where the user can choose to show pro-trend order blocks (bullish blocks that are formed in bullish structure and vice-versa) or counter-trend blocks (bullish blocks that are formed in bearish structure and vice-versa).
• Approximates an initial trend bias very quickly, so we can start creatng BOS, CHoCH, etc.
• Requires a counter pivot to confirm a BOS line. This seemingly small logical step actually creates very different structure, as we saw in the comparison section.
• Uses a sophisticated array-based sorting mechanism to preserve the selected number of imbalances, use the rest of the TradingView box allowance for order blocks, and delete excess order block objects (not just drawings) in reverse historical order.
• Hides order block drawings if they are a configurable distance away from price. Magically redraws them if price moves closer.
• Includes an equivalent to the system "Calculated bars" setting for the high timeframe, to avoid unnecessary processing and improve performance.
🟩 CODING CONSIDERATIONS
This indicator consists of all original code written by @SimpleCryptoLife for Timeframe_Titans.
AI was used for the following purposes:
• Autocomplete
• Checking that bullish and bearish logic is parallel in a given function
• Querying the names and locations of variables hundreds of lines away when we forgot what they're called, like an expensive search-and-replace
• Help with debugging (it usually makes up elaborate and wrong ideas though)
It was not used to replace the coder's expertise and creativity, or to "vibe-code" some black-box functionality we didn't understand. We can recommend that you use AI the same way.
═════════════════════════════════════════════════════════════
lib_smcLibrary "lib_smc"
This is an adaptation of LuxAlgo's Smart Money Concepts indicator with numerous changes. Main changes include integration of object based plotting, plenty of performance improvements, live tracking of Order Blocks, integration of volume profiles to refine Order Blocks, and many more.
This is a library for developers, if you want this converted into a working strategy, let me know.
buffer(item, len, force_rotate)
Parameters:
item (float)
len (int)
force_rotate (bool)
buffer(item, len, force_rotate)
Parameters:
item (int)
len (int)
force_rotate (bool)
buffer(item, len, force_rotate)
Parameters:
item (Profile type from robbatt/lib_profile/32)
len (int)
force_rotate (bool)
swings(len)
INTERNAL: detect swing points (HH and LL) in given range
Parameters:
len (simple int) : range to check for new swing points
Returns: values are the price level where and if a new HH or LL was detected, else na
method init(this)
Namespace types: OrderBlockConfig
Parameters:
this (OrderBlockConfig)
method delete(this)
Namespace types: OrderBlock
Parameters:
this (OrderBlock)
method clear_broken(this, broken_buffer)
INTERNAL: delete internal order blocks box coordinates if top/bottom is broken
Namespace types: map
Parameters:
this (map)
broken_buffer (map)
Returns: any_bull_ob_broken, any_bear_ob_broken, broken signals are true if an according order block was broken/mitigated, broken contains the broken block(s)
create_ob(id, mode, start_t, start_i, top, end_t, end_i, bottom, break_price, early_confirmation_price, config, init_plot, force_overlay)
INTERNAL: set internal order block coordinates
Parameters:
id (int)
mode (int) : 1: bullish, -1 bearish block
start_t (int)
start_i (int)
top (float)
end_t (int)
end_i (int)
bottom (float)
break_price (float)
early_confirmation_price (float)
config (OrderBlockConfig)
init_plot (bool)
force_overlay (bool)
Returns: signals are true if an according order block was broken/mitigated
method align_to_profile(block, align_edge, align_break_price)
Namespace types: OrderBlock
Parameters:
block (OrderBlock)
align_edge (bool)
align_break_price (bool)
method create_profile(block, opens, tops, bottoms, closes, values, resolution, vah_pc, val_pc, args, init_calculated, init_plot, force_overlay)
Namespace types: OrderBlock
Parameters:
block (OrderBlock)
opens (array)
tops (array)
bottoms (array)
closes (array)
values (array)
resolution (int)
vah_pc (float)
val_pc (float)
args (ProfileArgs type from robbatt/lib_profile/32)
init_calculated (bool)
init_plot (bool)
force_overlay (bool)
method create_profile(block, resolution, vah_pc, val_pc, args, init_calculated, init_plot, force_overlay)
Namespace types: OrderBlock
Parameters:
block (OrderBlock)
resolution (int)
vah_pc (float)
val_pc (float)
args (ProfileArgs type from robbatt/lib_profile/32)
init_calculated (bool)
init_plot (bool)
force_overlay (bool)
track_obs(swing_len, hh, ll, top, btm, bull_bos_alert, bull_choch_alert, bear_bos_alert, bear_choch_alert, min_block_size, max_block_size, config_bull, config_bear, init_plot, force_overlay, enabled, extend_blocks, clear_broken_buffer_before, align_edge_to_value_area, align_break_price_to_poc, profile_args_bull, profile_args_bear, use_soft_confirm, soft_confirm_offset, use_retracements_with_FVG_out)
Parameters:
swing_len (int)
hh (float)
ll (float)
top (float)
btm (float)
bull_bos_alert (bool)
bull_choch_alert (bool)
bear_bos_alert (bool)
bear_choch_alert (bool)
min_block_size (float)
max_block_size (float)
config_bull (OrderBlockConfig)
config_bear (OrderBlockConfig)
init_plot (bool)
force_overlay (bool)
enabled (bool)
extend_blocks (simple bool)
clear_broken_buffer_before (simple bool)
align_edge_to_value_area (simple bool)
align_break_price_to_poc (simple bool)
profile_args_bull (ProfileArgs type from robbatt/lib_profile/32)
profile_args_bear (ProfileArgs type from robbatt/lib_profile/32)
use_soft_confirm (simple bool)
soft_confirm_offset (float)
use_retracements_with_FVG_out (simple bool)
method draw(this, config, extend_only)
Namespace types: OrderBlock
Parameters:
this (OrderBlock)
config (OrderBlockConfig)
extend_only (bool)
method draw(blocks, config)
INTERNAL: plot order blocks
Namespace types: array
Parameters:
blocks (array)
config (OrderBlockConfig)
method draw(blocks, config)
INTERNAL: plot order blocks
Namespace types: map
Parameters:
blocks (map)
config (OrderBlockConfig)
method cleanup(this, ob_bull, ob_bear)
removes all Profiles that are older than the latest OrderBlock from this profile buffer
Namespace types: array
Parameters:
this (array type from robbatt/lib_profile/32)
ob_bull (OrderBlock)
ob_bear (OrderBlock)
_plot_swing_points(mode, x, y, show_swing_points, linecolor_swings, keep_history, show_latest_swings_levels, trail_x, trail_y, trend)
INTERNAL: plot swing points
Parameters:
mode (int) : 1: bullish, -1 bearish block
x (int) : x-coordingate of swing point to plot (bar_index)
y (float) : y-coordingate of swing point to plot (price)
show_swing_points (bool) : switch to enable/disable plotting of swing point labels
linecolor_swings (color) : color for swing point labels and lates level lines
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
show_latest_swings_levels (bool)
trail_x (int) : x-coordinate for latest swing point (bar_index)
trail_y (float) : y-coordinate for latest swing point (price)
trend (int) : the current trend 1: bullish, -1: bearish, to determine Strong/Weak Low/Highs
_pivot_lvl(mode, trend, hhll_x, hhll, super_hhll, filter_insignificant_internal_breaks)
INTERNAL: detect whether a structural level has been broken and if it was in trend direction (BoS) or against trend direction (ChoCh), also track the latest high and low swing points
Parameters:
mode (simple int) : detect 1: bullish, -1 bearish pivot points
trend (int) : current trend direction
hhll_x (int) : x-coordinate of newly detected hh/ll (bar_index)
hhll (float) : y-coordinate of newly detected hh/ll (price)
super_hhll (float) : level/y-coordinate of superior hhll (if this is an internal structure pivot level)
filter_insignificant_internal_breaks (bool) : if true pivot points / internal structure will be ignored where the wick in trend direction is longer than the opposite (likely to push further in direction of main trend)
Returns: coordinates of internal structure that has been broken (x,y): start of structure, (trail_x, trail_y): tracking hh/ll after structure break, (bos_alert, choch_alert): signal whether a structural level has been broken
_plot_structure(x, y, is_bos, is_choch, line_color, line_style, label_style, label_size, keep_history)
INTERNAL: plot structural breaks (BoS/ChoCh)
Parameters:
x (int) : x-coordinate of newly broken structure (bar_index)
y (float) : y-coordinate of newly broken structure (price)
is_bos (bool) : whether this structural break was in trend direction
is_choch (bool) : whether this structural break was against trend direction
line_color (color) : color for the line connecting the structural level and the breaking candle
line_style (string) : style (line.style_dashed/solid) for the line connecting the structural level and the breaking candle
label_style (string) : style (label.style_label_down/up) for the label above/below the line connecting the structural level and the breaking candle
label_size (string) : size (size.small/tiny) for the label above/below the line connecting the structural level and the breaking candle
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
structure_values(length, super_hh, super_ll, filter_insignificant_internal_breaks)
detect (and plot) structural breaks and the resulting new trend
Parameters:
length (simple int) : lookback period for swing point detection
super_hh (float) : level/y-coordinate of superior hh (for internal structure detection)
super_ll (float) : level/y-coordinate of superior ll (for internal structure detection)
filter_insignificant_internal_breaks (bool) : if true pivot points / internal structure will be ignored where the wick in trend direction is longer than the opposite (likely to push further in direction of main trend)
Returns: trend: direction 1:bullish -1:bearish, (bull_bos_alert, bull_choch_alert, top_x, top_y, trail_up_x, trail_up): whether and which level broke in a bullish direction, trailing high, (bbear_bos_alert, bear_choch_alert, tm_x, btm_y, trail_dn_x, trail_dn): same in bearish direction
structure_plot(trend, bull_bos_alert, bull_choch_alert, top_x, top_y, trail_up_x, trail_up, hh, bear_bos_alert, bear_choch_alert, btm_x, btm_y, trail_dn_x, trail_dn, ll, color_bull, color_bear, show_swing_points, show_latest_swings_levels, show_bos, show_choch, line_style, label_size, keep_history)
detect (and plot) structural breaks and the resulting new trend
Parameters:
trend (int) : crrent trend 1: bullish, -1: bearish
bull_bos_alert (bool) : if there was a bullish bos alert -> plot it
bull_choch_alert (bool) : if there was a bullish choch alert -> plot it
top_x (int) : latest shwing high x
top_y (float) : latest swing high y
trail_up_x (int) : trailing high x
trail_up (float) : trailing high y
hh (float) : if there was a higher high
bear_bos_alert (bool) : if there was a bearish bos alert -> plot it
bear_choch_alert (bool) : if there was a bearish chock alert -> plot it
btm_x (int) : latest swing low x
btm_y (float) : latest swing low y
trail_dn_x (int) : trailing low x
trail_dn (float) : trailing low y
ll (float) : if there was a lower low
color_bull (color) : color for bullish BoS/ChoCh levels
color_bear (color) : color for bearish BoS/ChoCh levels
show_swing_points (bool) : whether to plot swing point labels
show_latest_swings_levels (bool) : whether to track and plot latest swing point levels with lines
show_bos (bool) : whether to plot BoS levels
show_choch (bool) : whether to plot ChoCh levels
line_style (string) : whether to plot BoS levels
label_size (string) : label size of plotted BoS/ChoCh levels
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
structure(length, color_bull, color_bear, super_hh, super_ll, filter_insignificant_internal_breaks, show_swing_points, show_latest_swings_levels, show_bos, show_choch, line_style, label_size, keep_history, enabled)
detect (and plot) structural breaks and the resulting new trend
Parameters:
length (simple int) : lookback period for swing point detection
color_bull (color) : color for bullish BoS/ChoCh levels
color_bear (color) : color for bearish BoS/ChoCh levels
super_hh (float) : level/y-coordinate of superior hh (for internal structure detection)
super_ll (float) : level/y-coordinate of superior ll (for internal structure detection)
filter_insignificant_internal_breaks (bool) : if true pivot points / internal structure will be ignored where the wick in trend direction is longer than the opposite (likely to push further in direction of main trend)
show_swing_points (bool) : whether to plot swing point labels
show_latest_swings_levels (bool) : whether to track and plot latest swing point levels with lines
show_bos (bool) : whether to plot BoS levels
show_choch (bool) : whether to plot ChoCh levels
line_style (string) : whether to plot BoS levels
label_size (string) : label size of plotted BoS/ChoCh levels
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
enabled (bool)
_check_equal_level(mode, len, eq_threshold, enabled)
INTERNAL: detect equal levels (double top/bottom)
Parameters:
mode (int) : detect 1: bullish/high, -1 bearish/low pivot points
len (int) : lookback period for equal level (swing point) detection
eq_threshold (float) : maximum price offset for a level to be considered equal
enabled (bool)
Returns: eq_alert whether an equal level was detected and coordinates of the first and the second level/swing point
_plot_equal_level(show_eq, x1, y1, x2, y2, label_txt, label_style, label_size, line_color, line_style, keep_history)
INTERNAL: plot equal levels (double top/bottom)
Parameters:
show_eq (bool) : whether to plot the level or not
x1 (int) : x-coordinate of the first level / swing point
y1 (float) : y-coordinate of the first level / swing point
x2 (int) : x-coordinate of the second level / swing point
y2 (float) : y-coordinate of the second level / swing point
label_txt (string) : text for the label above/below the line connecting the equal levels
label_style (string) : style (label.style_label_down/up) for the label above/below the line connecting the equal levels
label_size (string) : size (size.tiny) for the label above/below the line connecting the equal levels
line_color (color) : color for the line connecting the equal levels (and it's label)
line_style (string) : style (line.style_dotted) for the line connecting the equal levels
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
equal_levels_values(len, threshold, enabled)
detect (and plot) equal levels (double top/bottom), returns coordinates
Parameters:
len (int) : lookback period for equal level (swing point) detection
threshold (float) : maximum price offset for a level to be considered equal
enabled (bool) : whether detection is enabled
Returns: (eqh_alert, eqh_x1, eqh_y1, eqh_x2, eqh_y2) whether an equal high was detected and coordinates of the first and the second level/swing point, (eql_alert, eql_x1, eql_y1, eql_x2, eql_y2) same for equal lows
equal_levels_plot(eqh_x1, eqh_y1, eqh_x2, eqh_y2, eql_x1, eql_y1, eql_x2, eql_y2, color_eqh, color_eql, show, keep_history)
detect (and plot) equal levels (double top/bottom), returns coordinates
Parameters:
eqh_x1 (int) : coordinates of first point of equal high
eqh_y1 (float) : coordinates of first point of equal high
eqh_x2 (int) : coordinates of second point of equal high
eqh_y2 (float) : coordinates of second point of equal high
eql_x1 (int) : coordinates of first point of equal low
eql_y1 (float) : coordinates of first point of equal low
eql_x2 (int) : coordinates of second point of equal low
eql_y2 (float) : coordinates of second point of equal low
color_eqh (color) : color for the line connecting the equal highs (and it's label)
color_eql (color) : color for the line connecting the equal lows (and it's label)
show (bool) : whether plotting is enabled
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
Returns: (eqh_alert, eqh_x1, eqh_y1, eqh_x2, eqh_y2) whether an equal high was detected and coordinates of the first and the second level/swing point, (eql_alert, eql_x1, eql_y1, eql_x2, eql_y2) same for equal lows
equal_levels(len, threshold, color_eqh, color_eql, enabled, show, keep_history)
detect (and plot) equal levels (double top/bottom)
Parameters:
len (int) : lookback period for equal level (swing point) detection
threshold (float) : maximum price offset for a level to be considered equal
color_eqh (color) : color for the line connecting the equal highs (and it's label)
color_eql (color) : color for the line connecting the equal lows (and it's label)
enabled (bool) : whether detection is enabled
show (bool) : whether plotting is enabled
keep_history (bool) : weater to remove older swing point labels and only keep the most recent
Returns: (eqh_alert) whether an equal high was detected, (eql_alert) same for equal lows
_detect_fvg(mode, enabled, o, h, l, c, filter_insignificant_fvgs, change_tf)
INTERNAL: detect FVG (fair value gap)
Parameters:
mode (int) : detect 1: bullish, -1 bearish gaps
enabled (bool) : whether detection is enabled
o (float) : reference source open
h (float) : reference source high
l (float) : reference source low
c (float) : reference source close
filter_insignificant_fvgs (bool) : whether to calculate and filter small/insignificant gaps
change_tf (bool) : signal when the previous reference timeframe closed, triggers new calculation
Returns: whether a new FVG was detected and its top/mid/bottom levels
_clear_broken_fvg(mode, upper_boxes, lower_boxes)
INTERNAL: clear mitigated FVGs (fair value gaps)
Parameters:
mode (int) : detect 1: bullish, -1 bearish gaps
upper_boxes (array) : array that stores the upper parts of the FVG boxes
lower_boxes (array) : array that stores the lower parts of the FVG boxes
_plot_fvg(mode, show, top, mid, btm, border_color, extend_box)
INTERNAL: plot (and clear broken) FVG (fair value gap)
Parameters:
mode (int) : plot 1: bullish, -1 bearish gap
show (bool) : whether plotting is enabled
top (float) : top level of fvg
mid (float) : center level of fvg
btm (float) : bottom level of fvg
border_color (color) : color for the FVG box
extend_box (int) : how many bars into the future the FVG box should be extended after detection
fvgs_values(o, h, l, c, filter_insignificant_fvgs, change_tf, enabled)
detect (and plot / clear broken) FVGs (fair value gaps), and return alerts and level values
Parameters:
o (float) : reference source open
h (float) : reference source high
l (float) : reference source low
c (float) : reference source close
filter_insignificant_fvgs (bool) : whether to calculate and filter small/insignificant gaps
change_tf (bool) : signal when the previous reference timeframe closed, triggers new calculation
enabled (bool) : whether detection is enabled
Returns: (bullish_fvg_alert, bull_top, bull_mid, bull_btm): whether a new bullish FVG was detected and its top/mid/bottom levels, (bearish_fvg_alert, bear_top, bear_mid, bear_btm): same for bearish FVGs
fvgs_plot(bullish_fvg_alert, bull_top, bull_mid, bull_btm, bearish_fvg_alert, bear_top, bear_mid, bear_btm, color_bull, color_bear, extend_box, show)
Parameters:
bullish_fvg_alert (bool)
bull_top (float)
bull_mid (float)
bull_btm (float)
bearish_fvg_alert (bool)
bear_top (float)
bear_mid (float)
bear_btm (float)
color_bull (color) : color for bullish FVG boxes
color_bear (color) : color for bearish FVG boxes
extend_box (int) : how many bars into the future the FVG box should be extended after detection
show (bool) : whether plotting is enabled
Returns: (bullish_fvg_alert, bull_top, bull_mid, bull_btm): whether a new bullish FVG was detected and its top/mid/bottom levels, (bearish_fvg_alert, bear_top, bear_mid, bear_btm): same for bearish FVGs
fvgs(o, h, l, c, filter_insignificant_fvgs, change_tf, color_bull, color_bear, extend_box, enabled, show)
detect (and plot / clear broken) FVGs (fair value gaps)
Parameters:
o (float) : reference source open
h (float) : reference source high
l (float) : reference source low
c (float) : reference source close
filter_insignificant_fvgs (bool) : whether to calculate and filter small/insignificant gaps
change_tf (bool) : signal when the previous reference timeframe closed, triggers new calculation
color_bull (color) : color for bullish FVG boxes
color_bear (color) : color for bearish FVG boxes
extend_box (int) : how many bars into the future the FVG box should be extended after detection
enabled (bool) : whether detection is enabled
show (bool) : whether plotting is enabled
Returns: (bullish_fvg_alert): whether a new bullish FVG was detected, (bearish_fvg_alert): same for bearish FVGs
OrderBlock
Fields:
id (series int)
dir (series int)
left_top (chart.point)
right_bottom (chart.point)
break_price (series float)
early_confirmation_price (series float)
ltf_high (array)
ltf_low (array)
ltf_volume (array)
plot (Box type from robbatt/lib_plot_objects/49)
profile (Profile type from robbatt/lib_profile/32)
trailing (series bool)
extending (series bool)
awaiting_confirmation (series bool)
touched_break_price_before_confirmation (series bool)
soft_confirmed (series bool)
has_fvg_out (series bool)
hidden (series bool)
broken (series bool)
OrderBlockConfig
Fields:
show (series bool)
show_last (series int)
show_id (series bool)
show_profile (series bool)
args (BoxArgs type from robbatt/lib_plot_objects/49)
txt (series string)
txt_args (BoxTextArgs type from robbatt/lib_plot_objects/49)
delete_when_broken (series bool)
broken_args (BoxArgs type from robbatt/lib_plot_objects/49)
broken_txt (series string)
broken_txt_args (BoxTextArgs type from robbatt/lib_plot_objects/49)
broken_profile_args (ProfileArgs type from robbatt/lib_profile/32)
use_profile (series bool)
profile_args (ProfileArgs type from robbatt/lib_profile/32)
Smart Money Concepts (SMC)Introductions:
Before explaining the functions of this indicator to you, we need to talk about what theoretical knowledge we need to have. Many different price approaches have been developed over the decades with different analysis methods and are still evolving. Some theories used in classical trend analysis methods are interpreted or blended with different perspectives over time and we try to make more successful analyses by having a consistent market reading strategy. While analyzing the classical market structure with the price action method, some issues that are missing and do not fit into place are brought to light with a higher level analysis method known as the smart money concept.
As a result of the research and developments we have done on this subject from many different sources for a long time, I personally think that the most efficient and logical concept is the smart money concept. Of course, no matter which method we use, acting within a risk management and remaining strictly loyal to our conditions should be our first priority so that we can talk about sustainable success in the market. In light of all this, we decided to make an indicator of this concept, which we believe is consistent.
In order to analyze the market structure correctly, we must first draw fractal structures and interpret them correctly. Because the market consists of fractal structures. Regardless of the technique, if we cannot draw fractals correctly or if we make an incorrect interpretation while determining them, our market structure analysis may also be incorrect.
Instead of manually identifying fractal structures, script writers often choose the following method for ease of use; They leave the number of candles to the user's choice, detect the highest and lowest points among x number of candles, and draw fractal structures accordingly, but in fact this is not an accurate detection method. In the visual I have prepared below, you can see how the correct fractal structures should be drawn. Fractal structures should be made based on the previous and next candle levels, not from a certain group of candles.
To identify market structures, we make an interpretation based on these fractal movements.
While classic market structure analysis with traditional price action follows a relatively simpler path as shown in the example below, this situation is a bit more detailed in the smart money concepts.
To explain the situation in the smart money concept in an easily understandable way, it is as follows; imagine an uptrend that progresses by creating levels HH and HL, when the price creates a new HL, we call this point as inducement and we move this level up as each new HL is formed. When drawing structures in this way, when the price falls below the inducement level, the peak is confirmed. To explain it with a different approach, the price must first get liquidity from these last rising bottoms in order to make a break of structure (BOS). The break of structure occurs when the price passes the approved peak. When BOS occurs, the lowest point between this point and the previous peak is defined as the Swing Low and this is the level that needs to be protected in uptrend. When BOS occurs, the last HL point that made this BOS is also defined as inducement and it continues to move as new HL is formed until the new peak is confirmed. If the price somehow "closes" below the Swing Low point that needs to be protected, CHOCH (change of character) has occurred and the trend direction has changed. After CHOCH, we start applying the same logic for the downtrend, the last LH peak formed after is defined as inducement and as the fractal structure continues downward, this level is also carried as the inducement level until the Swing Low level is determined. An important note is; In order for BOS and CHOCH to be valid, "a closing must definitely occur". If it remains in the form of a wick, we call it a liquidity sweep and the end point of this wick is updated as the point where we need to look for a closing in order to be able to say that the BOS or CHOCH level is determined. By the way, We call these liquidity sweep points as "x" in the indicator.
It may be easier to explain this topic with a few sample images that I have shared below.
The thing to consider in the smart money concept is that if you are going to take a long trade in an uptrend, you should wait for the price to fall below the inducement level or if you are going to take a short trade in a downtrend, you should wait for the price to rise above the inducement level and only then look for suitable structures, order flows, order blocks, price gaps and other structures before this are considered traps in this concept. I have some strategies that I personally apply, but since these are my personal preferences, I do not find it right to share them here in order not to affect your opinions, but I am basically careful to act as I stated above.
While preparing this script, we paid attention to the fact that it can be interpreted with a real human eye, provides ease at the speed of machine language and can work extremely flawlessly.
From the first moment we started preparing the script, we went through a long and seriously laborious preparation process that lasted months until now, which we happily share.
We brought this code to life by putting on the table almost everything the user may want in terms of both flawlessly fulfilling the conditions specified by the concept and convenience.
If we touch on the function of the code in order, our code finds the following;
It perfectly identifies the fractals that form the basis of the market structure, within the framework of the rules that I mentioned above, we taught to the script.
According to smart money concepts, as I explained in detail above, it provides great convenience in this regard by skillfully identifying the direction of the market in the time period you are in, rather than traditional methods.
In addition to identifying the direction of the market, it also detects the direction changes taking place in the internal structure. Indicator tries to detect even the slightest direction changes by making a stricter interpretation while determining the trend and bottom-top points in the internal structure. Theoretically, it determines the top point in a downward fractal breakout, and marks the bottom point in an upward fractal breakout.
In this context, it also uniquely identifies the candle flow direction and we can observe it on the table. I explained this issue in the first image about fractal determination, you can read that part again.
When you identify swing structures correctly, you will also determine the area you need to focus on, and we have also included this in the script.
Another one of our favorite features on the chart is that it can show active swing areas live by following the BOS, CHOCH and Inducement lines. So, I believe that this gives it a more professional appearance.
In the light of all these functions, it provides great ease of use while presenting data on the direction of the market in a table not only in the current time frame but also in 6 different time frames that the user can choose according to his/her preference, including seconds timeframes (1 sec., 5 sec., 15 sec., 30 sec. etc.)
In order to speed up the user, it instantly informs the selected parity and all structural changes (Bos, Choch, Inducement, Liquidity Sweeps etc.) that occur on the market structure of this timeframe by setting a single alarm.
In the settings window, you will find the following settings that we have personalized for you:
Main Options;
Fractal Lines box: You can check this box to see whether the fractals that form the basic interpretation structure of the indicator are visible or not.
Swing Lines box: You can use this box to turn on or off the Bos, Choch, Inducement and Liquidity Sweeps lines, which are the main elements of the market structure.
Internal Structures box: You can check this box to observe the H and L points in the internal structure of the graph and therefore the direction in the internal structure.
Live Bos / Choch / Inducement Lines box: You can turn on / off the visibility of the lines belonging to the current and active Bos, Choch and Inducement levels on the chart.
Range Lines box: You can use it to turn on / off the visibility of range lines drawn between the active Swing high and Swing low points on the chart.
Multitimeframe Tables box: It allows you to open and close the table where you can observe the main trend direction of the current parity on the screen, its internal structure and the candle flow direction in 6 different time frames.
Fractal Settings;
In this section, you can choose the colors, style and thickness of the fractal lines as you wish.
Swing Settings;
In this section you can choose the colors of the Swing High and Swing Low points, their shape and size.
Likewise, you can choose the colors, line style, thickness and text size of Bos and Choch lines for bullish and bearish situations.
There are also settings where you can choose the colors, style, line thickness and text size of the Liquidity Sweep and Inducement lines.
Internal Swing Settings;
In this section, you can determine the colors of the High and Low points detected in the internal structure and select the label size, style and thickness of the direction change lines.
Live BOS / CHOCH / IDM Lines;
In this section, you can select the colors, label sizes, line style and thickness of the bos, choch and inducement lines that show the important levels followed in the current status of the chart.
Range Settings;
As mentioned above, you can choose the color, style, thickness of the range lines drawn between the active swing high and swing low points and the size of the price tags of these levels.
Multitimeframe Table Settings;
In this section, there are settings boxes for 6 selectable timeframes, 9 different position alternatives where you can change the position of the table, and a section where you can find 2 different options to express the directions in the table. In addition to these, you will also be able to choose the background color of the table and the color of the text used to express the directions in the table.
We hope that this script will reach a wide audience by becoming a tool that will be used with pleasure and indispensable, while providing convenience to all users, as we have dreamed of and expected from the first moment we started writing it.
DISCLAIMER: No sharing, copying, reselling, modifying, or any other forms of use are authorized for the documents, script / strategy, and the information published with them. This informational planning script / strategy is strictly for individual use and educational purposes only. This is not financial or investment advice. Investments are always made at your own risk and are based on your personal judgement. We are not responsible for any losses you may incur. Please invest wisely.
Best regards and enjoy it.
TrendCraft ICT SwiftEdge// The TrendCraft ICT SwiftEdge is a trend-following indicator that combines Simple Moving Averages (SMAs) with Inner Circle Trader (ICT) concepts, specifically Break of Structure (BOS) and Market Structure Shift (MSS), to generate precise buy and sell signals. This unique mashup leverages the strengths of trend confirmation through SMAs and market structure analysis via ICT to help traders identify high-probability trend entries. The indicator is designed to be intuitive, customizable, and suitable for traders of all levels seeking to align with market trends on various timeframes.
//
// ### What It Does
// The indicator plots two SMAs based on the high and low prices of candles to define the trend direction. It colors the SMAs and fills the area between them to visually indicate whether the price is in a bullish (above both SMAs), bearish (below both SMAs), or neutral (between SMAs) state. Simultaneously, it identifies BOS and MSS levels on a user-defined higher timeframe to confirm trend continuation or reversal points. Buy and sell signals are generated when the price closes above/below the latest BOS or MSS level (based on user preference) while also being correctly positioned relative to the SMAs, ensuring alignment with the trend.
//
// ### Why Combine SMAs and ICT?
// SMAs provide a reliable way to gauge trend direction by smoothing price data, but they can lag or generate false signals in choppy markets. ICT's BOS and MSS concepts address this by focusing on key market structure breaks, offering context for significant price movements. By requiring price to close beyond a BOS or MSS level and align with the SMA-defined trend, the TrendCraft ICT SwiftEdge filters out noise and enhances signal reliability. This combination creates a robust system that balances trend-following simplicity with structural market insights, making it ideal for trend traders.
//
// ### How to Use
// 1. **SMA Length**: Adjust the `SMA Length` (default: 20) to control the sensitivity of the SMAs. Shorter lengths react faster to price changes, while longer lengths provide smoother trends.
// 2. **Structure Timeframe**: Set the `Structure Timeframe` to a higher timeframe (e.g., "1H" on a 15M chart) to calculate BOS and MSS levels. This ensures structural signals are based on significant market moves.
// 3. **Chart Timeframe**: Select the `Chart Timeframe` to optimize pivot point calculations for your current chart (e.g., "30M" for a 30-minute chart).
// 4. **Signal Type**: Choose between "BOS" (default) for signals based on trend continuation breaks or "MSS" for signals based on potential reversal points (breakers).
// 5. **Display Options**: Enable/disable `Show Continuation (BOS)` and `Show Breaker (MSS)` to toggle the visibility of BOS and MSS lines. Customize their colors for better chart clarity.
//
// ### Signals
// - **Buy Signal**: Appears when the close price crosses above the latest BOS or MSS level (based on Signal Type) and is above both SMAs, indicating a bullish trend entry. Marked with a green "Buy" label.
// - **Sell Signal**: Appears when the close price crosses below the latest BOS or MSS level (based on Signal Type) and is below both SMAs, indicating a bearish trend entry. Marked with a red "Sell" label.
//
// ### Originality
// The TrendCraft ICT SwiftEdge stands out by integrating the trend-following reliability of SMAs with the structural precision of ICT's BOS and MSS. Unlike standalone SMA or ICT indicators, this script requires both trend alignment and structural confirmation, reducing false signals. The user-selectable Signal Type (BOS or MSS) adds versatility, allowing traders to adapt the indicator to trend-following or counter-trend strategies. Its dynamic timeframe adjustments and visual clarity make it a unique tool for traders seeking to capture trend entries with confidence.
//
// ### Notes
// - Ensure the `Structure Timeframe` is higher than your chart timeframe to avoid calculation issues.
// - Signals are generated only when the trend state changes to avoid redundant signals in the same trend direction.
// - Past performance is not indicative of future results. Always combine this indicator with other analysis and risk management techniques.