Diamond PivotsWhen price changes direction, it forms Pivot. They are also called reversals, because they represent the point where the price reverses direction.
There are two varieties of pivots: Pivot high and pivot low
A pivot high occurs when the price is moving higher, then changes directions and begins moving lower.
A pivot low occurs when the price is moving lower, then changes direction and begins moving higher. Since the financial markets are in a constant state of movement, pivots are constantly forming.
The Pivot is identifying the liquidity points or sweeps of liquidity
Frattale
Sync Module {Pro+}Description
This indicator combines three advanced modules into one framework to help traders identify market structure across multiple timeframes. By overlaying higher timeframe (HTF) levels, shading, and full candle representations directly onto lower timeframe charts, it allows traders to contextualize intraday movements within the broader market flow.
The system works in three layers:
HTF Levels (Script #1) – Defines static and dynamic breakout levels (D+ / D–), midpoint, prior highs/lows, and open. Two independent higher timeframes (A and B) can be tracked simultaneously.
HTF Boxes (Script #2) – Overlays shaded boxes representing selected HTF candle ranges, giving a clear view of directional bias and volatility.
HTF Candles (Script #3) – Plots higher timeframe candles directly on the chart, preserving structure without changing chart resolution.
Together, these modules create a multi-dimensional view of price action, helping traders see how breakouts, retracements, and range boundaries interact across different scales of time.
Script #1 – Timeframe A & B Levels
Purpose:
Plots critical reference levels (high, low, mid, prior high/low, open, and breakout levels) for two higher timeframes of the trader’s choice.
Key Features:
D+ (Static): Marks confirmed HTF breakouts above/below prior highs or lows.
D– (Dynamic): Tracks intrabar retracements toward D+, resetting if touched.
Full Level Suite: Includes midpoint, prior highs/lows, current open, and shading between Open ↔ Mid for additional context.
Dual Tracking: Monitors two separate timeframes (A and B) independently with full customization of styles, colors, and labels.
How It Helps:
Reveals breakout structure, retest behavior, and critical price references across multiple HTFs without switching charts.
Script #2 – HTF Boxes / Shading
Purpose:
Draws shaded boxes around selected higher timeframe candles, providing a visual map of HTF ranges on lower timeframe charts.
Key Features:
Configurable for up to four different intervals.
Box bodies shaded by candle direction (bullish/bearish).
Customizable border color and line style.
Automatic detection of new HTF intervals.
How It Helps:
Highlights the “container” of price action for each HTF bar, making it easy to see where current price sits within past higher timeframe ranges.
Script #3 – HTF Candles
Purpose:
Plots higher timeframe candles directly on the chart, preserving HTF structure alongside lower timeframe price action.
Key Features:
User-defined timeframe selection (e.g., 30m candles on a 1m chart).
Customizable candle body, wick, and border styling.
Optional vertical lines at HTF candle opens.
Dynamic scaling ensures candles display proportionally on any chart.
How It Helps:
Allows traders to monitor HTF price action and structure without leaving their preferred lower timeframe view.
Intended Use
This is a visualization and structural analysis tool. It does not generate buy/sell signals. Instead, it facilitates:
Identifying HTF breakouts and retracements.
Understanding where current price sits within HTF ranges.
Overlaying structural context from higher timeframes onto lower timeframe execution charts.
Limitations & Disclaimers
This indicator does not predict market outcomes or guarantee trading success.
Levels are derived from completed HTF candles and dynamic updates during active intervals.
Trading involves significant risk; use proper risk management.
This script is for informational and visualization purposes only.
No financial advice. The author is not responsible for losses incurred from use of this tool.
Closed-source (Protected):
The logic is available to use on charts but the code is not publicly visible. A TradingView paid plan is required to access protected indicators.
FDDM [ Shervinfx ]( Fractal Dimensions and the Depth Manipulation )
1.With this indicator, you can properly understand fractal dimensions and the depth of market manipulation.Fddm identifies regions daily to measure fractal dimensions and assess data for market manipulation.
2.The red and blue areas in the image indicate the regions where the fractal dimensions are measured.
The MNP - or + and MNP5 areas are the market manipulation zones that arise daily with different market profiles.
3.Please apply the FDDM indicator settings exactly as shown in the pictures I shared to ensure correct usage and avoid any violations, so you can get the best results and positive responses in your trades.
4.There are two types of tables to view the Fractal dimension prices and market manipulation that we observe as MNP, so you can make the best trading decisions and achieve success at your entry points.
5.The higher timeframe candle is considered for you so you can combine the market OHLC-OLHC with your lower-fractal timeframe. This way, your entry precision increases, and you have quick access to higher timeframes even with just a laptop and a monitor; you don’t need other monitors when using the FDDM indicator.
6.Change in state of delivery" is one of the key ways to consider market shift in both lower and higher timeframes. You should pay close attention to MNP and FD points at price touch and trend, so you enter at the right price level. This itself is an important confirmation for entering a trade, and the FDDM indicator does this automatically for you across all timeframes accurately, since recognizing CISD can be very challenging at times.
7.Identify fair value gaps (FVG) automatically and plot them on the chart without any effort. The FDDM indicator does this for you, and you can set the number of gaps to display in the settings. This is a great boon for traders, allowing you to focus purely on trading and entries, stay away from peripheral tasks, enjoy the trading process, and reap substantial profits.
8.I have to tell you about a kind of miracle: since FD and MNP form a single zone for us, if this zone is shadowed or has a solid test, we can execute a good entry. If the market trend is intact but this zone is touched by the body and the market turns, you should wait for CISD to achieve the best, low-risk entry for trend reversals or corrections. Based on narrative and bias, you can make good trading decisions.
Trend Engine Pro v1.3Trend Engine Pro v1.3 is a custom-built trading indicator designed to simplify market direction and decision-making by combining multiple confirmations into one tool. It analyzes price action across the 4H, 1H, 30M, and 5M timeframes, pulling both regular candle trends and Heikin-Ashi candle trends together to form a stronger, more reliable signal. The indicator also integrates a dynamic 20 EMA ribbon, which changes color based on trend direction and strength, giving instant visual feedback on momentum shifts. On top of that, fractals are plotted directly on the chart with customizable colors, helping traders spot potential reversal points or continuation setups with clarity. All results are summarized in a boxed panel, which displays the trend status of each timeframe, the overall market bias (Strong Buy, Strong Sell, or Hold), and a real-time trading tip. The goal is to remove second-guessing, keep you aligned with the trend, and reinforce discipline—so you can focus on executing your strategy with confidence.
High Low + BOS/Sweep//@version=5
indicator("High Low + BOS/Sweep", overlay=true, max_lines_count=500, max_labels_count=500)
// Inputs (giữ nguyên các tuỳ chọn của bạn, chỉ bỏ input màu)
offTop = input.int(2, "Offset đỉnh", minval=0)
offBot = input.int(2, "Offset đáy", minval=0)
w = input.int(2, "Độ dày line", minval=1)
styleBosStr = input.string("Solid", "Kiểu line BOS", options= )
styleSweepStr = input.string("Dashed", "Kiểu line Sweep", options= )
showBosLabel = input.bool(true, "Hiện label BOS")
showSweepLabel = input.bool(true, "Hiện label Sweep")
bosLabelText = input.string("BOS", "Text BOS")
sweepLabelText = input.string("SWEEP", "Text Sweep")
labelSizeStr = input.string("tiny", "Kích thước label", options= )
// NEW: display toggles (giữ nguyên logic, bạn yêu cầu)
showPivot = input.bool(true, "Hiện Pivot")
showBosSweep = input.bool(true, "Hiện BOS / Sweep")
// Convert styles / sizes
bosStyle = styleBosStr == "Dashed" ? line.style_dashed : styleBosStr == "Dotted" ? line.style_dotted : line.style_solid
sweepStyle = styleSweepStr == "Dashed" ? line.style_dashed : styleSweepStr == "Dotted" ? line.style_dotted : line.style_solid
lblSize = labelSizeStr == "small" ? size.small : labelSizeStr == "normal" ? size.normal : labelSizeStr == "large" ? size.large : size.tiny
// State vars (khai báo riêng để tránh lỗi kiểu)
c = close
var int lastSignal = 0
var float sHigh = na
var int sHighBar = na
var float sLow = na
var int sLowBar = na
var float confHigh = na
var int confHighBar = na
var float confLow = na
var int confLowBar = na
var line highLine = na
var line lowLine = na
var label highLabel = na
var label lowLabel = na
// === Đánh dấu loại line: 0 = chưa có, 1 = Sweep, 2 = BOS ===
var int highLineType = 0
var int lowLineType = 0
// === Sweep tracking / pending ===
var bool pendingSweepUp = false
var bool pendingSweepDown = false
var int sweepDetectedBarUp = na
var float sweepTargetHighPrice = na
var int sweepTargetHighBar = na
var int sweepDetectedBarDown = na
var float sweepTargetLowPrice = na
var int sweepTargetLowBar = na
// === Track BOS pivots (pivot bar indexes that became BOS) ===
var int lastBOSHighBar = na
var int lastBOSLowBar = na
// Track swing while searching
if (lastSignal == -1) or (lastSignal == 0)
if na(sHigh) or high > sHigh
sHigh := high
sHighBar := bar_index
if (lastSignal == 1) or (lastSignal == 0)
if na(sLow) or low < sLow
sLow := low
sLowBar := bar_index
// Confirm pivot
condTop = c < low
condBot = c > high
isTop = condTop and (lastSignal != 1)
isBot = condBot and (lastSignal != -1)
// On pivot confirm (KHÔNG reset pendingSweep ở đây)
if isTop
confHigh := sHigh
confHighBar := sHighBar
highLine := na
highLabel := na
highLineType := 0
if showPivot
label.new(confHighBar, confHigh + syminfo.mintick * offTop, "●", xloc=xloc.bar_index, yloc=yloc.price, style=label.style_none, textcolor=color.red, size=size.small)
lastSignal := 1
sHigh := na
sHighBar := na
sLow := low
sLowBar := bar_index
if isBot
confLow := sLow
confLowBar := sLowBar
lowLine := na
lowLabel := na
lowLineType := 0
if showPivot
label.new(confLowBar, confLow - syminfo.mintick * offBot, "●", xloc=xloc.bar_index, yloc=yloc.price, style=label.style_none, textcolor=color.lime, size=size.small)
lastSignal := -1
sLow := na
sLowBar := na
sHigh := high
sHighBar := bar_index
// Raw sweep detection: nếu có râu quét pivot cũ (và đóng lại không vượt) -> đánh dấu pending và lưu pivot cũ
// loại trừ pivot đã từng là BOS (lastBOSHighBar / lastBOSLowBar)
rawSweepUp = not na(confHigh) and (na(lastBOSHighBar) or confHighBar != lastBOSHighBar) and high > confHigh and close <= confHigh
rawSweepDown = not na(confLow) and (na(lastBOSLowBar) or confLowBar != lastBOSLowBar) and low < confLow and close >= confLow
if rawSweepUp
pendingSweepUp := true
sweepDetectedBarUp := bar_index
sweepTargetHighPrice := confHigh
sweepTargetHighBar := confHighBar
if rawSweepDown
pendingSweepDown := true
sweepDetectedBarDown := bar_index
sweepTargetLowPrice := confLow
sweepTargetLowBar := confLowBar
// Functions: check sweep valid (no close crossing pivot from detection to now)
checkSweepValidUp() =>
isValid = true
if pendingSweepUp and not na(sweepDetectedBarUp) and not na(sweepTargetHighPrice)
maxOffset = bar_index - sweepDetectedBarUp
if maxOffset >= 0
for i = 0 to maxOffset
if close > sweepTargetHighPrice
isValid := false
isValid
checkSweepValidDown() =>
isValid = true
if pendingSweepDown and not na(sweepDetectedBarDown) and not na(sweepTargetLowPrice)
maxOffset = bar_index - sweepDetectedBarDown
if maxOffset >= 0
for i = 0 to maxOffset
if close < sweepTargetLowPrice
isValid := false
isValid
// BOS logic (như cũ) — nếu BOS xảy ra thì hủy pending sweep liên quan
bosUp = not na(confHigh) and c > confHigh
bosDown = not na(confLow) and c < confLow
if bosUp
// cancel pending sweep
pendingSweepUp := false
sweepDetectedBarUp := na
sweepTargetHighPrice := na
sweepTargetHighBar := na
// mark pivot as BOS (do not allow future sweep using same pivot)
lastBOSHighBar := confHighBar
// delete existing sweep display if present
if not na(highLine)
line.delete(highLine)
if not na(highLabel)
label.delete(highLabel)
// draw BOS (only if display enabled) — dùng màu mặc định: black
highLineType := 2
if showBosSweep
highLine := line.new(confHighBar, confHigh, bar_index, confHigh, xloc=xloc.bar_index, extend=extend.none, color=color.black, width=w, style=bosStyle)
if showBosLabel
midBar = math.floor((confHighBar + bar_index) / 2)
highLabel := label.new(midBar, confHigh, bosLabelText, xloc=xloc.bar_index, yloc=yloc.price, textcolor=color.black, style=label.style_none, size=lblSize)
if bosDown
pendingSweepDown := false
sweepDetectedBarDown := na
sweepTargetLowPrice := na
sweepTargetLowBar := na
lastBOSLowBar := confLowBar
if not na(lowLine)
line.delete(lowLine)
if not na(lowLabel)
label.delete(lowLabel)
lowLineType := 2
if showBosSweep
lowLine := line.new(confLowBar, confLow, bar_index, confLow, xloc=xloc.bar_index, extend=extend.none, color=color.black, width=w, style=bosStyle)
if showBosLabel
midBar = math.floor((confLowBar + bar_index) / 2)
lowLabel := label.new(midBar, confLow, bosLabelText, xloc=xloc.bar_index, yloc=yloc.price, textcolor=color.black, style=label.style_none, size=lblSize)
// === Sweep draw (with pivot-in-between check) ===
if (isTop or isBot) and pendingSweepUp and not na(sweepTargetHighBar)
hasLowBetween = false
// scan bars between sweepTargetHighBar and current bar to find ANY confirmed low pivot (confLowBar)
for i = sweepTargetHighBar to bar_index
if not na(confLowBar) and confLowBar == i
hasLowBetween := true
if checkSweepValidUp() and highLineType != 2 and hasLowBetween
// delete existing line if any
if not na(highLine)
line.delete(highLine)
if not na(highLabel)
label.delete(highLabel)
// mark as sweep
highLineType := 1
// draw sweep only if display enabled (màu mặc định: black)
if showBosSweep
highLine := line.new(sweepTargetHighBar, sweepTargetHighPrice, bar_index, sweepTargetHighPrice, xloc=xloc.bar_index, extend=extend.none, color=color.black, width=w, style=sweepStyle)
if showSweepLabel
midBar = math.floor((sweepTargetHighBar + bar_index) / 2)
highLabel := label.new(midBar, sweepTargetHighPrice, sweepLabelText, xloc=xloc.bar_index, yloc=yloc.price, textcolor=color.black, style=label.style_none, size=lblSize)
// clear pending
pendingSweepUp := false
sweepDetectedBarUp := na
sweepTargetHighPrice := na
sweepTargetHighBar := na
if (isTop or isBot) and pendingSweepDown and not na(sweepTargetLowBar)
hasHighBetween = false
for i = sweepTargetLowBar to bar_index
if not na(confHighBar) and confHighBar == i
hasHighBetween := true
if checkSweepValidDown() and lowLineType != 2 and hasHighBetween
if not na(lowLine)
line.delete(lowLine)
if not na(lowLabel)
label.delete(lowLabel)
lowLineType := 1
if showBosSweep
lowLine := line.new(sweepTargetLowBar, sweepTargetLowPrice, bar_index, sweepTargetLowPrice, xloc=xloc.bar_index, extend=extend.none, color=color.black, width=w, style=sweepStyle)
if showSweepLabel
midBar = math.floor((sweepTargetLowBar + bar_index) / 2)
lowLabel := label.new(midBar, sweepTargetLowPrice, sweepLabelText, xloc=xloc.bar_index, yloc=yloc.price, textcolor=color.black, style=label.style_none, size=lblSize)
pendingSweepDown := false
sweepDetectedBarDown := na
sweepTargetLowPrice := na
sweepTargetLowBar := na
// Alerts
alertcondition(isTop, "Top", "Top confirmed")
alertcondition(isBot, "Bot", "Bottom confirmed")
alertcondition(bosUp, "BOS Up", "Break of structure up")
alertcondition(bosDown, "BOS Down", "Break of structure down")
plot(na) // tránh lỗi
Srujan Naidu Strict EMA Exaggerated Touch-Free SignalGives a turn points in the market, combine with other indicators to increase win ratio
[ACR+]EXPANSION DETECTION Expansion Detection is a price-action tool that spots true momentum expansions, distinguishes high-quality displacements (CISD), and flags wick-driven reversals—all in the context of internal market structure. It keeps your chart clean: only the trade-relevant signals are plotted; structure lines/labels are computed under the hood.
Signals on the chart
Expansion (non-CISD)
Bullish: ▲ triangle below bar (green)
Bearish: ▼ triangle above bar (red)
CISD (Change In State of Delivery) — expansion with displacement & quality filters
Bullish: ◆ diamond below bar (lime)
Bearish: ◆ diamond above bar (orange)
Reversal (wick-dominant + optional engulf)
Bullish: ● circle below bar (teal)
Bearish: ● circle above bar (purple)
The script automatically prefers CISD: if a bar qualifies as CISD, only the CISD mark is shown (not the plain Expansion).
How it works (under the hood)
Body vs Wick engine
Expansion when body dominates wick (Body/Wick > kBW) and body exceeds its average (Body > kBodyAvg × SMA(Body)).
Reversal when one wick is decisively larger than the body (pin-bar style) with optional engulf confirmation.
Structure context (internal)
Builds short/intermediate/long-term swings internally and checks BOS (Break of Structure) and liquidity sweeps around the latest IT levels for higher signal quality.
CISD filter
Expansion + displacement vs ATR (min body vs ATR)
Optional FVG (3-bar gap) confirmation
Optional BOS confirmation in the same direction
Optional previous Inside Bar requirement
TB DayProfile (stabil)TB DayProfile Indicator
The TB DayProfile plots intraday price movements relative to the current day’s opening price. Each bar is shifted so that the daily open acts as a fixed zero line, making it easy to see how far the market has moved above or below the open during the session.
The indicator includes:
Relative intraday bars (iOpen, iHigh, iLow, iClose): Displayed as a custom bar chart, showing price action normalized to the day’s open.
Zero line with color signals: Turns green if the number of consecutive bars above the open exceeds a user-defined threshold, or red if below.
ATR reference bands: Daily ATR(5) from the previous day (scaled by 0.25) is plotted as upper and lower bands, helping to gauge typical intraday ranges.
This tool helps traders quickly identify whether the market is trending strongly away from the daily open, or if price is reverting back toward it, independent of the chosen chart timeframe.
EITS - Market StructureThis script marks the Swing Lows and Highs of a chosen pair. H,HH,L,LL,HL,LH will be marked on chart. Have fun!!
DetradesThis TradingView indicator, created by Detrades, serves multiple functions to assist traders in making informed decisions. It displays the projection of HTF (Higher Time Frame) candles, allowing users to choose the timeframe that best suits their needs. The indicator also highlights sweep liquidity high/low candles on HTF candles, providing a clearer view of market behavior. Additionally, it includes a CISD (Change In Structure Detection) feature to confirm trend reversals on LTF (Lower Time Frame) candles, which is often used for entry signals. The indicator also offers a customizable watermark for personalization, ensuring a tailored trading experience.
KILLZONE & CHECK LIST ICAKILLZONE & CHECK LIST | The Inner Circle Alchemist
✨ Features:
Display of precise trading killzones on the chart
Marking the high, low, and mid-level of each killzone
Option to show/hide killzone names
Daily separators at custom times (e.g. 17:00 or 00:00)
Highlighting Midnight Open, 8:30 Open, and New York Stock Exchange Open
Display of previous day, week, and month highs & lows (optional)
A clean and practical trading checklist on the bottom-right of the chart
Visual customization, such as showing your name/brand on the chart
Clear indication of weekdays
⚡️ A perfect mix of professional tools & visual style to keep you one step ahead!
ID on all platforms: TheInnerCircleAlchemist
#Forex #Trading #Indicator #Killzone #TradingChecklist #PriceAction #DayTrading #SwingTrading #SmartMoney #MarketStructure #TradingTools #ChartAnalysis #TechnicalAnalysis #ForexStrategy #TraderLife #ForexTrading
[DEM] Heikin Ashi Barcolors Heikin Ashi Barcolors is designed to apply smoothed Heikin Ashi calculations to regular candlestick charts and color the price bars based on the resulting Heikin Ashi trend direction to reduce market noise and provide clearer visual trend identification. The indicator first applies EMA smoothing to the standard OHLC values, then calculates Heikin Ashi values using the traditional formulas (averaged close, modified open based on previous values, and adjusted high/low), and applies an additional layer of EMA smoothing to the Heikin Ashi results. The bars are colored teal when the smoothed Heikin Ashi close is above the smoothed Heikin Ashi open (indicating bullish conditions) and red when the close is below the open (indicating bearish conditions), effectively transforming the visual appearance of regular candlesticks to reflect the smoother, trend-following characteristics of Heikin Ashi methodology while maintaining the original price structure.
SOLACEThis overlay combines a fast/slow EMA price-action system with rich context tools. Buy prints on the current bar when both EMAs (5 & 21) are below the OHLC average and the 21 EMA crosses below the 5 EMA; Sell prints when both EMAs are above the average and the 21 EMA crosses above the 5 EMA. It also plots MACD, VWAP, Bollinger Bands (20,2), SMA50/200, plus dynamic support/resistance lines from recent swing highs/lows (20/40/60 bars) for confluence. Labels fire same-bar for early entries, and alerts are included for both signals; fractal logic is prepared for future use.
ICT Fractal HTF Candles [TFR]ICT HTF Fractal Candles
This indicator overlays higher timeframe (HTF) candles directly on your current chart for better multi-timeframe analysis. It plots up to the last 4 candles from a user-selected timeframe (5m, 15m, 1h, 4h, or 1D) with customizable body and border colors.
Features:
Displays the last 4 higher timeframe candles (open, high, low, close) on your current chart.
Customizable bullish, bearish, and inside close candle colors.
Optional midpoint wick lines (top and bottom) for precision reference, with extendable length for clarity.
Optional candle midpoint line for additional confluence.
Overlay mode allows you to see HTF structure without switching chart timeframes.
Timeframe label display so you always know which HTF is being plotted.
Offset control for shifting candle position.
Use Case:
This tool helps traders apply ICT concepts like PO3, midpoint reference levels, and multi-timeframe confirmation without constantly switching between charts. It’s particularly useful for identifying liquidity zones, midpoint reactions, and higher timeframe market structure while executing on a lower timeframe.
SorMed IndicatorSormed: Your all-in-one trading edge. Pinpoint favorable buy (blue) & sell (red) periods with our dynamic analysis of fractals, levels, and volatility. Simplify trend trading with clear, adaptive signals to guide your decisions.
YouTube: “The Best Algo Trading Software & Strategies” @superadvisorsorokin
FlowThe indicator attempts to capture the volatility within a range and apply a set of Fibonacci calculations to display a range of bands of varying degrees which represents zones where exhaustion may occur on both sides.
So if price gets in to the yellow or pink zones then the script author is on high alert for a reversal. It must be noted that the user of the script should be fluent in Elliott Wave Analysis as the script was developed to help the author determine if a wave sequence may have ended.
When the indicator glides along one of the green, yellow or pink bands, then the instrument is likely in a 3rd wave, in Elliott wave speak, as such the user of the script would wait and not try to fade the move up or down as continuation is likely. Instead a move away from one of the bands should indicate another attempt at reaching the band after moving away. Thus, this move back in should be a 5th wave of some degree within the timeframe.
The indicator is not bound to any timeframe, as such it works on a 1 minute chart as it does on a weekly timeframe.
One of the observations the author makes is the use of the indicator within a sideways market. The indicator performs very well within these lower volatility environments by indicating exhaustion within these range bound markets.
So in essence, within the framework of Elliott wave analysis and respective time frames. Watch several higher and lower time frames.
1) Once wave 1 has completed
2) Look for a move down to the lower green / yellow zone to identify a wave 2 zone.
3) Once wave 3 starts, do not attempt to fade or short the first touch on the pink zone. Wait for price to move away and then come back in to the pink zone before considering a top and any attempts to fade.
4) Wave 4 should find support on the lower yellow or green band. Where it may be considered that price may change direction.
5) Depending on the time frame and any expected/unexpected extensions, Wave 5 may find resistance in to the pink zone.
A question that the author often asks is "where will wave 3 end?" - Will it end at the 1.618% extension of wave 1 & 2, the 176.4 or higher and perhaps lower. Using the pink zones the author has found it useful and quite accurate to make such a judgement based on the current position of the bands - Pink for exhaustion in an uptrend and green for exhaustion in a down trending market.
Trend FriendTrend Friend — What it is and how to use it
I built Trend Friend to stop redrawing the same trendlines all day. It automatically connects confirmed swing points (fractals) and keeps the most relevant lines in front of you. The goal: give you clean, actionable structure without the guesswork.
What it does (in plain English)
Finds swing highs/lows using a Fractal Period you choose.
Draws auto-trendlines between the two most recent confirmed highs and the two most recent confirmed lows.
Colours by intent:
Lines drawn from highs (potential resistance / bearish) = Red
Lines drawn from lows (potential support / bullish) = Green
Keeps the chart tidy: The newest lines are styled as “recent,” older lines are dimmed as “historical,” and it prunes anything beyond your chosen limit.
Optional crosses & alerts: You can highlight when price closes across the most recent line and set alerts for new lines formed and upper/lower line crosses.
Structure labels: It tags HH, LH, HL, LL at the swing points, so you can quickly read trend/rotation.
How it works (under the hood)
A “fractal” here is a confirmed pivot: the highest high (or lowest low) with n bars on each side. That means pivots only confirm after n bars, so signals are cleaner and less noisy.
When a new pivot prints, the script connects it to the prior pivot of the same type (high→high, low→low). That gives you one “bearish” line from highs and one “bullish” line from lows.
The newest line is marked as recent (brighter), and the previous recent line becomes historical (dimmed). You can keep as many pairs as you want, but I usually keep it tight.
Inputs you’ll actually use
Fractal Period (n): this is the big one. It controls how swingy/strict the pivots are.
Lower n → more swings, more lines (faster, noisier)
Higher n → fewer swings, cleaner lines (slower, swing-trade friendly)
Max pair of lines: how many pairs (up+down) to keep on the chart. 1–3 is a sweet spot.
Extend: extend lines Right (my default) or Both ways if you like the context.
Line widths & colours: recent vs. historical are separate so you can make the active lines pop.
Show crosses: toggle the X markers when price crosses a line. I turn this on when I’m actively hunting breakouts/retests.
Reading the chart
Red lines (from highs): I treat these as potential resistance. A clean break + hold above a red line often flips me from “fade” to “follow.”
Green lines (from lows): Potential support. Same idea in reverse: break + hold below and I stop buying dips until I see structure reclaim.
HH / LH / HL / LL dots: quick read on structure.
HH/HL bias = uptrend continuation potential
LH/LL bias = downtrend continuation potential
Mixed prints = rotation/chop—tighten risk or wait for clarity.
My H1 guidance (fine-tuning Fractal Period)
If you’re mainly on H1 (my use case), tune like this:
Fast / aggressive: n = 6–8 (lots of signals, good for momentum days; more chop risk)
Balanced (recommended): n = 9–12 (keeps lines meaningful but responsive)
Slow / swing focus: n = 13–21 (filters noise; better for trend days and higher-TF confluence)
Rule of thumb: if you’re getting too many touches and whipsaws, increase n. If you’re late to obvious breaks, decrease n.
How I trade it (example workflow)
Pick your n for the session (H1: start at 9–12).
Mark the recent red & green lines. That’s your immediate structure.
Look for interaction:
Rejections from a line = fade potential back into the range.
Break + close across a line = watch the retest for continuation.
Confirm with context: session bias, HTF structure, and your own tools (VWAP, RSI, volume, FVG/OB, etc.).
Plan the trade: enter on retest or reclaim, stop beyond the line/last swing, target the opposite side or next structure.
Alerts (set and forget)
“New trendline formed” — fires when a new high/low pivot confirms and a fresh line is drawn.
“Upper/lower trendline crossed” — fires when price crosses the most recent red/green line.
Use these to track structure shifts without staring at the screen.
Good to know (honest limitations)
Confirmation lag: pivots need n bars on both sides, so signals arrive after the swing confirms. That’s by design—less noise, fewer fake lines.
Lines update as structure evolves: when a new pivot forms, the previous “recent” line becomes “historical,” and older ones can be removed based on your max setting.
Not an auto trendline crystal ball: it won’t predict which line holds or breaks—it just keeps the most relevant structure clean and up to date.
Final notes
Works on any timeframe; I built it with H1 in mind and scale to H4/D1 by increasing n.
Pairs nicely with session tools and VWAP for intraday, or with supply/demand / FVGs for swing planning.
Risk first: lines are structure, not guarantees. Manage position size and stops as usual.
Not financial advice. Trade your plan. Stay nimble.
Ichimoku Fractal Flow### Ichimoku Fractal Flow (IFF)
By Gurjit Singh
Ichimoku Fractal Flow (IFF) distills the Ichimoku system into a single oscillator by merging fractal echoes of price and cloud dynamics into one flow signal. Instead of static Ichimoku lines, it measures the "flow" between Conversion/Base, Span A/B, price echoes, and cloud echoes. The result is a multidimensional oscillator that reveals hidden rhythm, momentum shifts, and trend bias.
#### 📌 Key Features
1. Fourfold Fusion – The oscillator blends:
* Phase: Tenkan vs. Kijun spread (short vs. medium trend).
* Kumo Phase: Span A vs. Span B spread (cloud thickness).
* Echo: Price vs lagged reflection.
* Cloud Echo: Price vs. projected cloud center.
2. Oscillator Output – A unified flow line oscillating around zero.
3. Dual Calculation Modes – Oscillator can be built using:
* High-Low Midpoint (classic Ichimoku-style averaging).
* Wilder’s RMA (smoother, less noisy averaging averaging).
4. Optional Smoothing – EMA or Wilder’s RMA creates a trend line, enabling MACD-style crossovers.
5. Dynamic Coloring – Bullish/Bearish color shifts for quick bias recognition.
6. Fill Styling – Highlighted regions between oscillator & smoothing line.
7. Zero Line Reference – Acts as a structural pivot (bull vs. bear).
#### 🔑 How to Use
1. Add to Chart: Works across all assets and timeframes.
2. Flow Bias (Zero Line):
* Above 0 → Bullish flow 🐂
* Below 0 → Bearish flow 🐻
3. With Signal Line:
* Oscillator above smoothing line → Possible upward trend shift.
* Oscillator below smoothing line → Possible downward trend shift.
4. Strength:
* Wide separation from smoothing = strong trend.
* Flat, tight clustering = indecision/range.
5. Contextual Edge: Combine signals with Ichimoku Cloud analysis for stronger confluence.
#### ⚙️ Inputs & Options
* Conversion Line (Tenkan, default 9)
* Base Line (Kijun, default 26)
* Leading Span B (default 52)
* Lag/Lead Shift (default 26)
* Oscillator Mode: High-Low Midpoint vs Wilder’s RMA
* Use Smoothing (toggle on/off)
* Signal Smoothing: Wilder/EMA option
* Smoothing Length (default 9)
* Bullish/Bearish Colors + Transparency
#### 💡 Tips
* Wilder’s RMA (both oscillator & smoothing) is gentler, reducing whipsaws in sideways markets.
* High-Low Mid captures pure Ichimoku-style ranges, good for structure-based traders.
* EMA reacts faster than RMA; use if you want early momentum signals.
* Zero-line flips act like momentum pivots—watch them near cloud boundaries.
* Signal line crossovers behave like MACD-style triggers.
* Strongest signals appear when oscillator, signal line, and Ichimoku Cloud all align.
👉 In short: Ichimoku Fractal Flow compresses multi-layered Ichimoku system into a single fractal oscillator that detects flow, pivotal shifts, and momentum with clarity—bridging price, cloud, and echoes into one signal. Where the cloud shows structure, IFF reveals the underlying flow. Together, they offer a fractal lens into market rhythm.
CBT Model- Culture Pulse ProThis CBT Model helps trader to identify possible buying and selling opportunity . This is base on directional candle structure bias. NOTE: Not all the cbt signals are guaranteed to win, better to apply your approach and do not enter the cbt signals blindly.