POC-Candle-EMA-ATR-LongShadow-50percCandleThis is a script for those who trade based on volume and smart money strategies.
Some of the features of this script:
- Display "Time Price Opportunity Chart". These points help traders to identify price opportunities over time and have a better analysis of the market.
- Mark candles that have traded more volume than previous candles.
- Mark candles whose body is at least and not more than 50% of the total candle size, these candles can be found more easily in smart money strategies.
- Mark spike candles to find FVG faster
- Mark candles that have a shadow of at least more than 380 points and can be good reversal points.
- EMA indicator to check the market trend
- DonchianChannel indicator to check the price trend on the chart
Regards
Tìm kiếm tập lệnh với "smart"
One Shot One Kill ICT [TradingFinder] Liquidity MMXM + CISD OTE🔵 Introduction
The One Shot One Kill trading setup is one of the most advanced methods in the field of Smart Money Concept (SMC) and ICT. Designed with a focus on concepts such as Liquidity Hunt, Discount Market, and Premium Market, this strategy emphasizes precise Price Action analysis and market structure shifts. It enables traders to identify key entry and exit points using a structured Trading Model.
The core process of this setup begins with a Liquidity Hunt. Initially, the price targets areas like the Previous Day High and Previous Day Low to absorb liquidity. Once the Change in State of Delivery(CISD)is broken, the market structure shifts, signaling readiness for trade entry. At this stage, Fibonacci retracement levels are drawn, and the trader enters a position as the price retraces to the 0.618 Fibonacci level.
Part of the Smart Money approach, this setup combines liquidity analysis with technical tools, creating an opportunity for traders to enter high-accuracy trades. By following this setup, traders can identify critical market moves and capitalize on reversal points effectively.
Bullish :
Bearish :
🔵 How to Use
The One Shot One Kill setup is a structured and advanced trading strategy based on Liquidity Hunt, Fibonacci retracement, and market structure shifts (CISD). With a focus on precise Price Action analysis, this setup helps traders identify key market movements and plan optimal trade entries and exits. It operates in two scenarios: Bullish and Bearish, each with distinct steps.
🟣 Bullish One Shot One Kill
In the Bullish scenario, the process starts with the price moving toward the Previous Day Low, where liquidity is absorbed. At this stage, retail sellers are trapped as they enter short trades at lower levels. Following this, the market reverses upward and breaks the CISD, signaling a shift in market structure toward bullishness.
Once this shift is identified, traders draw Fibonacci levels from the lowest point to the highest point of the move. When the price retraces to the 0.618 Fibonacci level, conditions for a buy position are met. The target for this trade is typically the Previous Day High or other significant liquidity zones where major buyers are positioned, offering a high probability of price reversal.
🟣 Bearish One Shot One Kill
In the Bearish scenario, the price initially moves toward the Previous Day High to absorb liquidity. Retail buyers are trapped as they enter long trades near the highs. After the liquidity hunt, the market reverses downward, breaking the CISD, which signals a bearish shift in market structure. Following this confirmation, Fibonacci levels are drawn from the highest point to the lowest point of the move.
When the price retraces to the 0.618 Fibonacci level, a sell position is initiated. The target for this trade is usually the Previous Day Low or other key liquidity zones where major sellers are active.
This setup provides a precise and logical framework for traders to identify market movements and enter trades at critical reversal points.
🔵 Settings
🟣 CISD Logical settings
Bar Back Check : Determining the return of candles to identify the CISD level.
CISD Level Validity : CISD level validity period based on the number of candles.
🟣 LIQUIDITY Logical settings
Swing period : You can set the swing detection period.
Max Swing Back Method : It is in two modes "All" and "Custom". If it is in "All" mode, it will check all swings, and if it is in "Custom" mode, it will check the swings to the extent you determine.
Max Swing Back : You can set the number of swings that will go back for checking.
🟣 CISD Display settings
Displaying or not displaying swings and setting the color of labels and lines.
🟣 LIQUIDITY Display settings
Displaying or not displaying swings and setting the color of labels and lines.
🔵 Conclusion
The One Shot One Kill setup is one of the most effective and well-structured trading strategies for identifying and capitalizing on key market movements. By incorporating concepts such as Liquidity Hunt, CISD, and Fibonacci retracement, this setup allows traders to enter trades with high precision at optimal points.
The strategy emphasizes detailed Price Action analysis and the identification of Smart Money behavior, helping traders to execute successful trades against the general market trend.
With a focus on identifying liquidity in the Previous Day High and Low and aligning it with Fibonacci retracement levels, this setup provides a robust framework for entering both bullish and bearish trades.
The combination of liquidity analysis and Fibonacci retracement at the 0.618 level enables traders to minimize risk and exploit major market moves effectively.
Ultimately, success with the One Shot One Kill setup requires practice, patience, and strict adherence to its rules. By mastering its concepts and focusing on high-probability setups, traders can enhance their decision-making skills and build a sustainable and professional trading approach.
Price Action Toolkit Lite [UAlgo]The Price Action Toolkit Lite is a comprehensive indicator designed to enhance your chart analysis with advanced price action tools. This powerful toolkit combines multiple technical analysis concepts to provide traders with a clear visualization of market structure, liquidity levels, order blocks, and trend lines. By integrating these elements, the indicator aims to offer a holistic view of price action, helping traders identify potential entry and exit points, as well as key levels of interest in the market.
🔶 Key Features
Market Structure Analysis: The indicator includes a ZigZag feature to highlight significant market highs and lows, aiding in the visualization of market structure changes and trends.
Liquidity Sweeps Detection: It identifies and displays liquidity sweeps, which are crucial for recognizing potential market reversals and areas of interest where significant price action is likely to occur.
Order Blocks: Automatically detects and draws order blocks, highlighting areas of institutional buying and selling pressure, which can serve as key support and resistance levels.
Trend Lines: The toolkit can draw and extend trend lines based on pivot points, providing a clear view of prevailing market trends and potential breakout points.
Customizable Settings: Users can adjust various settings, including the length of the ZigZag, liquidity detection sensitivity, the number of order blocks to display, and trend line detection parameters, allowing for a tailored analysis experience.
🔶 Disclaimer
The "Price Action Toolkit Lite " is intended for educational and informational purposes only.
It is not financial advice and should not be construed as such. Trading in financial markets involves substantial risk, including the risk of loss.
Past performance is not indicative of future results.
🔷 Similar Scripts
ICT Setup 01 [TradingFinder] FVG + Liquidity Sweeps/Hunt Alerts🔵 Introduction
The ICT (Inner Circle Trader) style of trading involves analyzing the behavior of market participants and market makers to identify areas where fake buy and sell activities occur. This trading style helps retail traders align with market maker behavior and avoid falling into market traps.
A key aspect of the ICT strategy is focusing on liquidity hunts. This involves searching for trading opportunities in areas of the market with low liquidity or where other traders have little activity. The ICT method leverages market inefficiencies and weaknesses, allowing traders to profit from small price movements that might go unnoticed by others.
In "ICT Setup 01," our focus is on these liquidity areas and stop hunts that form in Fair Value Gaps (FVGs). Trading within FVGs, combined with confirmations from "Hunts" and "Sweeps," can enhance trader performance.
🔵 How to Use
The presence of Fair Value Gaps (FVGs) in the market indicates rapid, powerful movements likely caused by the influx of smart money. When the price returns to these levels, a market reaction is expected.
Combining this with the complex and deceptive behavior of smart money—such as "Liquidity Sweeps" and "Stop Hunts"—forms an ICT-based price action setup that we expect to perform well.
Components of "ICT Setup 01" :
● Fair Value Gap (FVG)
● Premium and Discount
● Hunts / Sweeps
Whenever the price returns to an FVG area and reacts in such a way that only the wicks of the candles remain in the area and the candle bodies are outside the FVG, the first condition for creating the setup is met.
If subsequent candles hunt the wick that has penetrated the deepest into the FVG, a buy or sell signal is issued. In the format where hunting is based on Sweeps, penetrations that extend even outside the area are considered signals, provided they do not form a body within the area.
Additionally, a refining system exists for cases where a candle body forms in the area, optimizing the proximal levels of the FVG.
Bullish Setup :
Bearish Setup :
🔵 Features and Settings of "ICT Setup 01"
You can Find out more in Setting :
● FVG Detector Multiplier Factor
● FVG Validity Period
● Level in Low-Risk Zone
● Issuing Signals Method
● Number of Signals Allowed from a Zone
● Signal after Hunts/Sweeps
● How Many Hunts/Sweeps
● Show or Hide
● Alert Sender
FVG Detector Multiplier Factor :
This feature allows you to determine the size of the moves forming the FVGs based on the ATR (Average True Range). The default value is 1 to identify the majority of setups. You can increase this value according to the symbol and market you are trading in to achieve better results.
FVG Validity Period :
This shows the validity period of an FVG based on the number of candles. By default, an FVG area is valid for up to 15 candles. However, you can increase or decrease this period.
Level in Low-Risk Zone :
This feature helps reduce your risk. The method works by identifying the entire length of the three candles forming the FVG and dividing it into two equal areas. The upper area is "Premium," and the lower area is "Discount." To reduce risk, it is better for "Demand FVG" to be in the "Discount" and "Supply FVG" in the "Premium." This feature is off by default.
Issuing Signals Method :
This feature allows you to specify whether the hunt should occur only within the FVG area or if the wicks can extend outside the area.
If set to "Hunts," only signals where the wicks are within the area are issued, and the area loses its validity if the wicks extend outside.
In "Sweeps" mode, wicks can extend outside the area as long as they do not form a body within the area.
Number of Signals Allowed from a Zone :
This feature allows you to specify how many valid signals can be issued from one area.
Signal after Hunts/Sweeps :
In markets or symbols with a tendency for frequent stop hunts, this feature allows you to specify how many hunts should occur before you receive a signal to avoid receiving potentially failed signals.
How Many Hunts/Sweeps :
Enter the number of hunts you want to set for the "Signal after Hunts/Sweeps" feature here.
Show or Hide :
The number of setups formed may be very large, and displaying all of them on the chart can be distracting and messy. By default, only the last setup is displayed, but if you want to see all setups, you can turn on the relevant options.
Alert Sender :
You cannot constantly monitor multiple charts to identify trading opportunities. Using the alert sending feature can save time and improve performance.
Alerts Name : Customize the alert name to your preference.
Message Frequency : Determines the frequency of alert messages. Options include 'All' (triggers every time the function is called), 'Once Per Bar' (triggers only on the first call within the bar), and 'Once Per Bar Close' (triggers only on the final script execution of the real-time bar upon closure). The default is 'Once per Bar.'
Show Alert Time by Time Zone : Configure the alert messages to reflect any chosen time zone. For instance, input 'UTC+1' for London time. The default is 'UTC.'
By configuring these settings, traders can effectively utilize ICT setups to improve their trading strategies and outcomes.
ICT Concept [TradingFinder] Order Block | FVG | Liquidity Sweeps🔵 Introduction
The "ICT" style is one of the subsets of "Price Action" technical analysis. ICT is a method created by "Michael Huddleston", a professional forex trader and experienced mentor. The acronym ICT stands for "Inner Circle Trader".
The main objective of the ICT trading strategy is to combine "Price Action" and the concept of "Smart Money" to identify optimal entry points into trades. However, finding suitable entry points is not the only strength of this approach. With the ICT style, traders can better understand price behavior and adapt their trading approach to market structure accordingly.
Numerous concepts are discussed in this style, but the key practical concepts for trading in financial markets include "Order Block," "Liquidity," and "FVG".
🔵 How to Use
🟣Order Block
Order blocks are a specific type of "Supply and Demand" zones formed when a series of orders are placed in a block. These orders could be created by banks or other major players. Banks typically execute large orders in blocks during their trading sessions. If they were to enter the market directly with a small quantity, significant price movements would occur before the orders are fully executed, resulting in less profit. To avoid this, they divide their orders into smaller, manageable positions. Traders should look for "buy" opportunities in "demand order blocks" areas and "sell" opportunities in "supply order blocks".
🟣Liquidity
These levels are where traders aim to exit their trades. "Market Makers" or smart money usually collects or distributes their trading positions near levels where many retail traders have placed their "Stop Loss" orders. When the liquidity resulting from these losses is collected, the price often reverses direction.
A "Stop Hunt" is a move designed to neutralize liquidity generated by triggered stop losses. Banks often use significant news events to trigger stop hunts and acquire the liquidity released in the market. If, for example, they intend to execute heavy buy orders, they encourage others to sell through stop hunts.
As a result, if there is liquidity in the market before reaching the order block region, the credibility of that order block is higher. Conversely, if liquidity is near the order block, meaning the price reaches the order block before reaching the liquidity area, the credibility of that order block is lower.
🟣FVG (Fair Value Gap)
To identify the "Fair Value Gap" on the chart, one must analyze candle by candle. Focus on candles with large bodies, examining one candle and the one before it. The candles before and after this central candle should have long shadows, and their bodies should not overlap with the body of the central candle. The distance between the shadows of the first and third candles is called the FVG range.
These zone function in two ways :
•Supply and Demand zone: In this case, the price reacts to these zone, and its trend reverses.
•Liquidity zone: In this scenario, the price "fills" the zone and then reaches the order block.
Important Note: In most cases, FVG zone with very small width act as supply and demand zone, while zone with a significant width act as liquidity zone, absorbing the price.
🔵 Setting
🟣Order Block
Refine Order Block : When the option for refining order blocks is Off, the supply and demand zones encompass the entire length of the order block (from Low to High) in their standard state and remain unaltered. On the option for refining order blocks triggers the improvement of supply and demand zones using the error correction algorithm.
Refine Type : The enhancement of order blocks via the error correction algorithm can be executed through two methods: Defensive and Aggressive. In the Aggressive approach, the widest possible range is taken into account for order blocks.
Show High Levels : If major high levels are to be displayed, set the option for showing high level to Yes.
Show Low Levels : If major low levels are to be displayed, set the option for showing low level to Yes.
Show Last Support : If showing the last support is desired, set the option for showing last support to Yes.
Show Last Resistance : If showing the last resistance is desired, set the option for showing last resistance to Yes.
🟣 FVG
FVG Filter : When FVG filtering is activated, the number of FVG areas undergoes filtration based on the specified algorithm.
FVG Filter Types :
1. Very Aggressive : Apart from the initial condition, an additional condition is introduced. For an upward FVG, the maximum price of the last candle should exceed the maximum price of the middle candle. Similarly, for a downward FVG, the minimum price of the last candle should be lower than the minimum price of the middle candle. This mode eliminates a minimal number of FVGs.
2. Aggressive : In addition to the conditions of the Very Aggressive mode, this mode considers the size of the middle candle; it should not be small. Consequently, a larger number of FVGs are eliminated in this mode.
3. Defensive : Alongside the conditions of the Very Aggressive mode, this mode takes into account the size of the middle candle, which should be relatively large with the majority of it comprising the body. Furthermore, to identify upward FVGs, the second and third candles must be positive, whereas for downward FVGs, the second and third candles must be negative. This mode filters out a considerable number of FVGs, retaining only those of suitable quality.
4. Very Defensive : In addition to the conditions of the Defensive mode, the first and third candles should not be very small-bodied doji candles. This mode filters out the majority of FVGs, leaving only the highest quality ones. Show Demand FVG: Enables the display of demand-related boxes, which can be toggled between off and on. Show Supply FVG: Enables the display of supply-related boxes along the path, which can also be toggled between off and on.
🟣 Liquidity
Statics Liquidity Line Sensitivity : A value ranging from 0 to 0.4. Increasing this value reduces the sensitivity of the "Statics Liquidity Line Detection" function and increases the number of identified lines. The default value is 0.3.
Dynamics Liquidity Line Sensitivity : A value ranging from 0.4 to 1.95. Increasing this value enhances the sensitivity of the "Dynamics Liquidity Line Detection" function and decreases the number of identified lines. The default value is 1.
Statics Period Pivot : Default value is set to 8. By adjusting this value, you can specify the period for static liquidity line pivots.
Dynamics Period Pivot : Default value is set to 3. By adjusting this value, you can specify the period for dynamic liquidity line pivots.
You can activate or deactivate liquidity lines as necessary using the buttons labeled "Show Statics High Liquidity Line," "Show Statics Low Liquidity Line," "Show Dynamics High Liquidity Line," and "Show Dynamics Low Liquidity Line".
ICT Killzones Toolkit [LuxAlgo]The ICT Killzones Toolkit is a comprehensive set of tools designed to assist traders in identifying key trading zones and patterns within the market.
The ICT Killzones Toolkit includes the following Price Action components:
ICT Killzones with Pivot Highs/Lows
Order Blocks
Breaker Blocks
Fair Value Gaps
Market Structure Shifts
By combining these components, the ICT Killzones Toolkit provides traders with a comprehensive framework for analyzing the market and identifying setups of interest. Leveraging these tools effectively can enhance traders' decision-making process and improve killzones interpretability.
🔶 USAGE
In forex/futures trading, timing is crucial. ICT Killzone are specific periods when there's a higher chance of finding setups of interest. Mastering these time intervals can offer significant advantages to traders who know how to use them effectively.
The image above highlights a potential setup of interest when using the ICT Killzones Toolkit.
As another example for utilizing the ICT Killzones Toolkit, we can see in the image above when price retests setups generated from killzones such as Order Blocks or Fair Value Gaps, a potential strategy could be to look for entries on those & take profits as the next killzone appears.
🔹 Order Blocks
Order Blocks are sections on a price chart where notable buying or selling activity has occured, often signaling interest zones for institutional traders. This toolkit's Order Blocks component pinpoints these areas within the Killzone, which may act as potential support or resistance levels.
🔹 Breaker Blocks
Breaker Blocks are zones built from mitigated order blocks, and highlight zones on the chart where price has previously stalled or reversed. These areas may act as significant barriers to price movement in the future, and the Breaker Blocks component helps traders identify them for potential trading opportunities.
🔹 Fair Value Gaps
Fair value gaps are especially favored by price action traders and arise from market inefficiencies or imbalances, typically when buying and selling are unequal. These gaps often attract price movement before resuming in the same direction. the Fair Value Gaps component of the toolkit helps traders identify and analyze them.
🔹 Market Structure Shifts
Market Structure Shifts refer to significant changes in the overall structure of the market, such as shifts in trend direction, volatility, or trading activity. These shifts can provide valuable insights into market sentiment and potential trading opportunities, and the Market Structure Shifts component helps traders identify and interpret them.
Overall, the ICT Killzone Toolkit combines these components to provide traders with a comprehensive framework for analyzing the markets and identifying high-probability trading setups.
🔶 SETTINGS
🔹 ICT Killzones
Asian, London Open, New York, and London Close: toggles the visibility of specific Killzones, allowing users to customize time periods and Killzone colors.
Killzone Lines : Top/Bottom, Mean and Extend Top/Bottom: toggles the visibility of the Killzone's pivot high and low lines, mean (average) line, and allows users to extend the pivot lines.
Killzone Labels: Toggles the visibility of the Killzone labels.
Display Killzones within Timeframes Up To: Toggles the visibility of the Killzones up to selected Timeframes.
Open Price, Separator, Label, and Color: toggles the visibility of the open price of the Killzones or for the day, week, or month. If the day, week, or month is selected, a separator will be displayed to highlight the beginning of each respective period. Additionally, users can customize the color and toggle the label as needed.
🔹 Order Blocks & Breaker Blocks
Order Blocks | Breaker Blocks: toggles the visibility of the order blocks & breaker blocks.
Swing Detection Length: lookback period used for the detection of the swing points used to create order blocks & breaker blocks.
Mitigation Price: allows users to select between closing price or wick of the candle.
Use Candle Body in Detection: allows users to use candle bodies as order block areas instead of the full candle range.
Remove Mitigated Order Blocks & Breaker Blocks: toggles the visibility of the mitigated order blocks & breaker blocks.
Extend Order Blocks & Breaker Blocks: enables processing of the order blocks & breaker blocks beyond the boundaries of the killzones.
Display Order Blocks & Breaker Blocks: enables the display of the first, last, or all occurrences of the order blocks & breaker blocks.
Order Blocks : Bullish, Bearish Color: color customization option for order blocks.
Breaker Blocks : Bullish, Bearish Color: color customization option for breaker blocks.
Show Order Blocks & Breaker Blocks Text: toggles the visibility of the order blocks & breaker blocks labels.
🔹 Market Structure Shifts
Market Structure Shifts: toggles the visibility of the market structure shifts.
Detection Length: market structure shift detection length.
Display Market Structure Shifts: enables the display of the first, last, or all occurrences of the market structure shifts.
Market Structure Shifts : Bullish, Bearish Color: color custumization option for market structure shifts.
Show Market Structure Shifts Text: toggles the visibility of the market structure shifts labels.
🔹 Fair Value Gaps
Fair Value Gaps: toggles the visibility of the fair value gaps.
Fair Value Gap Width Filter: filtering threshold wile detecting fair value gaps.
Remove Mitigated Fair Value Gaps: removes mitigated fair value gaps.
Extend Fair Value Gaps: enables processing of the fair value gaps beyond the boundaries of the killzones.
Display Fair Value Gaps: enables the display of the first, last, or all occurrences of the fair value gaps.
Bullish Imbalance Color: color customization option.
Bearish Imbalance Color: color customization option.
Show Fair Value Gaps Text: toggles the visibility of the fair value gaps labels.
🔶 RELATED SCRIPTS
Smart-Money-Concepts
Order-Blocks-Breaker-Blocks
Thanks to our community for recommending this script. For more conceptual scripts and related content, we welcome you to explore by visiting >>> LuxAlgo-Scripts .
Market Structure Trailing Stop MTF [Inspired by LuxAlgo]# Market Structure Trailing Stop MTF
**OPEN-SOURCE SCRIPT**
*208k+ views on original · Modified for MTF Support*
This indicator is a direct adaptation of the renowned **Market Structure Trailing Stop** by **LuxAlgo** (original script: [Market Structure Trailing Stop ]()). The core logic remains untouched, providing dynamic trailing stops based on market structure breaks (CHoCH/BOS). The **only modification** is the addition of **Multi-Timeframe (MTF) support**, allowing users to apply the trailing stops and structures from **higher timeframes (HTF)** directly on their current chart. This enhances usability for traders analyzing cross-timeframe confluence without switching charts.
**Special thanks to LuxAlgo** for releasing this powerful open-source tool under CC BY-NC-SA 4.0. Your contributions to the TradingView community have inspired countless traders—grateful for the solid foundation!
## 🔶 How the Script Works: A Deep Dive
At its heart, this indicator detects **market structure shifts** (bullish or bearish breaks of swing highs/lows) and uses them to generate **adaptive trailing stops**. These stops trail the price while protecting profits and acting as dynamic support/resistance levels. The MTF enhancement pulls this logic from user-specified higher timeframes, overlaying HTF structures and stops on the lower timeframe chart for seamless multi-timeframe analysis.
### Core Logic (Unchanged from LuxAlgo's Original)
1. **Pivot Detection**:
- Uses `ta.pivothigh()` and `ta.pivotlow()` with a user-defined lookback (`length`) to identify swing highs (PH) and lows (PL).
- Coordinates (price `y` and bar index/time `x`) are stored in persistent variables (`var`) for tracking recent pivots.
2. **Market Structure Detection**:
- **Bullish Structure (BOS/CHoCH)**: Triggers when `close > recent PH` (break above swing high).
- If `resetOn = 'CHoCH'`, resets only on major shifts (Change of Character); otherwise, on all breaks.
- Sets trend state `os = 1` (bullish) and highlights the break with a horizontal line (dashed for CHoCH, dotted for BOS).
- Initializes trailing stop at the local minimum (lowest low since the pivot) using a backward loop: `btm = math.min(low , btm)`.
- **Bearish Structure**: Triggers when `close < recent PL`, mirroring the bullish logic (`os = -1`, local maximum for stop).
- Structure state `ms` tracks the break type (1 for bull, -1 for bear, 0 neutral), resetting based on user settings.
3. **Trailing Stop Calculation**:
- Tracks **trailing max/min**:
- On new bull structure: Reset `max = close`.
- On new bear: Reset `min = close`.
- Otherwise: `max = math.max(close, max)` / `min = math.min(close, min)`.
- **Stop Adjustment** (the "trailing" magic):
- On fresh structure: `ts = btm` (bull) or `top` (bear).
- In ongoing trend: Increment/decrement by a percentage of the max/min change:
- Bull: `ts += (max - max ) * (incr / 100)`
- Bear: `ts += (min - min ) * (incr / 100)`
- This creates a **ratcheting effect**: Stops move favorably with the trend but never against it, converging toward price at a controlled rate.
- **Visuals**:
- Plots `ts` line colored by trend (teal for bull, red for bear).
- Fills area between `close` and `ts` (orange on retracements).
- Draws structure lines from pivot to break point.
4. **Edge Cases**:
- Variables like `ph_cross`/`pl_cross` prevent multiple triggers on the same pivot.
- Neutral state (`ms = 0`) preserves prior `max/min` until a new structure.
### MTF Enhancement (Our Addition)
- **request.security() Integration**:
- Wraps the entire core function `f()` in a security call for each timeframe (`tf1`, `tf2`).
- Returns HTF values (e.g., `ts1`, `os1`, structure times/prices) to the chart's context.
- Uses `lookahead=barmerge.lookahead_off` for accurate historical repainting-free data.
- Structures are drawn using `xloc.bar_time` to align HTF lines precisely on the LTF chart.
- **Multi-Output Handling**:
- Separate plots/fills/lines for each TF (e.g., `plot_ts1`, `plot_ts2`).
- Colors and toggles per TF to distinguish HTF1 (e.g., teal/red) from HTF2 (e.g., blue/maroon).
- **Benefits**: Spot HTF bias on LTF entries, e.g., enter longs only if both TF1 (1H) and TF2 (4H) show bullish `os=1`.
This keeps the script lightweight—**no repainting, max 500 lines**, and fully compatible with LuxAlgo's original behavior when TFs are set to the chart's timeframe.
## 🔶 SETTINGS
### Core Parameters
- **Pivot Lookback** (`length = 14`): Bars left/right for pivot detection. Higher = smoother structures, fewer signals; lower = more noise.
- **Increment Factor %** (`incr = 100`): Speed of stop convergence (0-∞). 100% = full ratchet (mirrors max/min exactly); <100% = slower trail, reduces whipsaws.
- **Reset Stop On** (`'CHoCH'`): `'CHoCH'` = Reset only on major reversals (dashed lines); `'All'` = Reset on every BOS/CHoCH (tighter stops).
### MTF Support
- **Timeframe 1** (`tf1 = ""`): HTF for first set (e.g., "1H"). Empty = current chart.
- **Timeframe 2** (`tf2 = ""`): Second HTF (e.g., "4H"). Enables dual confluence.
### Display Toggles
- **Show Structures** (`true`): Draws horizontal lines for breaks (per TF colors).
- **Show Trailing Stop TF1/TF2** (`true`): Plots the stop line.
- **Show Fill TF1/TF2** (`true`): Area fill between close and stop.
### Candle Coloring (Optional)
- **Color Candles** (`false`): Enables custom `plotcandle` for body/wick/border.
- **Candle Color Based On TF** (`"None"`): `"TF1"`, `"TF2"`, or none. Colors bull trend green, bear red.
- **Candle Colors**: Separate inputs for bull/bear body, wick, border (e.g., solid green body, transparent wick).
### Alerts
- **Enable MS Break Alerts** (`false`): Notifies on structure breaks (bull/bear per TF) **only on bar close** (`barstate.isconfirmed` + `alert.freq_once_per_bar_close`).
- **Enable Stop Hit Alerts** (`false`): Triggers on stop breaches (long/short per TF), using `ta.crossunder/crossover`.
### Colors
- **TF1 Colors**: Bullish (teal), Bearish (red), Retracement (orange).
- **TF2 Colors**: Bullish (blue), Bearish (maroon), Retracement (orange).
- **Area Transparency** (`80`): Fill opacity (0-100).
## 🔶 USAGE
Trailing stops shine in **trend-following strategies**:
- **Entries**: Use structure breaks as signals (e.g., long on bullish BOS from HTF1).
- **Exits**: Trail stops for profit-locking; alert on hits for automation.
- **Confluence**: Overlay HTF1 (e.g., 1H) for bias, HTF2 (e.g., Daily) for major levels—enter LTF only on alignment.
- **Risk Management**: Lower `incr` avoids early stops in chop; reset on `'All'` for aggressive trailing.
! (i.imgur.com)
*HTF1 shows bullish structure (teal line), trailing stop ratchets up—long entry confirmed on LTF pullback.*
! (i.imgur.com)
*TF1 (blue) bearish, TF2 (red) neutral—avoid shorts until alignment.*
! (i.imgur.com)
*Colored based on TF1 trend: Green bodies on bull `os=1`.*
Pro Tip: Test on demo—pair with LuxAlgo's other tools like Smart Money Concepts for full structure ecosystem.
## 🔶 DETAILS: Mathematical Breakdown
On bullish break:
- Local min: `btm = ta.lowest(n - ph_x)` (optimized loop equivalent).
- Stop init: `ts = btm`.
- Update: `Δmax = max - max `, `ts_new = ts + Δmax * (incr/100)`.
Bearish mirrors with `Δmin` (negative, so decrements `ts`).
In MTF: HTF `time` aligns lines via `line.new(htf_time, level, current_time, level, xloc.bar_time)`.
No logs/math libs needed—pure Pine v5 efficiency.
## Disclaimer
This is for educational purposes. Not financial advice. Backtest thoroughly. Original by LuxAlgo—modify at your risk. See TradingView's (www.tradingview.com). Licensed under CC BY-NC-SA 4.0 (attribution to LuxAlgo required).
TMB Invest - Smart Money Concept StrategyEnglish:
**Quick Overview**
The "TMB_SMC_Strategy_v1.1.3" combines a classic trend filter using two EMAs with contrarian RSI entries and simple SMC elements (Fair Value Gaps & Order Blocks). Stop-loss and take-profit orders are volatility-adaptive and controlled via the ATR. An integrated dashboard displays the setup status, stop-loss/take-profit levels, entry reference, and trend, RSI, and ATR values.
---
## Operating Principle
1. **Trend Filter:** A fast EMA (default 50) is compared to a slow EMA (default 200). Trading occurs only in the direction of the trend: long in uptrends, short in downtrends.
2. **Timing via RSI:** Contrarian entries within the trend. Go long when the RSI is below a buy level (default 40); Short when the RSI is above a sell level (standard 60).
3. **Structure Check (SMC Proxy):** An "FVG Touch" serves as additional confirmation that an inefficient price zone has been tested. Order blocks are visualized for guidance but are not a direct entry trigger.
4. **Risk Management via ATR:** Stop-loss and take-profit levels are set as multipliers of the current ATR (e.g., SL = 1×ATR, TP = 2×ATR). This allows target and risk distances to adjust to market volatility.
5. **Simple Position Logic:** Only one position is held at a time (no pyramiding). After entry, stop and limit orders (bracket exit) are automatically placed.
---
## Input Values
* **EMA Fast / EMA Slow:** Lengths of the moving averages for the trend filter.
* **RSI Length / Levels:** Length of the RSI as well as buy and sell thresholds (contra signals within the trend direction).
* **Take Profit (RR) / Stop Loss (RR):** ATR multipliers for TP and SL.
* **Show FVGs & Order Blocks:** Toggles the visual SMC elements (zones/boxes) on or off.
--
## Signals & Execution
* **Long Setup:** Uptrend (fast EMA above slow EMA) **and** RSI below the buy level **and** a current FVG signal in a bullish direction.
* **Short Setup:** Downtrend (fast EMA below slow EMA) **and** RSI above the sell level **and** a current FVG touch in a bearish direction.
* **Entry & Exit:** If the setup is met, the market is entered; stop-loss/take-profit orders are placed immediately according to ATR multiples.
--
## Visualization
* **EMAs:** The fast and slow EMAs are plotted to illustrate the trend.
* **FVGs:** Fair Value Gaps are drawn as semi-transparent boxes in the trend color and projected slightly into the future.
* **Order Blocks:** Potential order block zones from the previous candle are visually highlighted (for informational purposes only).
---
## Integrated Dashboard
A compact table dashboard (bottom left) displays:
* Current **Setup Status** (Long/Short active, Long/Short ready, No Setup),
* **Stop-Loss**, **Take-Profit**, and **Entry Reference**,
* **Trend Status** (Bull/Bear/Sideways),
* **RSI Value**, and **ATR Value**.
Active long/short positions are highlighted in color (green/red).
--
## Practical Guide
1. **Place on Chart** and select the desired timeframe.
2. **Calibrate Parameters** (EMA lengths, RSI levels, ATR multipliers) to match the market and timeframe.
3. **Backtest** across different market phases; prioritize robustness over maximum curve fit.
4. **Fine-Tuning:**
* Shorter EMAs are often useful intraday (e.g., 20/100 or 34/144).
* Adjust RSI levels to market characteristics (45/55 for aggressive trading, 30/70 for conservative trading).
* Increase or decrease ATR multipliers depending on volatility/trading style.
--
## Notes, Limitations & Extensions
* **FVG Definition:** The FVG detection used here is intentionally simplified. Those who prefer a more rigorous approach can switch to a 3-candle definition and fill levels.
* **Order Blocks:** These primarily serve as a guide. Integration into entry/exit logic (e.g., retests) is possible as an extension.
* **Backtest Realism:** Fills may differ from the displayed closing price. For greater accuracy, intrabar backtests or an entry indicator based on the average position price are conceivable.
* **Alerts:** Currently, no alert conditions are defined; these can be added for long/short setups and status messages.
* **Position Management:** By default, no scaling is performed. Partial sales, trailing stops, or multiple entries can be added.
---
## Purpose & Benefits
The strategy offers a clear, modular framework: trend filter (direction), RSI contra timing (entry), SMC proxy via FVG Touch (structure), and ATR-based exits (risk adaptation). This makes it robust, easy to understand, and highly extensible—both for discretionary traders who appreciate visual SMC elements and for systematic testers who prefer a clean, parameterizable foundation.
SMC Analysis - Fair Value Gaps (Enhanced)SMC Analysis - Fair Value Gaps (Enhanced) Script Summary
Overview
The "SMC Analysis - Fair Value Gaps (Enhanced)" script, written in Pine Script (version 6), is a technical analysis indicator designed for TradingView to identify and visualize Fair Value Gaps (FVGs) on a price chart. It supports both the main timeframe and multiple higher timeframes (MTF) for comprehensive market analysis. FVGs are price gaps formed by a three-candle pattern, indicating potential areas of market inefficiency where price may return to fill the gap.
Key Features
FVG Detection:
Identifies bullish FVGs: Occur when the high of a candle two bars prior is lower than the low of the current candle, with the middle candle being bullish (close > open).
Identifies bearish FVGs: Occur when the low of a candle two bars prior is higher than the high of the current candle, with the middle candle being bearish (close < open).
Visualizes FVGs as colored boxes on the chart (green for bullish, red for bearish).
Mitigation Tracking:
Tracks when FVGs are touched (price overlaps the gap range) or mitigated (price fully closes the gap).
Strict Mode: Marks an FVG as mitigated when price touches the gap range.
Normal Mode: Requires a full breakthrough (price crossing the gap’s bottom for bullish FVGs or top for bearish FVGs) for mitigation.
Optionally converts FVG box borders to dashed lines and increases transparency when partially touched.
Multi-Timeframe (MTF) Support:
Analyzes FVGs on three user-defined higher timeframes (default: 15m, 60m, 240m).
Displays MTF FVGs with distinct labels and slightly more transparent colors.
Ensures no duplicate processing of MTF bars to maintain performance.
Customization Options:
FVG Length: Adjustable duration for how long FVGs are displayed (default: 20 bars).
Show/Hide FVGs: Toggle visibility for main timeframe and each MTF.
Color Customization: User-defined colors for bullish and bearish FVGs (default: green and red).
Display Options: Toggle for showing dashed lines after partial touches and strict mitigation mode.
Performance Optimization:
Limits the number of displayed boxes (50 for main timeframe, 20 per MTF) to prevent performance issues.
Automatically removes older boxes to maintain a clean chart.
Functionality
Visualization: Draws boxes around detected FVGs, with customizable colors and text labels ("FVG" for main timeframe, "FVG " for MTF).
Dynamic Updates: Extends or terminates FVG boxes based on mitigation status and user settings.
Efficient Storage: Uses arrays to manage FVG data (boxes, tops, bottoms, indices, mitigation status, and touch status) separately for main and MTF analyses.
Use Case
This indicator is designed for traders using Smart Money Concepts (SMC) to identify areas of market inefficiency (FVGs) for potential price reversals or continuations. The MTF support allows analysis across different timeframes, aiding in confirming trends or spotting higher-timeframe support/resistance zones.
FlowScope [Hapharmonic]FlowScope: Uncover the Market's True Intent 🔬
Ever wished you could look inside the candles and see where the real action is happening? FlowScope is your microscope for the market's flow, designed to give you a powerful edge by revealing the volume distribution that price action alone can't show you.
Instead of just looking at the open, high, low, and close, FlowScope lets you dive deeper into the market's auction process. It groups candles together and builds a detailed Volume Profile for that period, showing you exactly where the trading happened and revealing the story behind the price action.
Let's explore how you can use it to gain a powerful new edge.
🧐 Core Concept: How It Works
At its heart, FlowScope does three key things:
It Groups Candles: You decide how many candles to group together. For example, setting " Group Candles " to 4 on a 5-minute chart effectively gives you a detailed 20-minute candle and profile. This helps you see the bigger picture and filter out market noise.
It Builds a Volume Profile: For each group, FlowScope analyzes the volume at every single price level. It then displays this as a horizontal histogram (we call this a "footprint" or profile). Longer bars mean more volume was traded at that price, indicating a "fair" price or an area of acceptance. Shorter bars mean price moved through quickly, indicating rejection.
It Creates a Custom "Grouped Candle": To summarize the group's overall price action, FlowScope draws a single, custom candle representing the entire group's:
Open: The open of the first candle in the group.
High: The absolute highest price reached within the group.
Low: The absolute lowest price reached within the group.
Close: The close of the last candle in the group.
This gives you a crystal-clear view of the group's net result, free from the back-and-forth noise of the individual candles inside it.
Below are some of the stunning preset color palettes you can choose from to customize your view:
🚀 How to Use: Practical Applications
FlowScope isn't just for looking pretty; it's a powerful analysis tool. Here are a few ways to integrate it into your trading:
Identify High-Volume Nodes (HVNs): Look for the longest bars in the profile. These are price levels where the market spent the most time and traded the most volume. HVNs often act as powerful "magnets" for price, becoming key areas of support and resistance.
Spot Low-Volume Nodes (LVNs): These are areas with very short bars or gaps in the profile. They represent price levels that the market moved through quickly and inefficiently. If price returns to an LVN, it's likely to move through it quickly again.
Analyze the Summary Box: This is where the real magic happens! ✨
Total Volume (Σ): The total volume for the entire group.
Buy (B) vs. Sell (S) Volume: FlowScope analyzes the lower timeframe action to estimate the buying and selling pressure that made up the total volume. Is a big red candle mostly aggressive selling, or was it just a lack of buyers? The B/S data gives you clues. A high-volume candle with nearly 50/50 buy/sell pressure might indicate absorption or a potential reversal.
Use the Grouped Candle for Clarity: Is the market in a clear uptrend, or is it just choppy? The grouped candle can give you a much clearer signal. A series of strong, green grouped candles shows much more conviction than a mix of small green and red candles.
⚙️ Settings & Customization
This is where you can truly make FlowScope your own. Let's walk through each setting.
Profile Settings
Group Candles: The number of standard chart candles you want to combine into a single FlowScope profile. A setting of 1 will analyze every single bar. A higher number gives you a broader market view. When Group Candles is set to 5, the data from the 5 individual candles are combined, and the volume is calculated accordingly.
Max Profile Boxes: This setting is more than just a number; it's a smart limit that ensures your profiles are always readable and relevant to the current market conditions.
Adaptive Sizing (The Ideal Goal): FlowScope first tries to create the perfect profile by making each volume box's height proportional to the current market volatility. It calculates an "ideal" box height based on the Average True Range ( ATR / 10 ). This is powerful because it automatically adapts: you get smaller, more detailed boxes in quiet, low-volatility markets, and larger, clearer boxes in volatile, fast-moving markets.
The Safety Cap (Your Setting): However, what if you group several candles during a massive price move? The price range could be huge! If we only used the small, ATR-based box height, you might end up with hundreds of tiny, unreadable boxes. This is where your Max Profile Boxes setting (defaulting to 50) comes in. It acts as a maximum detail cap . If the adaptive, volatility-based calculation determines that it would need more boxes than your setting (e.g., more than 50), the indicator will override it. It will then simply divide the entire price range of the group into exactly the number of boxes you specified (e.g., 50).
In short: You are setting the maximum allowable detail. FlowScope intelligently adapts the profile's granularity below that limit based on market volatility, ensuring you always get a clear and meaningful picture.
Style
Show Profile BG: A simple toggle to show or hide the faint background color behind the volume bars. Turning it off can create a cleaner look.
Color Mode: This dropdown controls how the volume profile text is colored.
Custom Gradient: This mode uses the three custom colors you select in the "Profile Colors" section to create a beautiful gradient across the profile.
Candle Color: This mode colors the profile based on whether the grouped candle was bullish (green) or bearish (red). The color will be a gradient, with the most intense color applied to the box with the highest volume; the colors of the other boxes will fade out from that point. It's a great way to see the profile's "mood" at a glance.
Profile Colors 🎨
Use Preset Palette: This is the master switch!
If checked: You can choose from 10 stunning, pre-designed color palettes from the Palette dropdown. The custom color pickers below will be disabled.
If unchecked (Default): The Palette dropdown will be disabled, and you can now choose your own three colors for the gradient.
Palette: (Only active when "Use Preset Palette" is checked) . Choose from 10 luxurious, eye-catching color schemes like "Solar Flare" or "Deep Space" to instantly change the look and feel of your chart.
Low Price / Mid Price / High Price: (Only active when "Use Preset Palette" is unchecked) . These three color pickers allow you to design your own unique gradient for the Custom Gradient color mode.
Candle Display
These settings control the custom "Grouped Candle" that summarizes the profile. When using the "Show Custom Candle" feature, you should change the chart's candlestick display to Bars for a cleaner view.
Show Custom Candle: This is the main toggle. When you check this box, the original chart candles will be hidden, and your custom FlowScope candle will be displayed instead. This custom candle is intentionally small to ensure it does not visually overlap with the volume profile boxes.
Show Body: (Only active when "Show Custom Candle" is checked) . Toggles the visibility of the candle's body.
Wick Width & Body Width: (Only active when "Show Custom Candle" is checked) . These sliders let you control the thickness of the wick and body lines to match your personal style.
Up Color / Down Color: (Only active when "Show Custom Candle" is checked) . Choose the colors for your bullish and bearish custom candles.
Experiment with the settings, find a style that works for you, and start seeing the market in a whole new light.
Happy trading! 📈😊
BTC Power Law Valuation BandsBTC Power Law Rainbow
A long-term valuation framework for Bitcoin based on Power Law growth — designed to help identify macro accumulation and distribution zones, aligned with long-term investor behavior.
🔍 What Is a Power Law?
A Power Law is a mathematical relationship where one quantity varies as a power of another. In this model:
Price ≈ a × (Time)^b
It captures the non-linear, exponentially slowing growth of Bitcoin over time. Rather than using linear or cyclical models, this approach aligns with how complex systems, such as networks or monetary adoption curves, often grow — rapidly at first, and then more slowly, but persistently.
🧠 Why Power Law for BTC?
Bitcoin:
Has finite supply and increasing adoption.
Operates as a monetary network , where Metcalfe’s Law and power laws naturally emerge.
Exhibits exponential growth over logarithmic time when viewed on a log-log chart .
This makes it uniquely well-suited for power law modeling.
🌈 How to Use the Valuation Bands
The central white line represents the modeled fair value according to the power law.
Colored bands represent deviations from the model in logarithmic space, acting as macro zones:
🔵 Lower Bands: Deep value / Accumulation zones.
🟡 Mid Bands: Fair value.
🔴 Upper Bands: Euphoria / Risk of macro tops.
📐 Smart Money Concepts (SMC) Alignment
Accumulation: Occurs when price consolidates near lower bands — often aligning with institutional positioning.
Markup: As price re-enters or ascends the bands, we often see breakout behavior and trend expansion.
Distribution: When price extends above upper bands, potential for exit liquidity creation and distribution events.
Reversion: Historically, price mean-reverts toward the model — rarely staying outside the bands for long.
This makes the model useful for:
Cycle timing
Long-term DCA strategy zones
Identifying value dislocations
Filtering short-term noise
⚠️ Disclaimer
This tool is for educational and informational purposes only . It is not financial advice. The power law model is a non-predictive, mathematical framework and does not guarantee future price movements .
Always use additional tools, risk management, and your own judgment before making trading or investment decisions.
Apex Edge – Liquidity RaiderApex Edge – Liquidity Raider
The Predator That Hunts Where Retail Never Looks
The Liquidity Raider is not your average liquidity line plotter.
This is an institutional-grade hunting system that tracks the pools of liquidity Smart Money algos stalk — and tells you exactly when price is circling in for the strike.
Where most retail tools simply mark lines, this one acts like a predator:
Scans the chart dynamically to detect clustered highs & lows (pivot-based liquidity zones).
Filters noise with sensitivity & price rounding so you only get real liquidity levels — not every random swing.
Plots live BSL (Buy-Side Liquidity) & SSL (Sell-Side Liquidity) lines in clean dotted format.
Auto-deletes levels when swept, so your chart stays clean and focused.
Triggers directional arrows when price comes within your specified % distance to the target liquidity pool — before the market moves.
EMA confluence layer lets you align with institutional flow (customizable Fast & Slow EMAs).
Core Power
Cluster Logic – Finds high-probability liquidity zones using repeated pivot levels.
Sweep Awareness – Lines vanish the moment liquidity is taken, keeping focus on the next pool.
Proximity Strike Detection – Arrow signals only when price is within striking range.
Directional Clarity – Red arrows = targeting BSL, Green arrows = targeting SSL.
Scalable Across Timeframes – Adapts to your chart’s timeframe with dynamic lookback scaling.
Institutional Flow Filter – Optional EMA confirmation keeps you aligned with the real trend.
How to Use
Identify liquidity pools – Dotted green = buy-side, dotted red = sell-side.
Watch proximity arrows – These mean price is in range and hunting that pool.
Align with EMA bias – Enter only in the direction of institutional momentum.
Target the sweep – Your take profit is where the liquidity is resting.
Why Liquidity Raider Wins
This is not a lagging signal system.
It’s a real-time, clean, predictive tool designed to mimic the targeting logic of high-frequency algos.
By removing swept levels and focusing only on the next available pools, Liquidity Raider keeps you one step ahead of the crowd — and perfectly positioned for the kill shot.
Liquidity mark-out indicator(by Lumiere)This indicator marks out every High that has a bullish candle followed by a bearish one, vice versa for lows.
Once the price reaches the marked-out liquidity, the line is removed automatically.
This indicator only shows the current liquidity of the time frame you are at.
(To get it look like the picture just chance the length to 30-50)
Key Features of the Liquidity Mark-Out Indicator:
🔹 Identifies Liquidity Zones – Marks highs and lows based on candlestick patterns.
🔹 Customizable Settings – Toggle highs/lows visibility 🎚️, adjust line colors 🎨, and set line length (bars) 📏.
🔹 Smart Clean-Up – Automatically removes swept levels (when price breaks through) for a clean chart 🧹.
🔹 Pattern-Based Detection –
Highs: Detects two-candle reversal patterns (🟢 bullish close → 🔴 bearish close).
Lows: Detects two-candle reversal patterns (🔴 bearish close → 🟢 bullish close).
🔹 Dynamic Lines – Projects liquidity levels forward (adjustable length) to track key zones 📈.
Perfect For Traders Looking To:
✅ Spot potential liquidity grabs 🎯
✅ Identify key support/resistance levels 🛑
✅ Clean up their chart from outdated levels 🖥️
COT3 - Flip Strength Index - Invincible3This indicator uses the TradingView COT library to visualize institutional positioning and potential sentiment or trend shifts. It compares the long% vs short% of commercial and non-commercial traders for both Pair A and Pair B, helping traders identify trend strength, market overextension, and early reversal signals.
🔷 COT RSI
The COT RSI normalizes the net positioning difference between non-commercial and commercial traders over (N=13, 26, and 52)-week periods. It ranges from 0 to 100, highlighting when sentiment is at bullish or bearish extremes.
COT RSI (N)= ((NC - C)−min)/(max-min) x100
🟡 COT Index
The COT Index tracks where the current non-commercial net position lies within its 1-year and 3-year historical range. It reflects institutional accumulation or distribution phases.
Strength represents the magnitude of that positioning bias, visualized through normalized RSI-style metrics.
COT Index (N)= (NC net)/(max-min) x100
🔁 Flip Detection
Flip refers to the crossovers between long% and short%, indicating a change in directional bias among trader groups. When long positions exceed shorts (or vice versa), it signals a possible market flip in sentiment or trend.
For example, Pair B commercial flip is calculated as:
Long% = (Long/Open Interest)×100
Short% = (Short/Open Interest)×100
Flip = Long%−Short%
A bullish flip occurs when long% overtakes short%, and vice versa for a bearish flip. These flips often precede price trend changes or confirm sentiment breakouts.
Flip captures how far current positioning deviates from historical norms — highlighting periods of institutional overconfidence or exhaustion, often leading to significant market turns.
This combination offers a multi-layered edge for identifying when smart money is flipping direction, and whether that flip has strong conviction or is likely to fade.
..........................................................................................................................................................
Trading Sessions [BigBeluga]
This indicator brings Smart Money Concept (ICT) session logic to life by plotting key global trading sessions with volume and delta analytics. It not only highlights session ranges but also tracks their midpoints — which often act as intraday support/resistance levels.
🔵 KEY FEATURES
Visual session boxes: Plots boxes for Tokyo, London, New York, and Sydney sessions based on user-defined UTC+0 time ranges.
Volume & delta metrics: Displays total volume and delta volume (buy–sell difference) within each session.
Mid, High & Low Range Extension: Once a session ends, the high, low, and midpoint levels automatically extend — ideal for detecting SR zones.
Session labels: Each box includes a label with session name, time, volume, and delta for quick reference.
Custom session control: Enable or disable sessions individually and configure start/end times.
Clean aesthetics: Transparent shaded boxes with subtle borders make it easy to overlay without clutter.
Sessions Dashboard: Shows the time range of each session and tells you whether the session is currently active.
🔵 USAGE
Enable the sessions you want to monitor (e.g., New York or Tokyo) from the settings.
Use session volume and delta values to gauge the strength and direction of institutional activity.
Watch for price interaction with the extended range — it often acts as dynamic support/resistance after the session ends.
Overlay it with liquidity tools or breaker blocks for intraday strategy alignment.
🔵 EXAMPLES
Extended Future Range acted as resistance/support.
Delta value helped confirm bullish pressure during New York open.
Multiple sessions helped identify kill zone overlaps and high-volume turns.
Trading Sessions is more than just a visual scheduler — it's a precision tool for traders who align with session-based volume dynamics and ICT methodology. Use it to define high-probability zones, confirm volume shifts, and read deeper into the true intent behind market structure.
Enhanced KLSE Banker Flow Oscillator# Enhanced KLSE Banker Flow Oscillator
## Description
The Enhanced KLSE Banker Flow Oscillator is a sophisticated technical analysis tool designed specifically for the Malaysian stock market (KLSE). This indicator analyzes price and volume relationships to identify potential smart money movements, providing early signals for market reversals and continuation patterns.
The oscillator measures the buying and selling pressure in the market with a focus on detecting institutional activity. By combining money flow calculations with volume filters and price action analysis, it helps traders identify high-probability trading opportunities with reduced noise.
## Key Features
- Dual-Timeframe Analysis: Combines long-term money flow trends with short-term momentum shifts for more accurate signals
- Adaptive Volume Filtering: Automatically adjusts volume thresholds based on recent market conditions
- Advanced Divergence Detection: Identifies potential trend reversals through price-flow divergences
- Early Signal Detection: Provides anticipatory signals before major price movements occur
- Multiple Signal Types: Offers both early alerts and strong confirmation signals with clear visual markers
- Volatility Adjustment: Adapts sensitivity based on current market volatility for more reliable signals
- Comprehensive Visual Feedback: Color-coded oscillator, signal markers, and optional text labels
- Customizable Display Options: Toggle momentum histogram, early signals, and zone fills
- Organized Settings Interface: Logically grouped parameters for easier configuration
## Indicator Components
1. Main Oscillator Line: The primary banker flow line that fluctuates above and below zero
2. Early Signal Line: Secondary indicator showing potential emerging signals
3. Momentum Histogram: Visual representation of flow momentum changes
4. Zone Fills: Color-coded background highlighting positive and negative zones
5. Signal Markers: Visual indicators for entry and exit points
6. Reference Lines: Key levels for strong and early signals
7. Signal Labels: Optional text annotations for significant signals
## Signal Types
1. Strong Buy Signal (Green Arrow): Major bullish signal with high probability of success
2. Strong Sell Signal (Red Arrow): Major bearish signal with high probability of success
3. Early Buy Signal (Blue Circle): First indication of potential bullish trend
4. Early Sell Signal (Red Circle): First indication of potential bearish trend
5. Bullish Divergence (Yellow Triangle Up): Price making lower lows while flow makes higher lows
6. Bearish Divergence (Yellow Triangle Down): Price making higher highs while flow makes lower highs
## Parameters Explained
### Core Settings
- MFI Base Length (14): Primary calculation period for money flow index
- Short-term Flow Length (5): Calculation period for early signals
- KLSE Sensitivity (1.8): Multiplier for flow calculations, higher = more sensitive
- Smoothing Length (5): Smoothing period for the main oscillator line
### Volume Filter Settings
- Volume Filter % (65): Minimum volume threshold as percentage of average
- Use Adaptive Volume Filter (true): Dynamically adjusts volume thresholds
### Signal Levels
- Strong Signal Level (15): Threshold for strong buy/sell signals
- Early Signal Level (10): Threshold for early buy/sell signals
- Early Signal Threshold (0.75): Sensitivity factor for early signals
### Advanced Settings
- Divergence Lookback (34): Period for checking price-flow divergences
- Show Signal Labels (true): Toggle text labels for signals
### Visual Settings
- Show Momentum Histogram (true): Toggle the momentum histogram display
- Show Early Signal (true): Toggle the early signal line display
- Show Zone Fills (true): Toggle background color fills
## How to Use This Indicator
### Installation
1. Add the indicator to your TradingView chart
2. Default settings are optimized for KLSE stocks
3. Customize parameters if needed for specific stocks
### Basic Interpretation
- Oscillator Above Zero: Bullish bias, buying pressure dominates
- Oscillator Below Zero: Bearish bias, selling pressure dominates
- Crossing Zero Line: Potential shift in market sentiment
- Extreme Readings: Possible overbought/oversold conditions
### Advanced Interpretation
- Divergences: Early warning of trend exhaustion
- Signal Confluences: Multiple signal types appearing together increase reliability
- Volume Confirmation: Signals with higher volume are more significant
- Momentum Alignment: Histogram should confirm direction of main oscillator
### Trading Strategies
#### Trend Following Strategy
1. Identify market trend direction
2. Wait for pullbacks shown by oscillator moving against trend
3. Enter when oscillator reverses back in trend direction with a Strong signal
4. Place stop loss below/above recent swing low/high
5. Take profit at previous resistance/support levels
#### Counter-Trend Strategy
1. Look for oscillator reaching extreme levels
2. Identify divergence between price and oscillator
3. Wait for oscillator to cross Early signal threshold
4. Enter position against prevailing trend
5. Use tight stop loss (1 ATR from entry)
6. Take profit at first resistance/support level
#### Breakout Confirmation Strategy
1. Identify stock consolidating in a range
2. Wait for price to break out of range
3. Confirm breakout with oscillator crossing zero line in breakout direction
4. Enter position in breakout direction
5. Place stop loss below/above the breakout level
6. Trail stop as price advances
### Signal Hierarchy and Reliability
From highest to lowest reliability:
1. Strong Buy/Sell signals with divergence and high volume
2. Strong Buy/Sell signals with high volume
3. Divergence signals followed by Early signals
4. Strong Buy/Sell signals with normal volume
5. Early Buy/Sell signals with high volume
6. Early Buy/Sell signals with normal volume
## Complete Trading Plan Example
### KLSE Market Trading System
#### Pre-Trading Preparation
1. Review overall market sentiment (bullish, bearish, or neutral)
2. Scan for stocks showing significant banker flow signals
3. Note key support/resistance levels for watchlist stocks
4. Prioritize trade candidates based on signal strength and volume
#### Entry Rules for Long Positions
1. Banker Flow Oscillator above zero line (positive flow environment)
2. One or more of the following signals present:
- Strong Buy signal (green arrow)
- Bullish Divergence signal (yellow triangle up)
- Early Buy signal (blue circle) with confirming price action
3. Entry confirmation requirements:
- Volume above 65% of 20-day average
- Price above short-term moving average (e.g., 20 EMA)
- No immediate resistance within 3% of entry price
4. Entry on the next candle open after signal confirmation
#### Entry Rules for Short Positions
1. Banker Flow Oscillator below zero line (negative flow environment)
2. One or more of the following signals present:
- Strong Sell signal (red arrow)
- Bearish Divergence signal (yellow triangle down)
- Early Sell signal (red circle) with confirming price action
3. Entry confirmation requirements:
- Volume above 65% of 20-day average
- Price below short-term moving average (e.g., 20 EMA)
- No immediate support within 3% of entry price
4. Entry on the next candle open after signal confirmation
#### Position Sizing Rules
1. Base risk per trade: 1% of trading capital
2. Position size calculation: Capital × Risk% ÷ Stop Loss Distance
3. Position size adjustments:
- Increase by 20% for Strong signals with above-average volume
- Decrease by 20% for Early signals without confirming price action
- Standard size for all other valid signals
#### Stop Loss Placement
1. For Long Positions:
- Place stop below the most recent swing low
- Minimum distance: 1.5 × ATR(14)
- Maximum risk: 1% of trading capital
2. For Short Positions:
- Place stop above the most recent swing high
- Minimum distance: 1.5 × ATR(14)
- Maximum risk: 1% of trading capital
#### Take Profit Strategy
1. First Target (33% of position):
- 1.5:1 reward-to-risk ratio
- Move stop to breakeven after reaching first target
2. Second Target (33% of position):
- 2.5:1 reward-to-risk ratio
- Trail stop at previous day's low/high
3. Final Target (34% of position):
- 4:1 reward-to-risk ratio or
- Exit when opposing signal appears (e.g., Strong Sell for long positions)
#### Trade Management Rules
1. After reaching first target:
- Move stop to breakeven
- Consider adding to position if new confirming signal appears
2. After reaching second target:
- Trail stop using banker flow signals
- Exit remaining position when:
- Oscillator crosses zero line in opposite direction
- Opposing signal appears
- Price closes below/above trailing stop level
3. Maximum holding period:
- 20 trading days for trend-following trades
- 10 trading days for counter-trend trades
- Re-evaluate if targets not reached within timeframe
#### Risk Management Safeguards
1. Maximum open positions: 5 trades
2. Maximum sector exposure: 40% of trading capital
3. Maximum daily drawdown limit: 3% of trading capital
4. Mandatory stop trading rules:
- After three consecutive losing trades
- After reaching 5% account drawdown
- Resume after two-day cooling period and strategy review
#### Performance Tracking
1. Track for each trade:
- Signal type that triggered entry
- Oscillator reading at entry and exit
- Volume relative to average
- Price action confirmation patterns
- Holding period
- Reward-to-risk achieved
2. Review performance metrics weekly:
- Win rate by signal type
- Average reward-to-risk ratio
- Profit factor
- Maximum drawdown
3. Adjust strategy parameters based on performance:
- Increase position size for highest performing signals
- Decrease or eliminate trades based on underperforming signals
## Advanced Usage Tips
1. Combine with Support/Resistance:
- Signals are more reliable when they occur at key support/resistance levels
- Look for banker flow divergence at major price levels
2. Multiple Timeframe Analysis:
- Use the oscillator on both daily and weekly timeframes
- Stronger signals when both timeframes align
- Enter on shorter timeframe when confirmed by longer timeframe
3. Sector Rotation Strategy:
- Compare banker flow across different sectors
- Rotate capital to sectors showing strongest positive flow
- Avoid sectors with persistent negative flow
4. Volatility Adjustments:
- During high volatility periods, wait for Strong signals only
- During low volatility periods, Early signals can be more actionable
5. Optimizing Parameters:
- For more volatile stocks: Increase Smoothing Length (6-8)
- For less volatile stocks: Decrease KLSE Sensitivity (1.2-1.5)
- For intraday trading: Reduce all length parameters by 30-50%
## Fine-Tuning for Different Markets
While optimized for KLSE, the indicator can be adapted for other markets:
1. For US Stocks:
- Reduce KLSE Sensitivity to 1.5
- Increase Volume Filter to 75%
- Adjust Strong Signal Level to 18
2. For Forex:
- Increase Smoothing Length to 8
- Reduce Early Signal Threshold to 0.6
- Focus more on divergence signals than crossovers
3. For Cryptocurrencies:
- Increase KLSE Sensitivity to 2.2
- Reduce Signal Levels (Strong: 12, Early: 8)
- Use higher Volume Filter (80%)
By thoroughly understanding and properly implementing the Enhanced KLSE Banker Flow Oscillator, traders can gain a significant edge in identifying institutional money flow and making more informed trading decisions, particularly in the Malaysian stock market.
Order Blocks - VK TradingOrder Blocks - VK Trading
This script in Pine Script identifies and highlights Order Blocks, key tools in institutional trading. Designed for traders of all levels, it provides clear and customizable visualization, helping you anticipate market movements with greater accuracy.
Key Features:
Order Block Visualization: Highlights relevant bullish and bearish zones directly on the chart.
Customizable Settings: Adjust sensitivity, colors, and other parameters to suit your analysis needs.
Dual Block Detection: Uses two independent settings to cover different market perspectives.
Visual Alerts: Automatic line drawing for key levels.
Automatic Clearing: Dynamic clearing of already invalidated blocks.
User Benefits:
Clear Visual Analysis: Identifies key supply and demand points used by institutions.
Improved Trading Decisions: Anticipate entry and exit zones more accurately.
Time Saver: Automates level plotting, allowing you to focus on strategy and execution.
Strategy Adaptability: Compatible with Smart Money, Wyckoff, and Price Action approaches.
Disclaimer:
This script is an educational and analytical tool. It does not guarantee specific results or eliminate trading risk. Trading in the financial markets involves significant risks; use this script at your own risk.
Hidden SMT Divergence ICT 01 [TradingFinder] HSMT SMC Technique🔵 Introduction
Hidden SMT Divergence, an advanced concept within the Smart Money Technique (SMT), identifies discrepancies between correlated assets by focusing on their closing prices.
Unlike the standard SMT Divergence, which uses high and low prices for analysis, Hidden SMT Divergence uncovers subtle signals by examining divergences based on the assets' closing values.
These divergences often highlight potential reversals or trend continuations, making this technique a valuable tool for traders aiming to anticipate market movements.
This approach applies across various markets and asset classes, including :
Commodities : CAPITALCOM:GOLD vs. CAPITALCOM:SILVER or BLACKBULL:BRENT vs. BLACKBULL:WTI .
Indices : NASDAQ:NDX vs. TVC:SPX vs. FX:US30 .
FOREX : FX:EURUSD vs. OANDA:GBPUSD vs. TVC:DXY (US Dollar Index).
Cryptocurrencies : BITSTAMP:BTCUSD vs. COINBASE:ETHUSD vs. KUCOIN:SOLUSDT vs. CRYPTOCAP:TOTAL3 .
Volatility Measures : FOREXCOM:XAUUSD vs. TVC:VIX (Volatility Index).
By identifying divergences within these asset groups, traders can gain actionable insights into potential market reversals or shifts in trend direction. Hidden SMT Divergence is particularly effective for pinpointing subtle market signals that traditional methods may overlook.
Bullish Hidden SMT Divergence : This divergence emerges when one asset forms a higher low, while the correlated asset creates a lower low in terms of their closing prices. It often signals weakening downward momentum and a potential reversal to the upside.
Bearish Hidden SMT Divergence : This occurs when one asset establishes a higher high, while the correlated asset forms a lower high based on their closing prices. It typically reflects declining upward momentum and a probable shift to the downside.
🔵 How to Use
The Hidden SMT Divergence indicator provides traders with a systematic approach to identify market reversals or trend continuations through divergences in closing prices between two correlated assets.
🟣 Bullish Hidden SMT Divergence
Bullish Hidden SMT Divergence occurs when the closing price of the primary asset forms a higher low, while the correlated asset creates a lower low. This pattern indicates weakening downward momentum and signals a potential reversal to the upside.
After identifying the divergence, confirm it using additional tools like support levels, volume trends, or indicators such as RSI and MACD. Enter a buy position as the price shows signs of reversal near support zones, ensuring proper risk management by placing a stop-loss below the support level.
Bearish Hidden SMT Divergence
Bearish Hidden SMT Divergence is identified when the closing price of the primary asset forms a higher high, while the correlated asset creates a lower high. This divergence suggests a weakening uptrend and a likely reversal to the downside.
Validate the signal by examining resistance levels, declining volume, or complementary indicators. Consider entering a sell position as the price starts declining from resistance levels, and set a stop-loss above the resistance zone to limit potential losses.
🔵 Setting
Second Symbol : Select the secondary asset to compare with the primary asset. By default, "XAUUSD" (Gold) is used, but it can be customized to any stock, cryptocurrency, or currency pair.
Divergence Fractal Periods : Defines the number of past candles considered for identifying divergences. The default value is 2, but traders can adjust it for greater precision.
Bullish Divergence Line : Displays a dashed line connecting the points of bullish divergence.
Bearish Divergence Line : Shows a similar line for bearish divergence points.
Bullish Divergence Label : Marks areas of bullish divergence with a "+SMT" label.
Bearish Divergence Label : Highlights bearish divergences with a "-SMT" label.
Chart Type : Choose between Line or Candle charts for enhanced visualization.
🔵 Conclusion
Hidden SMT Divergence offers traders a refined method for identifying market reversals by analyzing closing price discrepancies between correlated assets. Its ability to uncover subtle divergences makes it an essential tool for traders who aim to stay ahead of market trends.
By integrating this technique with other technical analysis tools and sound risk management, traders can enhance their decision-making process and capitalize on market opportunities with greater confidence.
Hidden SMT Divergence’s focus on closing prices ensures more precise signals, helping traders refine their strategies across various markets, including Forex, commodities, indices, and cryptocurrencies.
Its open-source nature allows for customization and verification, providing transparency and flexibility to suit diverse trading needs. Hidden SMT Divergence stands as a powerful addition to the arsenal of any trader seeking to unlock hidden opportunities in dynamic financial markets.
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)
Change in State of Delivery CISD ICT [TradingFinder] Liquidity 1🔵 Introduction
🟣 What is CISD ?
Change in State of Delivery (CISD) is a key concept in technical analysis, similar to Change of Character (ChoCh) and Market Structure Shift (MSS) in the ICT (Inner Circle Trader) and Smart Money trading styles. Like ChoCh and MSS, CISD helps traders identify critical changes in market structure and make timely entries into trades.
To determine the CISD Level, traders typically review the last 1 to 4 candles to identify the first positive or negative candle. The CISD Level is then set using the opening price of the next candle.
In this version of the indicator, support and resistance levels are defined based on liquidity, which includes patterns such as SFP (Swing Failure Pattern), fake breakout, and false breakout.
Bullish CISD :
Bearish CISD :
🔵 How to Use
🟣 Bullish CISD (Change in State of Delivery Upward)
In Bullish CISD, the trend shifts from bearish to bullish after the price hits a liquidity zone, typically indicated by patterns such as SFP, fake breakout, or false breakout.
The steps to identify Bullish CISD are as follow s:
Identify the liquidity zone (SFP, fake breakout).
Review the candles and find the first positive candle.
Set the CISD Level using the opening price of the next candle after the positive candle.
Confirm the change in state of delivery when the price closes above the CISD Level.
Enter the trade after CISD confirmation.
🟣 Bearish CISD (Change in State of Delivery Downward)
In Bearish CISD, the trader looks for a shift from a bullish to a bearish trend. This change typically occurs when the price hits a liquidity level, indicated by patterns such as SFP or false breakout.
The steps to identify Bearish CISD are :
Identify the liquidity zone.
Review the candles and find the first negative candle.
Set the CISD Level using the opening price of the next candle after the negative candle.
Confirm the change in state of delivery when the price closes below the CISD Level.
Enter a short trade after CISD confirmation.
🟣 CISD Compared to ChoCh and MSS (CISD Vs ChoCh/ MSS)
CISD, ChoCh, and MSS are all tools for identifying trend changes in the market, but they have some differences :
CISD: Focuses on a change in the state of delivery and uses liquidity patterns (SFP, fake breakout) and key candles to confirm trend reversals.
ChoCh: Identifies a change in the market’s character, often signaling rapid shifts in trend direction.
MSS: Focuses on changes in market structure and identifies the breaking of key levels as a signal of trend shifts.
🔵 Settings
🟣 CISD Logical settings
Bar Back Check : Determining the return of candles to identify the CISD level.
CISD Level Validity : CISD level validity period based on the number of candles.
🟣 SFP Logical settings
Swing period : You can set the swing detection period.
Max Swing Back Method : It is in two modes "All" and "Custom". If it is in "All" mode, it will check all swings, and if it is in "Custom" mode, it will check the swings to the extent you determine.
Max Swing Back : You can set the number of swings that will go back for checking.
🟣 CISD Display settings
Displaying or not displaying swings and setting the color of labels and lines.
🟣 SFP Display settings
Displaying or not displaying swings and setting the color of labels and lines.
🔵 Conclusion
CISD is a powerful tool for identifying trend reversals using liquidity patterns and key candle analysis. Traders can use the CISD Level to detect trend changes and find optimal entry and exit points.
This concept is similar to ChoCh and MSS but stands out with its focus on confirming trend changes through liquidity and specific patterns. With the right approach, CISD helps traders capitalize on market movements more effectively.
ICT Single Candle Order Block (SCOB) [UAlgo]The "ICT Single Candle Order Block (SCOB) " designed for traders who utilize the concept of Order Blocks in their trading strategy. Order Blocks are significant price levels where institutions or smart money have placed their trades, leading to potential future price reactions when these levels are revisited. This indicator focuses on identifying and highlighting Single Candle Order Blocks (SCOBs), allowing traders to visually analyze key price levels on their charts.
🔶 What is Single Candle Order Block (SCOB) ?
A Single Candle Order Block (SCOB) is a specific type of Order Block that is identified based on a single candlestick pattern. These patterns indicate potential areas where significant buying or selling interest has occurred, often leading to a notable price reaction when revisited. In the context of this indicator, a bullish SCOB is identified when a specific bullish candlestick pattern is met, and a bearish SCOB is identified based on a bearish candlestick pattern.
Bullish SCOB: Detected when the open price of two bars ago is higher than its close, the close price of the previous bar is higher than its open, the current close price is higher than the open, the low of the previous bar is lower than the low of two bars ago, and the current close is higher than the high of the previous bar.
Bearish SCOB: Detected when the open price of two bars ago is lower than its close, the close price of the previous bar is lower than its open, the current close price is lower than the open, the high of the previous bar is higher than the high of two bars ago, and the current close is lower than the low of the previous bar.
🔶 Key Features
Show Single Candle Order Block (SCOB): Toggle the visibility of the Single Candle Order Blocks on the chart.
Mitigation Method: Choose between "Close" and "Wick" methods for determining whether a SCOB has been mitigated (price has interacted with the block).
Show Last X SCOBs: Control the number of most recent SCOBs displayed on the chart, allowing you to focus on the most relevant price levels.
Volatility Filter: Enable or disable the volatility filter, which uses the Average True Range (ATR) to filter out less significant SCOBs. When enabled, only SCOBs with an ATR above the mean value of the ATR are displayed.
Customizable Colors: Configure the colors for bullish and bearish SCOBs to enhance visual clarity. The indicator uses cooler RGB values to ensure the blocks are distinct and easily noticeable.
🔶 Disclaimer
The "ICT Single Candle Order Block (SCOB) " indicator is provided for educational and informational purposes only. Trading involves significant risk and may not be suitable for all investors.
Past performance is not indicative of future results. Users should use this indicator in conjunction with their own research and trading strategy.
Market Structures + ZigZag [TradingFinder] CHoCH/BOS - MSS/MSB🟣 Introduction
🔵 Market Structure
Grasping market structure entails examining market behavior. Essentially, market structure refers to the formation and progression of the market within its trends.
Market structures are generally fractal and nested, leading us to classify them into internal (minor) and external (major) structures. There are several definitions of market structure, with differing perspectives such as Smart Money and ICT offering their own interpretations.
🔵 Zig Zag
The Zigzag indicator is a lagging tool that identifies points on a price chart where significant changes occur compared to the previous wave. By connecting these points, it helps traders detect trends.
This indicator minimizes random price fluctuations, aiming to clarify the primary price trend.
Pivots are points on a price chart where the direction changes. Also known as reversal points, pivots form when supply and demand forces overpower one another.
There are various types of technical analysis pivots, which can be divided into two categories: minor pivots and major pivots, each with distinct significance in analysis.
Major Pivot : These pivots signify substantial changes in the chart's direction and occur at the end of trends. Analysts focusing on primary analysis prioritize major pivot points. In fact, most technical analysis tools are evaluated and based on major pivots.
Minor Pivot : These pivots highlight smaller, subsidiary points and directions, appearing at the end of corrections. Analysts who focus on minor pivots represent small trends. It's important to note that minor pivots are not suitable for use in primary technical tools.
Identifying Minor and Major Pivots :
Minor pivots are formed between two major pivots and do not break the opposing major pivot. (Internal Pivot)
Major pivots are those that either successfully break the opposing pivot or move beyond the previous pivot of the same type. (External Pivot)
🟣 How to Use
🔵 Identifying Break of Structure (BOS)
In a given trend, such as a downtrend, a Break of Structure occurs when the price drops below the previous low and forms a new low (LL). In an uptrend, a BOS (MSB) happens when the price rises and exceeds the last high.
To confirm a trend, at least one BOS is required. The break above or below the previous high or low must be validated by the closing of at least one candle beyond that level.
🔵 Identifying Change of Character (CHOCH)
Change of Character (CHOCH) is an essential concept in market structure analysis, indicating a trend change. In other words, a trend concludes with a CHOCH (MSS). For example, in a downtrend, the price declines with BOS.
While BOS highlights the trend's strength, a CHOCH occurs when the price rises and surpasses the last high, signaling a transition from a downtrend to an uptrend.
This does not imply immediately entering a buy trade; instead, it is prudent to wait for a BOS in the upward direction to confirm the uptrend.
Unlike BOS, confirming a CHOCH does not require a candle to close; simply breaking above or below the previous high or low with the candle's wick is sufficient. The following examples illustrate bearish and bullish CHOCH.
Terms :
Market Structure Shift = MSS
Market Structure Break = MSB
🔵 Zig Zag
Based on identifying pivots and drawing zigzag lines, you can have different uses of this indicator.
Including :
Identifying pivot types along with major and minor recognition.
Identifying internal and external breakouts.
Identifying support and resistance levels.
Identifying Elliott Waves.
Identifying classic patterns.
Identifying pivots with higher validity.
Identifying trends and range areas.
🟣 Settings
Pivot Period Market Structure and ZigZag Line: Using this input, you can determine the pivot period for identifying swings.
Through the settings, you can customize the display, visibility, and color of each line as desired.
ICT Balance Price Range [UAlgo]The "ICT Balance Price Range " indicator identifies and visualizes potential balance price ranges (BPRs) on a price chart. These ranges are indicative of periods where the market exhibits balance between bullish and bearish forces, often preceding significant price movements.
🔶 What is Balanced Price Range (BPR) ?
Balanced Price Range is a concept based on Fair Value Gap. Balanced price range (BPR) is the area on price chart where two opposite fair value gaps overlap.
When price approaches the Balanced Price Range (BPR), we assume that the price will react quickly and strongly here. This is because its the combination of two fair value gaps and being a good point of interest for smart money traders.
🔶 Key Features:
Bars to Consider: Determines the number of bars to evaluate for BPR conditions.
Threshold for BPR: Sets the minimum range required for a valid BPR to be identified.
Remove Old BPR: Option to automatically remove invalidated BPRs from the chart.
Bearish/Bullish Box Color: Customizable colors for visual representation of bearish and bullish BPRs.
🔶 Disclaimer
This indicator is provided for educational and informational purposes only.
It should not be considered as financial advice or a recommendation to buy or sell any financial instrument.
The use of this indicator involves inherent risks, and users should employ their own judgment and conduct their own research before making any trading decisions. Past performance is not indicative of future results.
🔷 Related Scripts
Fair Value Gaps (FVG)






















